解题思路:从第一个数开始依次比较相邻两数的大小,小的往后挪,比九次之后,最小的数挪到末尾输出末尾的数,然后再从头比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 人评分
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:544 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:589 |
C语言程序设计教程(第三版)课后习题5.8 (C语言代码)浏览:928 |
剔除相关数 (C语言代码)浏览:1010 |
WU-格式化数据输出 (C++代码)浏览:1194 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:550 |
【矩阵】 (C++代码)浏览:936 |
DNA (C语言代码)浏览:540 |
核桃的数量 (C语言代码)浏览:669 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:575 |