iEfeng 2023-04-16 19:05 采纳率: 50%
浏览 93
已结题

输入10个数存入数组,然后逆序存储并输出。

大家好,这个我写了好多遍,提交时就是过不去,咋回事啊?请帮我看一下,谢谢了!
下面是我的问题:

输入10个整数存入一维数组a,然后按逆序重新存储数据,最后按顺序输出该数组,每个数据占5列。例如输入
2 5 6 7 1 8 9 0 3 6
后,a(0)-a(9)依次为2、5、6、7、1、8、9、0、3、6,逆序重新存储数据后a(0)-a(9)依次为6、3、0、9、8、1、7、6、5、2,输出应为
    6    3    0    9    8    1    7    6    5    2

注意:语言选DEV  C++。

#include<stdio.h>
#include<stdlib.h>
main()
{
    int a[10];
    int i,t;
    scanf("%d",&a[i]);
    for(i=0;i<10;i++)
        printf("%d ",a[i]);
    for(i=0;i<10/2;i++)
    {
        t=a[i];
        a[i]=a[10-1-i];
        a[10-1-i]=t;
    }
    for(i=0;i<10;i++)
        printf("%d ",a[i]);
    printf("\n");
}
  • 写回答

2条回答 默认 最新

  • threenewbee 2023-04-17 05:41
    关注

    main()
    这是turbo c老式写法,现代的编译器应该加上返回值
    int main()

    第一个scanf("%d",&a[i]);,不能这样实现输入,必须循环一个一个来

    还有,格式输出和题目要求不同
    修改了一下,你参考下

    #include<stdio.h>
    #include<stdlib.h>
    int main()
    {
        int a[10];
        int i,t;
        for(i=0;i<10;i++)
            scanf("%d",&a[i]);
        for(i=0;i<10;i++)
            printf("%5d",a[i]);
        printf("\n");
        for(i=0;i<10/2;i++)
        {
            t=a[i];
            a[i]=a[10-1-i];
            a[10-1-i]=t;
        }
        for(i=0;i<10;i++)
            printf("%5d",a[i]);
        printf("\n");
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 5月1日
  • 已采纳回答 4月23日
  • 创建了问题 4月16日

悬赏问题

  • ¥15 使用yolov5-7.0目标检测报错
  • ¥15 对于这个问题的解释说明
  • ¥200 询问:python实现大地主题正反算的程序设计,有偿
  • ¥15 smptlib使用465端口发送邮件失败
  • ¥200 总是报错,能帮助用python实现程序实现高斯正反算吗?有偿
  • ¥15 对于squad数据集的基于bert模型的微调
  • ¥15 为什么我运行这个网络会出现以下报错?CRNN神经网络
  • ¥20 steam下载游戏占用内存
  • ¥15 CST保存项目时失败
  • ¥20 java在应用程序里获取不到扬声器设备