我对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("%dn", &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;
}
下面是你代码中的错误:
//while (num = 0) {
while (num == 0) {
scanf("%dn", &num);
if (num < 0)
printf("<-Error: Please enter positive numbers!->n");
}