#include<stdio.h>
#include<string.h>
//冒泡排序法 对数据进行排序,两两比较决定上升还是下降,得出升序序列还是降序序列
//输入6个数 从小到大排序
/*int main()
{
int a[6], n = 6;
int i;
int j;//内部比较的次数
int t;//用来进行3部交换
printf("请输入6个数据:\n"); //输入数据
for (i = 0; i < n; i++)
scanf("%d", &a[i]);
for (i = 0; i < n - 1; i++)//有6个数 所以要比较5(n-1)轮
for (j = 0; j < n - 1 - i; j++)//内部次数 第一轮5次 第二轮4次 所以为 n-1-i次
if (a[j] > a[j + 1])
{
t = a[j]; a[j] = a[j + 1]; a[j + 1] = t;
}
printf("排序后的数据为:\n");
for (i = 0; i < n; i++)
printf("%d ", a[i]);
return 0;
}
*/
/* 第一轮
输入 次数1 2 3 4 5
16 10 10 10 10 10
10 16 11 11 11 11
11 11 16 16 16 16
17 17 17 17 15 15
15 15 15 15 17 14
14 14 14 14 14 17//可以理解为把最大的数放在最底下了 下一轮就不需要他了
第二轮
次数 1 2 3 4
10 10 10 10 10
11 11 11 11 11
16 16 16 15 15
15 15 15 16 14
14 14 14 14 16 //两两比较 并且吧最大的放在最下面
*/
//按照姓名对班上的同学的名字从小到大排序(首字母排序)用冒泡排序法和strcmp()函数来比较字符串大小,用strcpy()函数来进行复制,用来3部交换
/*int main()
{
char xsname[6][10] = { "张三丰","李思平","王武法","马事顺","白启明" ,"周凯旋" };
int i, j;
int n = 6;
char t[10];//用来交换
printf("排序前同学的名字为:\n");
for (i = 0; i < n; i++)
printf("%s ", xsname[i]);
//接下来用冒泡排序
for (i = 0; i < n - 1; i++)//6个同学比较5轮
for (j = 0; j < n - 1 - i; j++)//每一轮比较5-i次
if (strcmp(xsname[j], xsname[j + 1]) > 0)
{
strcpy(t, xsname[j]); strcpy(xsname[j], xsname[j + 1]); strcpy(xsname[j + 1], t);
}
printf("排序后同学的名字为:\n");
for (i = 0; i < n; i++)
printf("%s ", xsname[i]);
return 0;
}*/