C语言的一个程序,要求输入一个句子,然后程序先将句子中的每个单词的首字母进行从A到Z排序,最后将排序后输出结果为每行一个单词。程序只能识别字母或空格。不能用 <string.h>,用到要自己写。
例如
输入:I love China
输出:
China
I
love
代码应该怎么写呢?请教。谢谢
C语言句子字母排序后行输出
答案:4 悬赏:0 手机版
解决时间 2021-02-11 13:29
- 提问者网友:轮囘Li巡影
- 2021-02-10 19:10
最佳答案
- 五星知识达人网友:天凉才是好个秋
- 2021-02-10 20:48
#include <iostream>
using namespace std;
void main()
{
char ch[100];
cin.getline(ch,100);
cout<<ch<<endl;
int dex=0;
while (ch[dex]!='\0')
{
if ((ch[dex]>'Z'||ch[dex]<'A')&&(ch[dex]>'z'||ch[dex]<'a')&&ch[dex]!=' ')
{
cout<<"ERROR at: "<<ch+dex<<endl;
return ;
}
dex++;
}
for (char c='a';c<='z';c+=1)
{
dex=0;
while (ch[dex]==' ')
{
dex++;
}
while (ch[dex]!='\0')
{
if (ch[dex]==c || ch[dex]==c-('a'-'A'))
{
cout<<"输出单词:";
while (ch[dex]!=' ' && ch[dex]!='\0')
{
cout<<ch[dex];
dex++;
}
cout<<endl;
}
else
{
while (ch[dex]!=' ' && ch[dex]!='\0')
{
dex++;
}
}
dex++;
}
}
}
using namespace std;
void main()
{
char ch[100];
cin.getline(ch,100);
cout<<ch<<endl;
int dex=0;
while (ch[dex]!='\0')
{
if ((ch[dex]>'Z'||ch[dex]<'A')&&(ch[dex]>'z'||ch[dex]<'a')&&ch[dex]!=' ')
{
cout<<"ERROR at: "<<ch+dex<<endl;
return ;
}
dex++;
}
for (char c='a';c<='z';c+=1)
{
dex=0;
while (ch[dex]==' ')
{
dex++;
}
while (ch[dex]!='\0')
{
if (ch[dex]==c || ch[dex]==c-('a'-'A'))
{
cout<<"输出单词:";
while (ch[dex]!=' ' && ch[dex]!='\0')
{
cout<<ch[dex];
dex++;
}
cout<<endl;
}
else
{
while (ch[dex]!=' ' && ch[dex]!='\0')
{
dex++;
}
}
dex++;
}
}
}
全部回答
- 1楼网友:不想翻身的咸鱼
- 2021-02-11 00:42
你被火烧着不痛吗?”我好奇地问蜡烛。“当然痛呀!但我一想到是为你们服务,我就不痛了!”蜡烛回答道。这时蜡烛痛得冒出了点汗,火已经燃到它颈子上来了。“真的吗,我可真敬佩你啊,天下可能没有比你更无私的人了!”“不,你们的老师也是无私的,他们把爱奉献给你,他们把毕生的心血给了你,他们用自己的身躯,为你架起了一座成功的桥梁,将你引向成功;他们用自己的双手,写下了一个个强劲有力的字,让你们学到了知识;他们像母亲一样爱着你们,当你失败时,他们还是依然爱着你;当他们对你说他们对你失望了时,他们还是在你不易察觉中爱着你;当你成功时,他们更是爱你”。蜡烛语重心长地说道。“噢,你说得很有道理,老师就像你和你的同伴一样无私,老师们爱着我们,你们也为我们服务,你们是无私的,没有任何企图。”“嗯,对……”蜡烛刚要说什么,就燃尽了。望着他那小小的“尸体”,我油然而生一种敬佩之情!
- 2楼网友:雾月
- 2021-02-10 23:18
怀念脚本语言的简单:
# Ruby
str = "I love China"
puts str.split.sort.join("\n")
- 3楼网友:人间朝暮
- 2021-02-10 21:57
#include
#include
void main()
{
char n[500];
int i,j,x,temp;
printf("输入n个字符串:");
gets(n);
x=strlen(n);
for(i=0;i<=x-1-1;i++)
for(j=0;jn[j+1])
{
temp=n[j];
n[j]=n[j+1];
n[j+1]=temp;
}
}
puts(n);
}
解释够详细了吧,我在vc++6.0运行了下,可以。由于我也是学c语言不久,所以可以共同学习嘛。。。。呵呵。。。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯