m0_68605299 2022-06-13 20:14 采纳率: 66.7%
浏览 71
已结题

我只会一种方法,求完整代码!希望方法尽可能多

请用多种方法定义一个函数,该函数的功能是:根据提供的两个原始整数,计算出二者的和以及乘积并返回。主函数中调用该函数,实现求两个整数的和与积。
请用尽可能多的方法进行函数的定义及在主函数中对应的调用,给出每种方法下的完整程序

  • 写回答

7条回答 默认 最新

  • 滴水不穿石 2022-06-13 21:36
    关注

    列举了三种比较常用方法,有注释说明。仅供参考!谢谢!

    img

    #include <stdio.h>
    
    //第一种方法用数组返回 数组的索引0是和
    //索引1是积
    int* add_mul1(int a, int b)
    {
        static int arr[2];
        arr[0]=a+b;
        arr[1]=a*b;
        return arr;
    }
    
    //第二种方法直接用参数指针的方式
    int add_mul2(int a,int b,int *sum,int *mul)
    {
        *sum=a+b;
        *mul=a*b;
        return 0;
    }
    
    //第三种返回结构体方式
    struct add_mul{
        int sum;
        int mul;
    }
    ;
    struct add_mul add_mul3(int a,int b)
    {
        struct add_mul addmul;
        addmul.sum=a+b;
        addmul.mul=a*b;
        return addmul;
    }
    
    int main(int argc, char** argv){
        int a=3;
        int b=20;
    
        //第一种引用方式
        int *sumandmul=add_mul1(a, b);
        printf("第一种:\n%d+%d=%d\n%dX%d=%d\n\n",a,b,sumandmul[0],a,b,sumandmul[1]);
     
       //第二种引用方式
        int sum,mul;
        add_mul2( a, b,&sum,&mul);
        printf("第二种:\n%d+%d=%d\n%dX%d=%d\n\n",a,b,sum,a,b,mul);
     
       //第三种引用方式
        struct add_mul add_mul;
        add_mul=add_mul3( a, b);
        printf("第三种:\n%d+%d=%d\n%dX%d=%d\n\n",a,b,add_mul.sum,a,b,add_mul.mul);
     
       return 0;
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

问题事件

  • 系统已结题 6月21日
  • 已采纳回答 6月13日
  • 创建了问题 6月13日

悬赏问题

  • ¥20 测距传感器数据手册i2c
  • ¥15 RPA正常跑,cmd输入cookies跑不出来
  • ¥15 求帮我调试一下freefem代码
  • ¥15 matlab代码解决,怎么运行
  • ¥15 R语言Rstudio突然无法启动
  • ¥15 关于#matlab#的问题:提取2个图像的变量作为另外一个图像像元的移动量,计算新的位置创建新的图像并提取第二个图像的变量到新的图像
  • ¥15 改算法,照着压缩包里边,参考其他代码封装的格式 写到main函数里
  • ¥15 用windows做服务的同志有吗
  • ¥60 求一个简单的网页(标签-安全|关键词-上传)
  • ¥35 lstm时间序列共享单车预测,loss值优化,参数优化算法