C 编程 - 重复 scanf 除非用户输入 "0"

标签 c loops conditional-statements scanf exit

你好,我是 C 语言新手,正在尝试编写一个程序,要求用户输入一大堆数字。我想循环 scanf ,以便它不断询问,当用户输入“0”时,它停止,读取输入的偶数和奇数,并分别对它们进行计数。现在,在用户按“Enter”键后,我可以继续询问新号码,但是当我输入“0”时,它只是不断询问更多号码并且不会停止。我究竟做错了什么?就像我之前说的,我很新,所以婴儿的话是最好的。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main (void) {

    int number_of_integers, sum = 0, i, integer;
    char user_name[128];

    printf("What is your name?\n");
    scanf("%s", user_name);

    printf("\nEnter any real numbers followed by ENTER.\n");
    while (integer != 0) {
        scanf("%s", &integer);
        if (integer == 0)
            break;
    }

    printf("%s, the numbers you entered are broken down as follows:\n", user_name);

    return 0;
}

最佳答案

正如评论者所指出的,我们不是家庭作业或辅导服务,但我通过制作一个我刚刚编造的实际工作示例来帮你一个忙。现在您可以根据自己的需求进行定制。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main (void) {
    int max=100;
    int integer;
    int even[max];
    int odd[max];
    int index=0;
    int evencount=0;
    int oddcount=0;
    char user_name[128];

    printf("What is your name?\n");
    scanf("%s", user_name);

    printf("\nEnter any real numbers followed by ENTER.\n");
    while (index < max){
        scanf("%d", &integer);
        if (integer == 0)
        break;
        if ((integer % 2) == 0){
            evencount++;
            even[evencount]=integer;
        }else{
            oddcount++;
            odd[oddcount]=integer;
        }
        index++;
    }

    printf("%s, the %d numbers you entered are broken down as follows:\n", user_name,index);
    printf("%d odd integer(s):\n",oddcount);
    while (oddcount > 0){
    printf("%d\n",odd[oddcount]);
    oddcount--;
    }
    printf("%d even integer(s):\n",evencount);
    while (evencount > 0){
    printf("%d\n",even[evencount]);
    evencount--;
    }
    return 0;
}

关于C 编程 - 重复 scanf 除非用户输入 "0",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32898787/

相关文章:

c++ - 用 sprintf 填充

c - 在嵌入式 C 中传递字符串变量

javascript - 将 map 连接到 json 文件 for 循环

Django:用于排除第一个条目的循环

typo3 - 使用 ContainsViewHelper 的流体条件

Python循环中操作数据List

r - 从R中的单独数据帧中提取匹配多个条件的ID列表

c - 结构矩阵的 malloc - C

c - 除了 Ctrl-C 之外,我还能捕捉到什么键盘信号?

java - 带循环的 setClickListeners