GETBETTER
2016-01-06 22:49
#include <stdio.h>
int main()
{
int score[9]={67,98,75,63,82,79,81,91,66,84};
int i;
int j;
for(i=8;i>0;i--)
{
for(j=0;j<=i;j++)
{
if(score[j]<score[j+1])
{
int mid;
mid=score[j];
score[j]=score[j+1];
score[j+1]=mid;
}
}
}
for(i=0;i<10;i++)
{
printf("%d\n",score[i]);
}
return 0;
}
#include <stdio.h>
int main()
{
int score[10]={67,98,75,63,82,79,81,91,66,84}; //数组定义长度应该大于或者等于数组的数字个数
int i;
int j;
for(i=8;i>0;i--)
{
for(j=0;j<=i;j++)
{
if(score[j]<score[j+1])
{
int mid;
mid=score[j];
score[j]=score[j+1];
score[j+1]=mid;
}
}
}
for(i=0;i<10;i++)
{
printf("%d\n",score[i]);
}
return 0;
}
把score[] 里的84去掉,然后再把第一个for循环里的 i = 8 改成 7
首先 你的数组 声明就错了 int x[n] 这里的n应该是一共多少个内容 10个 就应该 n=10;
其次 你的i比较次数 应该等于9 因为每个都要比较的话应该9次 ,这两个地方改了以后就对了 我说的术语不太正确
但是答案是对的
C语言入门
926025 学习 · 20793 问题
相似问题