这是一个简单的程序,我有一个任务要做。为什么这个简单的程序给我看似不正确的输出?
- 要求一个号码,你可以假设为1或更大的三分球
- 计数的用户,从1打印数字0到用户号码;例如高达15:1,4,7,10,13 o在一行上打印数字 o另外,找到这些数字的总和并在下一行打印,在这种情况下打印35
- 1在程序中求解用一个while循环,然后再次循环
这是我的代码
#include<stdio.h>
int main(){
int number;
int i = 1;
int sum = 0;
printf("Please enter a number greater than 1: ");
scanf("%d", &number);
while(i < number){
printf("%d ", i);
i+=3;
sum = sum + i;
}
printf("\nThe sum of these numbers is: %d\n", sum);
return 0;
}
这是示例输出:
请输入一个大于1:15
这些数字的总和是:50
我不能为我的生活弄清楚为什么数( 15)正被添加到总和中。输入15被加到1,4,7,10和13的总和上。 在这个程序的什么位置我是否等于数字?
对不起,如果这并没有很大的意义。任何帮助表示赞赏。我想了解我做错了什么。谢谢。
你写的代码;你应该知道它做了什么。 –
调试器逐步检查值,然后执行。 –
请将'i + = 3;'语句放在循环体的末尾,因为在添加之前您正在更改已处理的数字。 –