【发布时间】:2015-12-30 06:57:11
【问题描述】:
我对 C 很陌生,很快就有作业要交了。我需要编写一个程序,询问用户许多数字并在用户键入“0”时停止。然后显示用户输入的数字以及有多少偶数和奇数。然后把它们全部加起来。我需要 num=0 才能使我的函数工作,但这也是停止 while 语句的数字,因此程序最终甚至不要求输入,而是立即停止。有人可以帮我吗?任何线索或指南将不胜感激。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int getNumbers(int sumEven, int sumOdd, int num);
int main (void) {
int number_of_integers, sumEven, sumOdd;
char user_name[128];
printf("What is your name?\n");
scanf("%s", user_name);
printf("\nEnter any real numbers followed by ENTER.\n");
int num = 0;
while (num = 0) {
scanf("%d\n", &num);
if (num < 0)
printf("<-Error: Please enter positive numbers!->\n");
}
num = getNumbers(sumEven, sumOdd, num);
printf("%s, the numbers you entered are broken down as follows:\n", user_name);
printf("%d" , num);
return 0;
}
int getNumbers(int sumEven, int sumOdd, int num) {
sumEven = 0;
sumOdd = 0;
if (num % 2 == 0)
sumEven += num;
else
sumOdd += num;
}
【问题讨论】:
-
另外,我还不能使用数组,因为我们还没有学会它们
-
你的代码问题太多了。掌握基本知识对您有好处。
-
不能显示用户输入0后输入的所有数字,因为没有数组就无法存储。
-
num = 0将num设置为0。也许你想要== -
您已经在使用数组。 (
char user_name[128];)