问题标题: 酷町堂:4003 成绩排序

0
0
已解决
曲天歌
曲天歌
高级光能
高级光能
#include<iostream>
using namespace std;
int a[10010];
int main() {
    int w=1,j,k;
    while(1){
        w++;
        cin>>a[w];
        if(a[w]==0){
            break;
        }
    }
    for(int i=2;i<=w;i++)
    {
        k=a[j];
        j=i-1;
        while(j>=1&&k>a[j])
        {
            a[j+1]=a[j];
            j--;
        }   
        a[j+1]=k;   
    }   
    for(int i=1;i<=w;i++)
        cout<<a[i]<<" ";
    return 0;
}

各位大佬,帮我看看这道题我写的代码哪里编译错误了,顺便帮我修改一下

点进去


0
已采纳
朱子尘
朱子尘
初级光能
初级光能

把w++放在if后面

要定义一个变量,输入是cin>>a[变量]

变量逐渐要加一

插排有错误

 while(1)
    {
        cin>>a[i];
        if(a[i]==0)
            break;
        i++;
        w++;
    }

 

我要回答