如何利用指针比较三个数大小呢?
第一步构造你需要的比较大小的函数
/* 交换x和y */
void swap(int* x, int* y)
{
int temp = *x;
*x = *y;
*y = temp;
}
第二步编辑主函数
int main()
{
int a, b, c;
printf("请输入 a,b,c:\n");
scanf("%d,%d,%d", &a, &b, &c);
if(a>b)
{
swap(&a,&b);
if(a>c)
swap(&a,&c);
if(b>c)
swap(&a,&c);
}
printf("升序排序结果:\n");
printf("%d,%d,%d", a, b, c);
return 0;
}
最后一步整合代码
#include <stdio.h>
/* 交换x和y */
void swap(int* x, int* y)
{
int temp = *x;
*x = *y;
*y = temp;
}
int main(int argc, char** argv)
{
int a, b, c;
printf("请输入 a,b,c:\n");
scanf("%d,%d,%d", &a, &b, &c);
if(a>b)
{
swap(&a,&b);
if(a>c)
swap(&a,&c);
if(b>c)
swap(&a,&c);
}
printf("升序排序结果:\n");
printf("%d,%d,%d", a, b, c);
return 0;
}