|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <stdio.h>
void main()
{
int i,j,max,a[10];
printf("input ten numbers\n");
for(i=0;i < 10;i ++)
{
scanf("%d",&a[i]);//动态赋值
}
printf("\n");
for(i=0;i < 9;i++)//外层循环10个数9次
{
for(j=0;j < 9-i;j++)//内层循环,每次沉一个数
{
if(a[i] > a[i+1])
{
max = a[i];
a[i] = a[i+1];
a[i+1] = max;
}
}
//这个括号包括下面循环就可以看到9步过程
printf("the sorted numbers:\n");//输出
for(i=0;i < 10;i++)
{
printf("%d ",a[i]);
}
}
printf("\n");
}
for(i=0;i < 9;i++)//外层循环10个数9次
{
for(j=0;j < 9-i;j++)//内层循环,每次沉一个数
{
if(a[i] > a[i+1])
{
max = a[i];
a[i] = a[i+1];
a[i+1] = max;
}
}
内层循环,当j变化时,循环体不包含j,即内层循环始终在执行同一段一点都没有变化的代码,相当于内层循环只执行了一次。
此外,i在两个循环中使用,冲突了
- #include <stdio.h>
- void main()
- {
- int i, j, max, ii,a[10] = {3,10,2,1,4,5,6,7,8,9};
- printf("input ten numbers\n");
- for (i = 0; i < 10; i++)
- {
- //scanf("%d", &a[i]);//动态赋值
- }
- printf("\n");
- for (i = 0; i < 9; i++)//外层循环10个数9次
- {
- for (j = 0; j < 9 - i; j++)//内层循环,每次沉一个数
- {
- if (a[j] > a[j + 1])
- {
- max = a[j];
- a[j] = a[j + 1];
- a[j + 1] = max;
- }
- }
- //这个括号包括下面循环就可以看到9步过程
- printf("the sorted numbers:\n");//输出
- for (ii = 0; ii < 10; ii++)
- {
- printf("%d ", a[ii]);
- }
- printf("\n");
- }
- }
复制代码
|
-
|