咋用c++编任意两个数的和

来源:百度知道 编辑:UC知道 时间:2024/06/05 06:12:49
#include<stdio.h>
void main()
{
int a,b,sum;
sum=a+b;
scanf("%d,%d",&a,&b);
printf("sum=%d\n");
}

这是我编出来的,我不知道那里错了,那位大哥给解释一下,运行后输入两个任意的数,结果是一长串数字sum=2367460

这里面有两个错误:
1.第五行的赋值表达式应与第六行输入数值语句互换.因为变量只有在输入后才会有确定的值,否则变量所对应的内存单元中的数据是随机数,也就是不确定的值.
2.printf函数格式不对.没有输出预期值.
正确程序如下:
#include<stdio.h>
void main()
{
int a,b,sum;
scanf("%d,%d",&a,&b);
sum=a+b;
printf("sum=%d\n",sum);
}

最后,提示一下,输入的时候两个数值之间一定要用逗号隔开.并且两个数的和要在-32768到32767之间,否则会溢出导致出错.
谢谢.

void main()
{
int a,b,sum;
sum=a+b;
scanf("%d,%d",&a,&b);
printf("sum=%d\n", sum); //晕,变量没有输出啊
}

#include<stdio.h>
void main()
{
int a,b,sum;
scanf("%d,%d",&a,&b);
sum=a+b; //先输入,再加
printf("sum=%d\n",sum);//输出
}

既然是任意数,还要注意长整与短整的区别,最好将sum定义为long int