题目
【简答题】从键盘输入n(n>0)个数,求它们的和并输出
【简答题】从键盘输入n(n>0)个数,求它们的和并输出
题目解答
答案
#include int main() { int i,num,sum=0,data; printf("请输入数据个数:
"); scanf("%d",num); printf("请输入%d 个正数:
",num); for(i=0;i<num;i++) { scanf("%d",data); sum+=data; } printf("它们的和是%d
",sum); return 0; }
解析
考查要点:本题主要考查输入输出操作、循环结构以及变量的使用。学生需要掌握如何从键盘接收多个整数,并通过循环累加求和。
解题核心思路:
- 读取数据个数:首先输入整数
n,表示后续要输入的数的个数。 - 循环累加求和:通过循环读取
n个整数,并将它们逐个累加到变量sum中。 - 输出结果:最后输出累加的结果。
关键点:
- 变量初始化:求和变量
sum必须初始化为0。 - 循环控制:循环次数严格与输入的数的个数
n一致。 - 输入操作:注意
scanf函数中变量必须取地址。
步骤1:读取数据个数
使用scanf读取整数num,表示后续要输入的数的个数。注意scanf的参数必须是变量的地址:
scanf("%d", &num);
步骤2:初始化求和变量
将sum初始化为0,确保累加从正确起点开始:
int sum = 0;
步骤3:循环读取并累加
通过for循环读取num个整数,每次读取一个数后加到sum中:
for (i = 0; i < num; i++) {
scanf("%d", &data);
sum += data;
}
步骤4:输出结果
将累加结果sum通过printf输出:
printf("它们的和是%d\n", sum);
常见错误:
- 忘记取地址:
scanf参数未加&会导致无法正确读取值。 - 循环次数错误:
for循环条件应严格匹配num的值。