首页 > 电脑

???有什么问题

更新时间2019-08-08 06:21:15

读入一组字符,以“?”作为结束标志,统计其中元音字母、辅音字母、数字和其它符号个数(“?”作为结束标志,不计算个数)。如输入字符为 SouA56#s?,则输出YY=3,FY=2,SZ=2,QT=1。

#include"bits/stdc++.h"

using namespace std;

int main()

{

int s1=0,s2=0,s3=0,s4=0;

char c;

while((c=getchar())!='?')

{

if((c>='a'&&c<='z')||()c>='A'&&c<='Z')

{

if(c=='a'||c=='e'||c=='i'||c=='o'||c=='u'||c=='A'||c=='E'||c=='I'||c=='O'||c=='U')

{

s1++;

}

else

{

s2++;

}

}

else if(c>='0'&&c<='z')

{

s3++;

}

else

{

s4++;

}

}

printf("YY=%d,FY=%d,SZ=%d,QT=%d ",s1,s2,s3,s4);

return 0;

}

你的

if((c>='a'&&c<='z')||()c>='A'&&c<='Z')

括号匹配有问题,改为

if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))

就可以了,另外建议可直接改为

  if (isalpha(c)) //C++可直接判断一个字符是否为字母的

上一篇:word文档怎么看出这份文档是手打的还是复制粘贴的?

下一篇:任务栏变成这样了怎么变回来