3.编写函数sort(int a[],int n)对整型数组a[10] = {19, 32, 45, 51, 71, 23, 38, 11, 17, 8}升序排序,并将排序结果写入磁盘文件data3.
时间: 2023-05-01 19:05:39 浏览: 99
void sort(int a[], int n){
int i,j,temp;
for(i=0; i<n-1; i++){
for(j=0; j<n-i-1; j++){
if(a[j]>a[j+1]){
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
FILE *fp = fopen("data3.txt", "w");
for(i=0; i<n; i++){
fprintf(fp, "%d ", a[i]);
}
fclose(fp);
}
int main(){
int a[10] = {19, 32, 45, 51, 71, 23, 38, 11, 17, 8};
sort(a, 10);
printf("排序完成并已保存至文件 data3.txt\n");
return 0;
}
相关问题
编写一函数实现对起始地址是a,长度是n的整型数组从小到大排序。函数原型为:void sort(int *a, int n);
以下是实现对整型数组从小到大排序的函数:
```
void sort(int *a, int n) {
int temp;
for (int i = 0; i < n - 1; i++) {
for (int j = i + 1; j < n; j++) {
if (a[i] > a[j]) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
```
使用冒泡排序的方式,每次比较相邻两个数,如果前一个数比后一个数大,就交换它们的位置,直到整个数组有序为止。
编写一函数实现对起始地址是a,长度是n的整型数组从小到大排序。函数原型为:void sort(int *a, int n);用C语言函数
以下是用C语言实现对起始地址是a,长度是n的整型数组从小到大排序的函数sort:
```c
void sort(int *a, int n) {
int i, j, temp;
for (i = 0; i < n; i++) {
for (j = i + 1; j < n; j++) {
if (a[i] > a[j]) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
```
该函数使用了冒泡排序算法,依次比较相邻两个元素的大小,如果前一个元素大于后一个元素,则交换它们的位置。经过一轮比较后,最大的元素就会被交换到数组的最后一个位置。重复执行这个过程,直到所有元素都被排序。
阅读全文