金子涵778 2023-04-10 22:53 采纳率: 90%
浏览 14
已结题

一个函数返回值的问题

代码:有一个4*4的矩阵,设计函数计算矩阵主对角元素之和,将和存放在数组第一个元素,返回主函数之后输出这个和


#include <stdio.h>
#include <stdlib.h>
void ArraySum(int nArray[][4],int n)
{
    int i,sum =0;
    for(i=0;i<=n;i++)
        sum +=nArray[i][i];
    nArray[0][0]=sum;
}
main()
{
    int nArray[][4]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
    ArraySum(nArray,4);
    printf("%d",nArray[0][0]);
}

问题:我想知道这个主函数是没有返回值的,是个void,函数运行结束里面的值全部消失,请问这个函数是如何做到返回和的

  • 写回答

2条回答 默认 最新

  • hello_world&& 2023-04-10 23:06
    关注

    数组作为函数参数是对原数组进行操作,函数最后把sum赋给了narry[0][0],修改了原始值。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月18日
  • 已采纳回答 4月10日
  • 创建了问题 4月10日

悬赏问题

  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目
  • ¥20 mysql架构,按照姓名分表
  • ¥15 MATLAB实现区间[a,b]上的Gauss-Legendre积分
  • ¥15 delphi webbrowser组件网页下拉菜单自动选择问题
  • ¥15 linux驱动,linux应用,多线程