C语言题目:“有一篇文章,共有3行文字,每行有个80字符.要求分别统计”请问到底哪里出错了
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/07 16:39:26
C语言题目:“有一篇文章,共有3行文字,每行有个80字符.要求分别统计”请问到底哪里出错了
#include
#include
int main()
{
char str[3][80];
char c;
int i,j;
int up=0,low=0,num=0,n=0,other=0;
for(i=0;i
#include
#include
int main()
{
char str[3][80];
char c;
int i,j;
int up=0,low=0,num=0,n=0,other=0;
for(i=0;i
str是个字符串数组,gets是获取字符串
改成gets(str[i])
&改成&&
因为每行屏幕最多显示81个字符,而最后一个字符都是\0意味着字符串的结束.所以要加这个判断来识别是不是读到字符串结尾了.
再问: 上面是没有加if(c==‘\0’)break; 的结果 为什么会这样
再答: 你下面的结果也不对把,空格没有啊,因为字符串的格式是****\0\0\0\0\0……一直补到结束为止,所以你有很多other
再问: 嗯 写上了个空格嘛 暂且忽略空格的事 为什么没有那句break的时候会那个样子
再答: 你定义了每个字符串都是长度是80对吧,总长度是240,如果你第一个字符串可见长度只是10的话,那么后面70个位置都会是\0,所以你第一个的所有的总数加起来是240,而空格和\0的分辨不是很好。你可以直接读取你的str[0][50]这个字符(即第一行第51个字符,尽管你看不见它 )和"\0"作比较,结果应该是相等的 。
改成gets(str[i])
&改成&&
因为每行屏幕最多显示81个字符,而最后一个字符都是\0意味着字符串的结束.所以要加这个判断来识别是不是读到字符串结尾了.
再问: 上面是没有加if(c==‘\0’)break; 的结果 为什么会这样
再答: 你下面的结果也不对把,空格没有啊,因为字符串的格式是****\0\0\0\0\0……一直补到结束为止,所以你有很多other
再问: 嗯 写上了个空格嘛 暂且忽略空格的事 为什么没有那句break的时候会那个样子
再答: 你定义了每个字符串都是长度是80对吧,总长度是240,如果你第一个字符串可见长度只是10的话,那么后面70个位置都会是\0,所以你第一个的所有的总数加起来是240,而空格和\0的分辨不是很好。你可以直接读取你的str[0][50]这个字符(即第一行第51个字符,尽管你看不见它 )和"\0"作比较,结果应该是相等的 。
C语言题目:“有一篇文章,共有3行文字,每行有个80字符.要求分别统计”请问到底哪里出错了
C语言题目 有一篇文章,共有3行文字,每行有个80字符.要求分别统计出
c语言 有有一篇文章,共有3行文字,每行有80个字符.要求分别统计出其中英文大写字母,小写字母,数字,空
c语言 有一篇文章,共有3行文字,每行有80个字符.要求分别统计出其中英文大写字
C语言题:有一篇文章,共有3行文字,每行有80个字符.编写程序分别统计出其中英文大写字母、英文小写字母
帮我看下这段代码有何错误?有一篇文章,共有3行文字,每行有80个字符,要求分别统计出每行的英文大写字母
C语言课后习题解答有一篇文章,共有3行文字,每行有80个字符。要求分别统计处其中英文大写字母。小写字母。数字。空格以及其
java求助。。。。有一篇文章,共有3行文字,每行有80个字符。要求分别统计出其中英文大写字母,小写字母,中文字母,中文
C问题,请赐教。有一篇文章,共有3行文字,每行有80个字符,要求分别统计出其中英文大写字母、小写字母、数字、空格以及其他
有一篇文章,共有3行文字,每行最多不超过80个字符,请分别统计出其中英文大写字母、小写字母、数字、空格
有一篇文章,共有30行文字,每行有50个字符,分别统计出其英文字母,数字以及其他字符的个数
C程序设计:一篇文章共有三行文字,每行八十个字符,统计大写字母、小写字母、数字,空格及其他字符的个数