描述
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”
所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符
数据范围:输入的字符串长度满足 1≤n≤1000 1≤n≤1000
注意本题有多组输入
输入描述:
输入一个英文语句,每个单词用空格隔开。保证输入只包含空格和字母。
输出描述:
得到逆序的句子
示例1
输入:I am a boy
输出:boy a am I
示例2
输入:nowcoder
输出:nowcoder
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
//#include<iostream>
//using namespace std;
int main() {
char str[90];
gets(str);
int len = strlen(str), r = 0, h = 0;
char ans[90][90];
for (int i = 0; i < len; i++) {
if (str[i] != ' ') {
ans[r][h++] = str[i];
} else {
ans[r][h] = '\0';
r++;
h = 0;
}
}
for (int i = r; i >= 0; i--) {
printf("%s", ans[i]);
if (i > 0)printf(" ");
}
return 0;
}
// 64 位输出请用 printf("%lld")

该程序使用C语言实现将输入的英文句子按单词逆序输出。通过遍历字符串,遇到空格时记录单词结束,然后从后往前打印单词。适用于字符串长度在1到1000之间的输入。
914

被折叠的 条评论
为什么被折叠?



