C语言课后习题解答

有一篇文章,共有3行文字,每行有80个字符。要求分别统计处其中英文大写字母。小写字母。数字。空格以及其他字符的个数。... 有一篇文章,共有3行文字,每行有80个字符。要求分别统计处其中英文大写字母。小写字母。数字。空格以及其他字符的个数。 展开
 我来答
南浦无云送沧波
2010-12-01 · 超过14用户采纳过TA的回答
知道答主
回答量:24
采纳率:0%
帮助的人:25.5万
展开全部
#include<stdio.h>
main( )
{
int a=0,b=0,d=0,e=0,f=0;
char c;
while((c=getchar( ))!='\n')
{
if (c>='A'&&c<='Z') a++;
else if(c>='a'&&c<='z') b++;
else if(c>='0'&&c<='9') d++;
else if(c==' ') e++;
else f++;
}
printf("%d\n",a);
printf("%d\n",b);
printf("%d\n",d);
printf("%d\n",e);
printf("%d\n",f);
}

参考资料: 参考2010年1月百度知道

voicescx
2010-12-01
知道答主
回答量:13
采纳率:0%
帮助的人:2.1万
展开全部
char fp[3][80];
char d=0; //统计大写
char x=0; //统计小写
char z=0; //统计数字
char k=0; //统计空格
char p;//其他
for(j=0;j<3;j++)
{
for(i=0;i<80;i++)
{
if(fp[j][i]>=65&fp[j][i]<=90) d++;
else if(fp[j][i]>=97&fp[j][i]<=122) x++;
else if(fp[j][i]>=48&fp[j][i]<=57)z++;
else if(fp[j][i]==NULL)z++;
else p++;
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wu_qingzhou
2010-12-01 · 超过29用户采纳过TA的回答
知道答主
回答量:125
采纳率:0%
帮助的人:71.4万
展开全部
你的这篇文章是要在程序运行时自己手动输入还是存放在电脑硬盘里?如果是第一种的话楼上的已经解决了。 如果是第二种情况那就:
#include<stdio.h>
#include<stdlib.h>
#include<fstream.h>
int main( )
{
int a=0,b=0,d=0,e=0,f=0;
char c;
ifstream infile("D:\\abc.txt"); //d盘中的abc.txt文件就是你要处理的那篇文章。
if (!infile) //这文件要你自己创建,里面的东西也要你自己输入。然后程序来统计。
{
printf("open error");
exit(1);
}
while( (c=infile.get()) != EOF )
{
if (c>='A'&&c<='Z') a++;
else if(c>='a'&&c<='z') b++;
else if(c>='0'&&c<='9') d++;
else if(c==' ') e++;
else f++;
}
infile.close();
printf("大写字母:%d\n",a);
printf("小写字母:%d\n",b);
printf("数字:%d\n",d);
printf("空格:%d\n",e);
printf("其他:%d\n",f); //一个汉字占两个字符。
return 0;
}

记得给分,和好评啦。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式