c语言定义三个整数和整数指针,仅用指针方法实现按由小到大的顺序输出
时间: 2023-11-02 10:33:00 浏览: 96
好的,您可以参考以下代码实现:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int a = 5, b = 3, c = 8;
int *p1, *p2, *p3;
p1 = &a;
p2 = &b;
p3 = &c;
if (*p1 > *p2) swap(p1, p2);
if (*p1 > *p3) swap(p1, p3);
if (*p2 > *p3) swap(p2, p3);
printf("%d %d %d\n", *p1, *p2, *p3);
return 0;
}
```
输出结果为:
```
3 5 8
```
这段代码中,我们首先定义了三个整数变量 a、b 和 c,并将它们分别初始化为 5、3 和 8。然后定义了三个指向这些变量的整数指针 p1、p2 和 p3,并将它们分别指向 a、b 和 c。接着,我们使用 if 语句和 swap 函数来实现三个整数的比较和交换,最后通过指针打印出排序后的结果。
相关问题
c语言定义三个整数及整数指针,仅用指针方法实现由小到大的顺序输出
好的,以下是可以实现您要求的 C 语言代码:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int a = 5, b = 3, c = 8;
int *p1 = &a, *p2 = &b, *p3 = &c;
if (*p1 > *p2) swap(p1, p2);
if (*p1 > *p3) swap(p1, p3);
if (*p2 > *p3) swap(p2, p3);
printf("%d %d %d\n", *p1, *p2, *p3);
return 0;
}
```
输出结果为:
```
3 5 8
```
这段代码中,我们首先定义了三个整数变量 a、b 和 c,并将它们分别初始化为 5、3 和 8。然后定义了三个指向这些变量的整数指针 p1、p2 和 p3,并将它们分别指向 a、b 和 c。接着,我们使用 if 语句和 swap 函数来实现三个整数的比较和交换,最后通过指针打印出排序后的结果。
输入三个整数,按大到小的顺序输出,要求按指针实现的C语言程序代码
以下是按指针实现的C语言程序代码:
```c
#include <stdio.h>
void sort(int *a, int *b, int *c);
int main() {
int a, b, c;
printf("请输入三个整数:");
scanf("%d%d%d", &a, &b, &c);
sort(&a, &b, &c);
printf("按大到小顺序输出为:%d %d %d", a, b, c);
return 0;
}
void sort(int *a, int *b, int *c) {
int tmp;
if (*a < *b) {
tmp = *a;
*a = *b;
*b = tmp;
}
if (*a < *c) {
tmp = *a;
*a = *c;
*c = tmp;
}
if (*b < *c) {
tmp = *b;
*b = *c;
*c = tmp;
}
}
```
以上程序中,sort函数用来实现三个整数的排序,由于需要修改原始数据,所以采用了指针传递参数的方式。在主函数中,我们通过调用sort函数并传入三个整数的指针,来实现按大到小顺序输出的功能。
阅读全文