C语言 数组 冒泡法排序


C程序设计 第六章课后习题2

“用选择法对十个整数排序”

首先定义一个长度为10的数组用来存储十个整数 "a[10]"

需要注意的是长度为10的数组下标范围为1~9,在改变下标数值时要注意防止数组范围溢出

↓数组范围溢出的提示

主要通过一个两层嵌套的for语句实现冒泡排序

  1. for (j = 0; j < 9; j++)                             //进行九次循环,实现九轮比较
  2. for (i = 0; i < 9 - j; i++)                         //每一轮中进行9-j次比较
  3. if (a[i] > a[i + 1])                                  //相邻两个数进行比较
  4. {
  5. t = a[i]; a[i] = a[i + 1]; a[i + 1] = t;
  6. }

完整程序(在vs2017内调试通过)

 

#include<stdio.h>
int main()
{
int a[10], i, j, t;
printf("input ten numbers\n");
for (i = 0; i < 10; i++)
scanf_s("%d", &a[i]);
printf("\n");
for (j = 0; j < 9; j++)
for (i = 0; i < 9 - j; i++)
if (a[i] > a[i + 1])
{
t = a[i]; a[i] = a[i + 1]; a[i + 1] = t;
}
printf("output\n");
for (i = 0; i < 10; i++)
printf("%d ", a[i]);
printf("\n");
return 0;
}

 

 

 

(for循环后面一定不要打;!)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM