什么卡盟最便宜:求助,谁能看看这段程序结果是什么?

来源:百度文库 编辑:高校问答 时间:2024/04/25 02:44:00
#include<stdio.h>

int main()
{
int a[5];
int i, j, n=5;

a[0] = 8; a[i] = 2; a[2] = 3; a[3] = 6; a[4] =5;
for (i = 0; i < n-1; i++){
for (j= n-1; j>i; j--){
if (a[j-1] > a[j])
swap(a, j-1, j);
}
}
for (i = 0; i<5; i++) {
printf("%d\n", a[i]);
}
return 0;
}

上面是题目给出的程序,下面是问题:
1。给出程序的输出结果。
2,把n=5,换成n=3,在得出程序结果。
3, 写出函数swap的代码。
4, write the name of the algorithm used in program, and sketch it briefly.(中文意思可能是写出程序中用到的算法名称,并简要介绍。)

那位大虾可以做的话请帮忙解答以下!
谢谢了!

一个简单的冒泡排序而已。
void swap(int *a, int i, int,j)
{
int temp=a[i];
a[i]=a[j];
a[j]=temp;
}
结果吗?
自然是排好序的2 3 5 6 8(数组内容,输出时一行一个)

n=5改为3
仅对前三个数排序
结果为2 3 8 6 5(格式相同)

......我最讨厌的C哦 格式写的有点不好