zoukankan      html  css  js  c++  java
  • 函数和带参的宏,从三个数中找出最大的数

    1041: C语言程序设计教程(第三版)课后习题9.8
    Time Limit: 1 Sec Memory Limit: 128 MB
    Submit: 5 Solved: 5
    [Submit][Status][Web Board]
    Description
    分别用函数和带参的宏,从三个数中找出最大的数。
    Input
    3个实数
    Output
    最大的数,输出两遍,先用函数,再用宏。 保留3位小数。
    Sample Input
    1 2 3
    Sample Output
    3.000
    3.000
    关于宏定义,形式和应用的网址:

    http://baike.baidu.com/view/2129127.htm?fr=aladdin

    #include<iostream>
    #include<stdio.h> 
    #define max(s,t,u) (s>=t)?((s>=u)?s:u):((t>=u)?t:u)
    using namespace std;
    double zuida(double a,double b,double c)
    {
        double max;
            if(a>b)
                max=a;
            else
                max=b;
            if(max<c)
                max=c;
            return max;
    }
    int main()
    {
        double a,b,c,d,e;
        while(scanf("%lf%lf%lf",&a,&b,&c)!=EOF)
        {
            d=zuida(a,b,c);
            printf("%.3lf
    ",d);
            e=max(a,b,c);
            printf("%.3lf
    ",e);
        }
        return 0;
    #include<iostream>
    #define  jiaohuan(a,b) {int t;t=a;a=b;b=t;} 
    using namespace std;
    void reverse(int a,int b)
    { 
      int t;t=a;a=b;b=t;
    }
    void change(int &a,int &b)
    {
     int t;t=a;a=b;b=t;
    }
    int main()
    {
        int x,y;
        cin>>x>>y;
        jiaohuan(x,y);//利用宏就可以直接x,y进行交换
        cout<<x<<" "<<y<<endl;
        reverse(x,y);//a,b交换,但对x,y没有影响
        cout<<x<<" "<<y<<endl;
        change(x,y);//引用别名,x,y交换
       cout<<x<<" "<<y<<endl;
        return 0;
    }

    输入样例:
    1 10
    输出
    10 1
    10 1
    1 10

  • 相关阅读:
    Java——数组
    Java——控制循环结构
    脏检查
    Session跟SessionFactory的线程安全与非安全
    脏检查and刷新机构
    oracle函数
    多线程下单列模式
    多线程
    线程同步
    文件上传功能的实现
  • 原文地址:https://www.cnblogs.com/NYNU-ACM/p/4236880.html
Copyright © 2011-2022 走看看