解题思路:从第一个数开始依次比较相邻两数的大小,小的往后挪,比九次之后,最小的数挪到末尾输出末尾的数,然后再从头比8次,以此类推,相当于每次选最小的数输出
注意事项:第一次比较9次,往后要比上个循环少比一次
参考代码:
int a[10],i,b,c;
for (i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
for ( i = 0; i < 10; i++)
{
for (b = 0; b < 9-i; b++)//每次输出后要比上个循环少比一次
{
if (a[b]<a[b+1])//比较相邻两数的大小
{
c = a[b + 1];
a[b + 1] = a[b];
a[b] = c;//小的往后挪
}
}
printf("%i\n",a[b]); //这里注意不能用a[b+1],因为最后一个循环结束后b会执行b++,如果再+1,输出结果会出错
}
0.0分
0 人评分
第一浏览:919 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:604 |
简单的a+b (C语言代码)浏览:719 |
【计算两点间的距离】 (C语言代码)浏览:927 |
回文数(一) (C语言代码)浏览:809 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:934 |
求圆的面积 (C语言代码)浏览:1755 |
C语言训练-数字母 (C语言代码)浏览:648 |
P1000 (C语言代码)浏览:911 |
母牛的故事 (C语言代码)浏览:1045 |