drawingourmoments
2021-11-08 23:44
采纳率: 100%
浏览 20

C语言初学者遇上灵异事件 同一个代码在Dev c++和codeblock运行的结果不一样!


#include <stdio.h>
int main()
{
    int a[20],i,t1,t2,k[20],n;
    for(i=1;i<=20;i++)
    {
        scanf("%d",&n);
        a[i]=n;
        k[i]=i;
    }
    for(int q=1;q<=19;q++)
    {
        for(int j=q+1;j<=20;j++)
        {
            if(a[q]>a[j])
            {
                t1=a[q];
                a[q]=a[j];
                a[j]=t1;
                t2=k[q];
                k[q]=k[j];
                k[j]=t2;
            }
        }
    }
    for(int p=1;p<=20;p++)
    {
        printf("%d-[%d] ",a[p],k[p]);
    }
    return 0;
}

输入 9 8 7 6 5 4 3 2 1 0 85 74 125 963 258 741 456 789 321 2222
Dev c++的结果和我预计的一样
0-[10] 1-[9] 2-[8] 3-[7] 4-[6] 5-[5] 6-[4] 7-[3] 8-[2] 9-[1] 74-[12] 85-[11] 125-[13] 258-[15] 321-[19] 456-[17] 741-[16] 789-[18] 963-[14] 2222-[20]
而codeblock却是这样
0-[10] 1-[9] 2-[8] 3-[7] 4-[6] 4-[20] 3-[5] 2-[4] 1-[3] 2-[2] 11-[1] 12-[12] 11-[11] 14-[13] 17-[15] 16-[19] 18-[17] 14-[16] 18-[18] 14-[14]

为什么呀很奇怪 希望各位xd帮忙看看!感谢!

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题