将一个字符串中每个单词逆序输出(2014年西安华为实习生机试第二题)

来源:互联网 发布:欧陆风云4mac修改时间 编辑:程序博客网 时间:2024/05/16 18:01

  题目:给定一个字符串,将字符串中每个单词逆序输出。

例如 输入:Hello,I am a student

     输出:olleH, I ma a tneduts

谨此纪念C语言学习历程。

  代码如下:

#include<stdio.h>
#include<string.h>
int main (void)
{
int i,j,k=0;
int len[20];
char str[100],s[20],str_1[20][20];
printf("请输入字符串:\n");
gets(str);
char * p=str;
char * q=s;
while (*p!='\0')
{
while (*p!=',' && *p!=' ' && *p!='\0')
{
*q++=*p++;
}
*q='\0';
strcpy(str_1[k++],s);
strcpy(s,"0");
q=s;
if (*p==',')
{
*q=*p;
q++;
*q='\0';
strcpy (str_1[k++],s);
strcpy (s,"0");
q=s;
}
p++;
}
for (i=0; i<k-1; i++)
{
    len[i]=strlen(str_1[i]);
}
printf("逆序后的字符串为:\n");
for (i=0; i<k-1; i++)
{
for (j=len[i]-1; j>=0; j--)
{
printf("%c",str_1[i][j]);
}
printf(" ");
}
printf("\n");
return 0;
}


0 0
原创粉丝点击