1009. 说反话 (20)

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

输入格式:测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。

输出格式:每个测试用例的输出占一行,输出倒序后的句子。

输入样例:

Hello World Here I Come

输出样例:

Come I Here World Hello
复制代码
#include<cstdio>
#include<cstring>

int main(){
     char ans[90][90];
     int num = 0;
     while(scanf("%s",ans[num]) != EOF){ // 为什么一次的Ctrl+z结果不能出来
         num++;
     }
     for(int i = num - 1; i >= 0; i--){
         printf("%s",ans[i]);
         if(i != 0) printf(" ");
     }
  
    return 0;
}
复制代码
复制代码
#include<cstdio>
#include<cstring>

int main(){
     char ans[90][90];
     char str[90];
     int r = 0,h = 0;
     gets(str);
     int len = strlen(str);
     int i;
     for(i = 0; i < len; i++){
         if(str[i] != ' '){
             ans[r][h++] = str[i]; 
         }else{
             r++;
             h = 0;
             ans[r][h] = '\0';   //不是scanf或get输入的字符串结尾处要加一个'\0' 
         }
     }
     
     for(i = r; i >= 0; i--){   //str最后一个\0被输入到最后一个二位数组中。r的值就是二维数组个数 
         printf("%s",ans[i]);
         if(i != 0) printf(" ");
     }
  
    return 0;
}
复制代码

 

posted @   王清河  阅读(137)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示