解题思路:
感觉这样模块化会好一些~
注意事项:
注意指针的使用
参考代码:
/* 选择排序 */ #include<stdio.h> void swap(int *a,int *b); void sort(int *arr); void swap(int *a,int *b)//交换模块,用了指针 { int temp; temp = *a; *a = *b; *b = temp; } void sort(int *arr)//选择排序模块 { int i,min,j; for(i = 0; i < 10; i++) { min = i;//min用来记录最小值的下标 for(j = i+1; j < 10; j++) if(arr[min] > arr[j]) min = j; swap(arr+i,arr+min); } } int main() { int arr[10]; int i; for(i = 0; i < 10; i++) scanf("%d",arr+i); sort(arr); for(i = 0; i < 10; i++) printf("%d\n",*(arr+i)); return 0; }
0.0分
0 人评分
永远的丰碑 (C语言代码)浏览:708 |
C语言训练-排序问题<1> (C++代码)浏览:633 |
C语言程序设计教程(第三版)课后习题6.11 (C语言代码)for循环浏览:1178 |
C语言程序设计教程(第三版)课后习题10.5 (C语言代码)浏览:1489 |
C语言训练-计算1977!* (C++代码)浏览:907 |
多输入输出练习1 (C语言代码)浏览:1222 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:703 |
C语言训练-求PI* (C语言代码)浏览:641 |
WU-小九九 (C++代码)浏览:1715 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:593 |