梁山伯与茱莉蔻
2019-12-04 14:27
采纳率: 100%
浏览 729

请问我的代码为什么只有输入没有输出?

题目描述
Sine 的一个朋友疯了,最近他老爱说反话,别人说什么他就倒着说一遍,真是个奇怪的人。那他到底说了什么呢?

(他说的话不超过 1000 个字符。)

输入描述
输入一个正整数 n,表示说话的次数。下面 n 行表示说的话

输出描述
占 n 行,每行表示对应输入的反话

样例输入
2

i am speaking

ACMer

样例输出
gnikaeps ma i

reMCA

#include<stdio.h>
#include<string.h>
int main()
{
    int i,m,n;
    char st1[1000];
    char st2[1000];
   scanf("%d",&m);
    while(m--)
    { 
    gets(st1);
    scanf("%s",st1);
    i = strlen(st1);
    for (n=0;i>= 0; n++) 
    {
        st2[n] = st1[i];
        i--;
    }
    st2[n] = '\0'; 
   for(n=0;n<i;n++)
    printf("%s",st2);
    printf("\n");                       
    } 
    return 0;
 }


  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • qtchen_1988 2019-12-04 15:36
    已采纳
    #include<stdio.h>
    #include<string.h>
    #define N 1000
    int main()
    {
        int i,m,n;
        char st1[N];
        char st2[N];
        memset(st1,0x0,N);
        memset(st1,0x0,N);
        scanf("%d",&m);
        getchar();
        while(m--)
        {
            gets(st1);
            i = strlen(st1);
            for (n=0;i>0;)
                st2[n++] = st1[--i];
            st2[n] = '\0';
            printf("%s\n",st2);
        }
        return 0;
    }
    
    
    评论
    解决 无用
    打赏 举报
  • 查看更多回答(2条)

相关推荐 更多相似问题