利用指针作为形参编写函数 Sort1;利用该函数,可以把主程序中的a,b, c三个int型变量从小到大排序,并把最小值到最大值分别存放在a, b, c中;在主程序中使用这个函数,输出交换前和交换后a,b, c的值。
时间: 2024-10-06 17:03:12 浏览: 33
在C语言中,你可以通过指针来实现这样一个功能。首先,我们创建一个名为Sort1的函数,它接受三个整数的指针作为参数,然后在函数内部通过指针操作对这三个变量进行排序。这里是一个简单的示例:
```c
void Sort1(int* a, int* b, int* c) {
if(*a > *b) {
int temp = *a;
*a = *b;
*b = temp;
}
if(*b > *c) {
int temp = *b;
*b = *c;
*c = temp;
}
if(*a > *b) {
int temp = *a;
*a = *b;
*b = temp;
}
}
// 主程序部分
int main() {
int a = 5, b = 3, c = 7; // 初始化三个变量
printf("Before sorting: a=%d, b=%d, c=%d\n", a, b, c);
Sort1(&a, &b, &c); // 传递变量地址给Sort1函数
printf("After sorting: a=%d, b=%d, c=%d\n", a, b, c);
return 0;
}
```
在这个例子中,`Sort1`函数通过比较并交换指针所指向的值来进行排序。注意,这个简单的排序算法仅适用于小规模数据,对于大规模排序通常会使用更高效的算法,如快速排序、归并排序等。
阅读全文