作业帮 > 综合 > 作业

c语言翻转诗句问题你手中有些从右向左读的诗句,比如“rose red red a like is luve my O”.

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/06/06 14:08:59
c语言翻转诗句问题
你手中有些从右向左读的诗句,比如“rose red red a like is luve my O”.现在为了阅读这些美妙的诗句,你要把这些语句反转成正常的从左到右,即“O my luve is like a red red rose”.
输入
每一行为原来从右向左读的诗句S.该诗句中不包含任何标点符号,单词间以空格隔开.每条诗句最多包含 50个单词,每个单词最多包含50个字符.
输出
每一行为正常的从左到右读的诗句.
样例输入
rose red red a like is luve my OJune in sprung newly That'smelodie the like is luve my Otune in played sweetly That's
样例输出
O my luve is like a red red roseThat's newly sprung in JuneO my luve is like the melodieThat's sweetly played in tune
我是这样写的:
#include
#include
int main()
{
int i,j,len,num;
char str1[2500];
char str2[50][50]={"\0"};
char str3[50][50]={"\0"};
char temp[50]={"\0"};
while(gets(str1))
{ j=0;
num=0;
len=strlen(str1);
for(i=0;i
c语言翻转诗句问题你手中有些从右向左读的诗句,比如“rose red red a like is luve my O”.
不是这样子清空的,清空的话使用memset
这样写
memset(str2,'\0',50*50*sizeof(char));
memset(str3,'\0',50*50*sizeof(char));
memset(temp,'\0',50*sizeof(char));
//memset的头文件为string.h
你那样写的意思是在while循环的最后重新定义了三个局部变量,然后初始化,但是局部变量的生存周期只在一对花括号之内,也就是说你刚刚定义了三个局部变量,还没有使用,三个局部变量已经被销毁掉了.所以你的那三句是没有意义的.
再问: ����memsetû��ѧ����û�и�dz�Եİ취��
再答: //ʹ�ú�������