7-10 翻转单词
题目
本题目要求将输入字符串翻转
输入格式
输入一行字符串,所有内容保持相对位置,将单词翻转。字符串总长度未知,单词数量未知,每个单词不超过20个字母。测试数据保证输入的字符只含英文字母和空格。
输出格式
进行翻转操作后的字符串,因出题人老懒鬼,末尾记得带空格哦(bushi
输入样例
hello world
输出样例
olleh dlrow
要求
Code Size Limit 16 KB
Time Limit 400 ms
Memory Limit 64 MB
解题思路
一,定义数据,gets(maxn) 获得字符串,(这是一整个的字符串),当前的字符串中,通过while循环进行处理
二,子循环1 : 当字符为‘ ’空 则下标自增 ;子循环2:当字符不为空,则将数据存储到temp 数组中,当整个字符串全部遍历完全后,就开始输出,这个时候输出temp[ ]数组就行了
三,每次输出完一个temp数组后面就必须输出一个空格“ ”;并将下标重新置为0
示例代码
#include<stdio.h>
#include<string.h>
#define N 10000
#define maxn 20
//RE的时候把数组开大一点就好了
int main(){
char num[N];
char temp[maxn];
gets(num);
int i=0;
int j=0;
while(i<strlen(num)){
while(num[i]==' '&&num[i]!='\0')
i++;
while(num[i]!=' '&&num[i]!='\0'){
temp[j] = num[i];
j++;
i++;
}
for(int k=j-1;k>=0;k--)
printf("%c",temp[k]);
printf(" ");
j= 0;
}
return 0;
}