如果有一个名为a的变量,它会不断计数,但当它达到一定数量时重置为0,我该如何计算该变量的总和?例如:
int count = 0;
int a = 0;
int total = 0;
while (true) {
count++;
a = count % 1000;
total = ...;
}
其中“total”是a的总值,它将超过1000.简单地添加它将无效,因为它将总计+ = 1,总计+ = 2,总计+ = 3,等等。我计算每个循环?谢谢你的帮助。 :)顺便说一下,我正在使用C,虽然这应该不重要。
答案 0 :(得分:0)
你可能会喜欢这个。
#include <stdio.h>
#include <stdbool.h>
int getA(){
static int count = 1;
if(count == 1000) count = 1;
return count++;
}
int main(void){
int i = 0;
int a, total;
while (true) {
a = getA();
if(i == 1001) break;
total += a;
++i;
}
printf("%d\n", total);//499501 = 1+2+...998+999+1
return 0;
}
答案 1 :(得分:0)
这应该有效。在您的计划中total
与a
的价值无关。
int count = 1;
int a = 0;
int total = 0;
while ((count+1001)%1001) {
a = (count+1001) % 1001;
count++;
total = total+a;
}
printf("The sum of 1000 numbers is %d",
total);