C编程:编写一个程序,从键盘读取三个整数并输出它们的总和

时间:2016-01-15 02:41:05

标签: c

我必须编写从键盘读取三个整数的代码并输出它们的总和。这是否意味着只应输入整数,还是应该能够添加字符?这是我的代码:

#include <stdio.h>

int main(void) {
    int a, b, c, d; 

    printf("\n Enter the three numbers:"); 
    scanf("%d %d %d", &a, &b, &c); 

    d = a + b + c;  

    printf("sum of numbers is %d", d); 
}

1 个答案:

答案 0 :(得分:3)

scanf("%d %d %d", &a, &b, &c);解析3个十进制整数的输入流,可选择用空格分隔(空格,制表符,换行符......)。

如果存在任何其他字符(例如字母,小数点,逗号......)或者输入的输入不足,scanf将返回与3不同的结果输出变量不会被设置。始终测试scanf的返回值。

以下是更正后的版本:

#include <stdio.h>

int main(void) {
    int a, b, c, d; 

    printf("\n Enter the three numbers:"); 
    if (scanf("%d %d %d", &a, &b, &c) == 3) {
        d = a + b + c;  
        printf("sum of numbers is %d\n", d);
    }
    return 0;
}