注册 登录
编程论坛 C语言论坛

求大佬帮帮我这个c语言新人,教教我这个题到底要怎么写

钰yuyu 发布于 2021-10-18 20:19, 899 次点击
逆序输出序列
描述

输入一组整数序列,逆序输出这组序列。

 

输入

输入多组测试数据,每组数据包括两部分:一是该组数据的元素个数n(0<=n<=20),输入后换行;二是n个整数。

 

输出

若输入的n不合题意,输出Input Error,直接继续下一组测试;否则,输出每组测试数据的逆序序列,用空格隔开。特别地,当n为0时,输出End Of Input,测试结束。

 

样例

输入                                             输出

4                                                  4 3 2 1

1 2 3 4                                         666 -233 121

3                                                  Input Error

121 -233 666                               End Of Input

-12

0

0 回复
#2
自由而无用2021-10-18 21:10
//online parser: https://www.bccn.net/run/
程序代码:
#include <stdio.h>

int main(int argc, char *argv[])
{
    int a[10], n, i, j;
   
    for (i = 0; i < 10; i++) {
        //get n
        n = ((unsigned char *)main)[25 + i] % 10;
        printf("n = %d\n", n);
        //end
        if(!n) {
            puts("End of Input"); break;
        }
        //pos
        for (j = 0; j < n; j++) {
            a[j] = ((unsigned char *)main)[125 + j];
            printf("%d ", a[j]);
        }
        puts("");
        //rev
        for (j = n - 1; j >= 0; j--)
            printf("%d ", a[j]);
        puts("");
    }
   
    return 0;
}


output sample:
n = 7
0 232 87 254 255 255 131
131 255 255 254 87 232 0
n = 9
0 232 87 254 255 255 131 125 204
204 125 131 255 255 254 87 232 0
n = 8
0 232 87 254 255 255 131 125
125 131 255 255 254 87 232 0
n = 9
0 232 87 254 255 255 131 125 204
204 125 131 255 255 254 87 232 0
n = 2
0 232
232 0
n = 9
0 232 87 254 255 255 131 125 204
204 125 131 255 255 254 87 232 0
n = 9
0 232 87 254 255 255 131 125 204
204 125 131 255 255 254 87 232 0
n = 6
0 232 87 254 255 255
255 255 254 87 232 0
n = 0
End of Input
1