【发布时间】:2018-08-30 07:22:24
【问题描述】:
我希望将输入的数字存储在某个地方,以便以后可以得到他们的总数,有人可以帮忙吗?
#include<stdio.h>
#include<conio.h>
main() {
int range;
int num;
int i;
int total = 0;
printf("how many numbers will you put?\n");
scanf("%d", &range);
for(i=0;i<range;i++) {
printf("please enter the number\n");
scanf("%d", &num);
}
printf("%d", total);
return 0;
}
【问题讨论】:
-
你只需要计算总权利,为什么不在输入的时候做呢
-
您可以尝试在处理输入时计算总数
-
注意:除了未能检查返回
scanf的返回 的新 C 用户传统上在日出时拍摄 - 您还将受益于避免 Undefined Behavior 同时...例如只需if (scanf ("%d", &num) == 1) total += num;,那么当你离开循环:)时,你已经有了总数(你还应该在那里添加一个else条件来处理任何错误(比如输入一个杂散字符)和删除stdin中未读的无关字符,以防止您的代码从那时起像“土拨鼠日”一样工作......) -
您可以使用 array,但正如 zenwraight 和 Zendy 所说,您最好即时计算总和
-
只需添加:
for(i=0;i<range;i++) { printf("please enter the number\n"); scanf("%d", &num); total += num; }