输入三个整数,按由大到小的顺序输出(指针方法)

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define M 10
void sort(int *p1,int *p2,int *p3)    //定义三个形参指针变量接收主函数传入的实参 
{
    int t;
    if(*p1>*p2)                        // * 号代表解址,解址后就是内容,进行比较大小 
    {
        t=*p1;
        *p1=*p2;
        *p2=t;
    }
    if(*p1>*p3)
    {
        t=*p1;
        *p1=*p3;
        *p3=t;
    }
    if(*p2>*p3)
    {
        t=*p2;
        *p2=*p3;
        *p3=t;
    }
    printf("The order is :%d < %d <%d ",*p1,*p2,*p3);//排序完成后进行输出 
}
 
int main(void)
{    int a,b,c;
    int *p1,*p2,*p3;            //分别定义指针变量p1,p2,p3 
    p1=&a;
    p2=&b;
    p3=&c;                        //分别指向三个整数的地址 
    printf("Please enter a,b,c:");
    scanf("%d%d%d",&a,&b,&c);    //输入三个整数 
    sort(p1,p2,p3);                //调用排序函数 
    return 0;
}
小编觉得这道题目是比较基础的,重点要理清何为指针,地址,指针变量的概念;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值