我对Linux Mint相对较新,并且在某种程度上尝试重新编程。我正在尝试学习Brian W. Kernighan和Dennis M. Ritchie使用C编程进行读取,复制,计数的概念。

我了解行计数,字计数等概念,但是每当我运行代码时,在codechef使用在线编译器时,终端窗口上都不会输出输出。

有人可以解释为什么会发生这种情况以及解决方案。

谢谢。 :)

#include <stdio.h>
/* count digits, white space, others */
main()
{
    int c, i, nwhite, nother;
    int ndigit[10];

    nwhite = nother = 0;

    for (i = 0; i < 10; ++i)
        ndigit[i] = 0;
    while ((c = getchar()) != EOF)
    {
        if (c >= '0' && c <= '9')
            ++ndigit[c-'0'];
        else if (c == ' ' || c == '\n' || c == '\t')
            ++nwhite;
        else
            ++nother;
    }
    printf("digits =");
    for (i = 0; i < 10; ++i)
        printf(" %d", ndigit[i]);
    printf(", white space = %d, other = %d\n",nwhite, nother);
}

最佳答案

您认为这有什么用?

while ((c = getchar()) != EOF)


在这里,您似乎要执行代码,直到c =='\ n'

关于c - 在终端窗口的Linux Mint上编译具有getchar()等程序时,我没有得到输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33540311/

10-10 08:03