这个C语言程序哪错了?

2025-04-26 11:13:06
推荐回答(4个)
回答1:

你输入的a和b都是ASCII
你改为
#include
int main(int argc, char * argv[])
{
int a;
int b;
scanf("%d", &a);
scanf("%d", &b);
printf("%d\n",a+b);

return 0;
}

就可以了。
或者改为
a=getchar() - 48;
b=getchar() - 48;
然后输入数字也可以,但是不能排错处理。

因为getchar()接收的是ASCII所以不是对应数字入内存。

回答2:

getchar是输入字符的

回答3:

#include
main()
{
int a,b;
printf("Please input a:");
scanf("%d",&a);
printf("\nPlease input b:");
scanf("%d",&b);
printf("%d\n",a+b);
getch();
}

回答4:

getchar是获得字符(char)用的,
而a和b是int整形变量%d,不是字符%s