用c语言将一行句子中的英语单词倒置而不改变单词数序

来源:互联网 发布:单片机c语言延时程序 编辑:程序博客网 时间:2024/05/01 16:36

Problem C

单词倒置

时限:1000ms 内存限制:10000K 总时限:3000ms

描述:

给一行英文句子,把每个单词倒置,注意:单词的顺序不变。

输入:

一行英文句子,其中只包含大写字母、小写字母和空格。

输出:

把每个单词的字母倒置输出。

输入样例:

 akhk jrow mfo zj ajp

输出样例:

 khka worj ofm jz pja

#include<stdio.h>#include<string.h>int main(){    int i,j=0,n,k;    char str1[500],str2[500];    gets(str1);    n=strlen(str1);    for(i=0;i<n;i++)    {        if(str1[i]!=' ')//判断是否为空格,若不是,将该处字符储存到字符串数组中        {            str2[j]=str1[i];            j++;         }            if((str1[i]==' '&&str1[i-1]!=' ')||i==n-1)//当该单词结束时,将储存到字符串数组中的单词倒序输出

        {            for(k=j-1;k>=0;k--)            {            printf("%c",str2[k]);            }            j=0;        }            if(str1[i]==' ')//当遇到空格时,照常输出        printf(" ");        if(i==n-1)printf("\n"); //句尾输出换行符    }    return 0;}

阅读全文
1 0
原创粉丝点击