| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 993 人关注过本帖
标题:C语言题目 不知道为什么不对?
只看楼主 加入收藏
a1533168735
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2019-12-21
结帖率:0
收藏
已结贴  问题点数:20 回复次数:2 
C语言题目 不知道为什么不对?
题目描述
贝贝最近玩起了字符游戏,规则是这样的:读入四行字符串,其中的字母都是大写的,乐乐想打印一个柱状图显示每个大写字母的频率。你能帮助他吗?

输入
输入共有4行:每行为一串字符,不超过72个字符。

输出
与样例的格式保持严格一致。

样例输入
THE QUICK BROWN FOX JUMPED OVER THE LAZY DOG.
THIS IS AN EXAMPLE TO TEST FOR YOUR
HISTOGRAM PROGRAM.
HELLO!
样例输出
图片附件: 游客没有浏览图片的权限,请 登录注册

提示
1.输出的相邻字符间有一个空格。
2.最后一行的26个大写字母每次必须输出。
3.大写字母A所在的第一列前没有空格。

我的编程如下

#include <stdio.h>

#include <stdlib.h>



int main()

{ char s[4][80];

int i,j;

for(i=0;i<4;i++)

{



gets(s[i]);

}



char c[26][300]={'\0'};

int d[26]={0};

for(i=0;i<26;i++)

{

c[i][0]='A'+i;

}

for(i=0;i<4;i++)

for(j=0;s[i][j]!='\0';j++)

{

if(s[i][j]>='A'&&s[i][j]<='Z')

{

c[s[i][j]-65][++d[s[i][j]-65]]='*';





}

}

int max=d[0];

for(i=1;i<26;i++)

{

if(d[i]>max)

max=d[i];

}

for(i=max;i>0;i--)

{for(j=0;j<26;j++)

printf("%c ",c[j][i]);

printf("\n");

}

for(i=0;i<26;i++)

printf("%c ",c[i][0]);





return 0;

}

[此贴子已经被作者于2019-12-21 22:38编辑过]

搜索更多相关主题的帖子: 大写 FOR 字母 i++ 输出 
2019-12-21 22:36
纯蓝之刃
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:76
帖 子:570
专家分:3727
注 册:2019-7-29
收藏
得分:20 
gets(s[i]);

当输入字符串中含有空格会被截断。
for(i=0;i<4;i++)
{
gets(s[i]);
}
更换为
for(i=0;i<4;i++)
    {
        scanf("%[^\n]",s[i]);
        getchar();
    }
试试

一沙一世界,一花一天堂。无限掌中置,刹那成永恒。
2019-12-21 23:29
a1533168735
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2019-12-21
收藏
得分:0 
回复 2楼 纯蓝之刃
还是不对,而且gets输入不是可以输入含空格的字符串吗
2019-12-22 10:39
快速回复:C语言题目 不知道为什么不对?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017507 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved