这个问题要求输入三个整数a、b、c,要求按由大到小的顺序将它们输出。可以使用函数和指针来实现。
时间: 2024-03-01 08:55:37 浏览: 101
好的,这个问题可以使用以下代码实现:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c);
// 声明函数sort,参数为三个指向整型变量的指针
int main()
{
int a, b, c;
printf("请输入三个整数:\n");
scanf("%d %d %d", &a, &b, &c);
sort(&a, &b, &c); // 调用sort函数,传入三个变量的地址
printf("由大到小排序后的结果为:%d %d %d\n", a, b, c);
return 0;
}
void sort(int *a, int *b, int *c)
{
int temp;
if (*a < *b) {
temp = *a;
*a = *b;
*b = temp;
} // 交换a、b的值,使得a大于等于b
if (*a < *c) {
temp = *a;
*a = *c;
*c = temp;
} // 交换a、c的值,使得a大于等于c
if (*b < *c) {
temp = *b;
*b = *c;
*c = temp;
} // 交换b、c的值,使得b大于等于c
}
```
使用指针可以避免在函数内部对变量进行拷贝,提高了程序的效率。
阅读全文