【发布时间】:2014-10-22 20:07:28
【问题描述】:
我是编程新手,现在我正在尝试学习如何使用 EOF。
我想从键盘插入一个字符串并计算字母。 例如
给字符串:abcd
我有 1a , 1b , 1c ,1d。
到目前为止我的代码是
while(scanf("%s",s)!=EOF){
if(s[i]=='a')
counta++;
if(s[i]=='b')
countb++;
//and so on
i++;
}
【问题讨论】:
-
请注意,使用
counta等是一个轻微(但非常冗长)的灾难。您应该使用一个整数数组,由s[i]的(unsigned char)值索引(当您有第二个循环时,如Woodrow Barlow 的answer 或Danke Xie 的answer 所示)。