
c++怎么输入EOF才能结束??求助 15
输入若干字符,统计其中数字字符、空白字符和其他字符的个数,输入EOF结束。【分析】要对字符进行统计,需要循环语句反复输入字符,读入字符后用switch语句判断字符的种类:...
输入若干字符,统计其中数字字符、空白字符和其他字符的个数,输入EOF结束。
【分析】 要对字符进行统计,需要循环语句反复输入字符,读入字符后用switch 语句判断字符的种类:要统计3种字符数,需要定义3个用于计数的变量nDigit ,nWhite ,nOther,并置初始值0;读入字符用cin.get()函数,在这里用while循环比较合适。白字符指空白键、Tab键和回车键。EOF表示End of File ,其值为-1,从键盘输入 CTRL+Z键即可。
#include<iostream>
#include<string>
using namespace std;
int main()
{
int nDigit=0,nWhite=0,nOther=0,i=0;
char item;
cout<<"请输入您要输入的字符:";
while(item=cin.get()!=EOF)
{
switch(item)
{
case '0':nDigit++;break;
case '1':nDigit++;break;
case '2':nDigit++;break;
case '3':nDigit++;break;
case '4':nDigit++;break;
case '5':nDigit++;break;
case '6':nDigit++;break;
case '7':nDigit++;break;
case '8':nDigit++;break;
case '9':nDigit++;break;
case ' ':nWhite=0;break;
case 9:nWhite=0;break;
case 13:nWhite=0;break;
}
nOther++;
}
cout<<"数字字符有"<<nDigit<<"个"<<endl;
cout<<"空白字符有"<<nWhite<<"个"<<endl;
cout<<"其他字符有"<<nOther<<"个"<<endl;
return 0;
}
完全不行了...... 展开
【分析】 要对字符进行统计,需要循环语句反复输入字符,读入字符后用switch 语句判断字符的种类:要统计3种字符数,需要定义3个用于计数的变量nDigit ,nWhite ,nOther,并置初始值0;读入字符用cin.get()函数,在这里用while循环比较合适。白字符指空白键、Tab键和回车键。EOF表示End of File ,其值为-1,从键盘输入 CTRL+Z键即可。
#include<iostream>
#include<string>
using namespace std;
int main()
{
int nDigit=0,nWhite=0,nOther=0,i=0;
char item;
cout<<"请输入您要输入的字符:";
while(item=cin.get()!=EOF)
{
switch(item)
{
case '0':nDigit++;break;
case '1':nDigit++;break;
case '2':nDigit++;break;
case '3':nDigit++;break;
case '4':nDigit++;break;
case '5':nDigit++;break;
case '6':nDigit++;break;
case '7':nDigit++;break;
case '8':nDigit++;break;
case '9':nDigit++;break;
case ' ':nWhite=0;break;
case 9:nWhite=0;break;
case 13:nWhite=0;break;
}
nOther++;
}
cout<<"数字字符有"<<nDigit<<"个"<<endl;
cout<<"空白字符有"<<nWhite<<"个"<<endl;
cout<<"其他字符有"<<nOther<<"个"<<endl;
return 0;
}
完全不行了...... 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询