C语言字符串反转逆序输出

样例输入Howareyou?Howisitgoing?Areyouhappy?样例输出?yppahuoyerA?gniogtisiwoH?uoyerawoH帮我看下我那错... 样例输入

How are you?
How is it going?
Are you happy?

样例输出

?yppah uoy erA
?gniog ti si woH
?uoy era woH

帮我看下我那错了...或者在帮我写个..谢谢了 用 C语言啊
#include <stdio.h>
#include <string.h>
int main()
{
char a[31][31],*start,*end;
int i=0,t,len,k=0;
while(gets(a[i])!=NULL)
{
len=strlen(a[i]);
start=a[i];end=&a[i][len-1];
while(start<end)
{
t=*start;*start=*end;*end=t;
}
i++;
k++;

}
}
for(i=k;i>=0;i--)
{
puts(a[i]);
printf("\n");
}
return 0;
}
题目是这样的..怎么用Ctrl+z结束啊?描述

输入多行字符串,把这些字符串逆序且反转输出。

输入

输入多个(小于30个)字符串,每行一个字符串,字符串长度不超过30

输出

把字符串反转逆序输出。逆序指最后输入的字符串最先输出,反转指把每句话的字母都倒过来输出。

样例输入

How are you?
How is it going?
Are you happy?

样例输出

?yppah uoy erA
?gniog ti si woH
?uoy era woH

提示

由于没讲具体输入多少行字符串,因此,采用条件为gets(...)!=NULL的循环来实现,在VC6中运行时,输入Ctrl+Z结束输入
展开
 我来答
terranlong
2011-11-24 · TA获得超过7294个赞
知道大有可为答主
回答量:2660
采纳率:0%
帮助的人:4024万
展开全部
已改,看注释
#include <stdio.h>
#include <string.h>
int main()
{
char a[31][31],*start,*end;
int i=0,t,len,k=0;
while(gets(a[i])!=NULL)
{
len=strlen(a[i]);
start=a[i];end=&a[i][len-1];
while(end - start > 0) //比较两个指针要这样比较
{
t=*start;
*start=*end;
*end=t;
start++; //start指针向后移
end--; //end指针向前移
}
i++;
k++;

}
for(i=k-1;i>=0;i--) //从k-1开始
{
puts(a[i]);
printf("\n");
}
return 0;
}
森然(华恋星尘之歌招2人)
2011-11-24 · TA获得超过786个赞
知道小有建树答主
回答量:348
采纳率:0%
帮助的人:320万
展开全部
#include <stdio.h>
#include <string.h>
int main()
{
char a[3][31],*p;
int i,len;
for(i=0;i<3;i++)
gets(a[i]);
for(i=0;i<3;i++)
{
len=strlen(a[i]);
p=a[i]+len-1;
for(;p>=a[i];p--)
printf("%c",*p);
putchar('\n');
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ryw12403
2011-11-24 · TA获得超过1899个赞
知道大有可为答主
回答量:2501
采纳率:0%
帮助的人:2111万
展开全部
while(start<end)
{
t=*start;*start=*end;*end=t;
start++;
end--
}

这里加一句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2011-11-24 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:8339万
展开全部
看看以前的问题、答案:
http://zhidao.baidu.com/question/345044746.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
anyazhou2010
2011-11-24
知道答主
回答量:18
采纳率:0%
帮助的人:8.5万
展开全部
他们的好像是对了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式