问题 W: C语言实习题五——1.用指针实现排序
时间限制: 1 Sec 内存限制: 128 MB
题目描述
用指针实现:由键盘输入10个整数,将他们按由小到大的顺序排列。
输入
由键盘输入10个整数。
输出
将他们按由小到大的顺序排列。
样例输入
1 5 4 3 2 9 23 11 5 7
样例输出
1 2 3 4 5 5 7 9 11 23
代码实现
#include <stdio.h>
int main() {
int arr[10] = { 0 };
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
int* p = (int*)arr;
for (int i = 0; i < 10 - 1; i++) {
for ( p = (int*)arr; p < ((int *)arr)+(10-1-i); p++) {
if (*p > *(p + 1)) {
int tmp = *p;
*p = *(p + 1);
*(p + 1) = tmp;
}
}
}
for (int i = 0; i < 10; i++) {
printf("%d", arr[i]);
if (i != 9) {
printf(" ");
}
}
printf("\n");
return 0;
}