C语言简单代码

来源:百度知道 编辑:UC知道 时间:2024/09/24 01:34:41
main()
{int a,b,c;
printf("input a,b in it/n");
c=a+b;
scanf("%d,%d",&a,&b);
printf("%d/n",c);
getch();
}
这段可以运行,但是比如输入1,2
都会出现7253这个畸形数字
没有1+1=2的效果

c=a+b;
scanf("%d,%d",&a,&b);
这两句对调一下

如果你想知道为什么会出现7253的话...

从代码上一行行看下来,当你看到c=a+b; 时,你还没输入哦,这时a和b是多少呢?
不知道,计算机也不知道,于是,给了一个随机数(当然,说是随机数应该不准确,只是内存里分别分配给a和b的各两个字节空间里原有的值.是别的程序运行后留下的,这个值可不确定啊,很可怕的一件事...)

把c=a+b;放到scanf("%d,%d",&a,&b);后面,那么,当你输入之后才去运行加法,这时a和b的值就是你输入的值了...这样才能输出正确的加法结果...

#include <iostream.h>
void main()
{

cout<<"输入"<<"\n";
int a,b,c;
cin>>a>>b;
c=a+b;
cout<<c<<"\n";

}

我用c++
你的程序我会这么写

main()
{int a,b,c;
printf("input a,b in it/n");
scanf("%d,%d",&a,&b);
c=a+b;
printf("%d/n",c);
getch();
}
这样就可以了

请问你的c=a+b怎么赋值,输出语句
scanf("%d,%d",&a,&b); 在c=a+b; 后面,程序当然不知道c的值是多少了

main()
{int a,b,c;
printf("input a,b in it/n");
scanf(&quo