-4

我目前正在尝试使用getchar().

如果我用getchar(不计算点或逗号的条件)来做,我输入一个像345.234这样的数字,它是像3-4-5-2-3-4一样算6还是像34-5-23一样算4 -4?

i=0
while((c=getchar())!=',' && c!=EOF)
i++;

简单的问题它一次计算 345.234 和 ctrl+z 输入的数量是 4 还是 6

4

2 回答 2

1

igetchar()只要不返回EOF或返回,每次调用都会递增','

如果您输入345.234然后按 Ctrl-Z,则在离开循环时将导致7for的值。iwhile

3 个数字 + 1 个点 + 3 个数字 = 7 个字符。

于 2013-03-31T16:32:40.037 回答
0

也许

#include <stdio.h>

int main(){
    int i=0,c;
    while(EOF!=(c=getchar())){
        if(c != ',' && c != '.' && c!= '\n')
            ++i;
    }
    printf("number count is %d\n", i);
    return 0;
}
于 2013-03-31T16:34:32.963 回答