wx718644872 2022-12-17 21:16 采纳率: 66.7%
浏览 54
已结题

C++ C语言 解答一下!

1.在main()中定义一个变量x,键盘输入值,
用传值方式调用函数fun1(),修改形参的值为原来值的平方,返回主程序,输出x
用传址方式调用函数fun2(),同样修改为原来值的平方,返回主程序,输出x。
2. 在main()中定义一个数组aa[9],并初始化,使用传址的方法调用函数func,在func用两个指针接收数组的第一个和最后一个元素地址,实现数组逆置,在主程序main()中输出该数组!
提示:数组长度没有传值,可用用两个指针的差来确定。

  • 写回答

1条回答 默认 最新

  • 滴水不穿石 2022-12-18 16:29
    关注

    img

    
    #include <stdio.h>
    
    void fun(int *x1, int *x2)
    {
        int tmp;
        int n = (x2 - x1 + 1) / 2;
        for (int i = 0; i < n; i++)
        {
            tmp = *x1;
            *x1 = *x2;
            *x2 = tmp;
            x2--;
            x1++;
        }
    }
    
    int fun1(int x)
    {
        x *= x;
        return x;
    }
    
    void fun2(int *x)
    {
        *x *= *x;
    }
    
    int main()
    {
        int x, aa[9];
        scanf("%d", &x);
        fun1(x);
        printf("\n传值调用后:%d\n\n", x);
    
        fun2(&x);
        printf("传址调用后:%d\n\n", x);
    
        for (int i = 0; i < 9; i++)
        {
            aa[i] = i + 1;
            printf("%d ", aa[i]);
        }
    
        fun(&aa[0], &aa[8]);
        puts("");
        for (int i = 0; i < 9; i++)
        {
            printf("%d ", aa[i]);
        }
    
        puts("");
    
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月28日
  • 已采纳回答 12月20日
  • 创建了问题 12月17日

悬赏问题

  • ¥15 利用pthon计算薄膜结构的光导纳
  • ¥15 海康hlss视频流怎么播放
  • ¥15 Paddleocr:out of memory error on GPU
  • ¥30 51单片机C语言数码管驱动单片机为AT89C52
  • ¥100 只改动本课件的 cal_portfolio_weight_series(decision_date), 跑完本课件。设计一个信息比率尽量高的策略。
  • ¥20 如何在visual studio 2022中添加ImageMagick库
  • ¥50 如何实现uniapp编译的微信小程序做可回溯视频
  • ¥15 求Houdini使用行家,付费。价格面议。
  • ¥15 前端高拍仪调用问题报错
  • ¥15 想用octave解决这个数学问题