中易网

c语言,调用函数,局部变量。。

答案:2  悬赏:70  
解决时间 2021-01-30 16:32
#include
int fun(int score[],int m,int below[])
{
float sum=0.0,meanvalue;
int i,j;
for(i=0;i {
sum=sum+score[i];
}
meanvalue=sum/m;
for(i=0,j=0;i if(score[i] {
below[j]=score[i];
j++;
}
return j;
}
void main()
{
int i,n,below[9];
int score[9]={10,20,30,40,50,60,70,80,90};
n=fun(score,9,below);
printf("\nbelow the average are:");
for(i=0;i printf("%4d",below[i]);
}
主函数中below数组是如何得到数据的,并以此说明局部变量的值是否绝对不会被其它函数所改变?
最佳答案
局部变量的值是否绝对不会被其它函数所改变?
这里局部变量的值是不会被函数改变的。
但是这里的below数组为什么会被修改了呢?
因为int fun(int score[],int m,int below[])将below数组的首地址传递进去了。
函数没有修改below的值,只是修改了below所指的地址后面的那一块内存。
只是传进去了数组的地址。
全部回答
void main() { int a[1024]={0.0};//在栈里 processing(); //processing()中的int b[1024]被回收了,因为int b没有在作用域中具有生命周期了 } //程序在此运行结束,int a[1024]={0.0};也被回收 void processing(void) { int b[1024]={0.0};//也在栈里 }
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
江干区采荷街道荷花塘弄今年会拆迁吗
你们相信“报应”吗?
穿山镇有申通快递没有
建筑工程一级土是什么
西安到南阳的大巴车电话,我想从半路坐车
如何找二手车源?
无人机的核心,飞控硬件到底都有啥
上两季我是歌手胡彦斌有参加过吗
大学被室友孤立 我们寝室一共四个人,为方便
为什么宋代宫殿比前世后世都小
qq三国 余毒怎样可以25级再最短时间升到45?
pc光晕2神风历史怎样隐形
修一条长900米的公路第一天修了全长的3分之1,
求“玉簟秋礼盒”时装外观,好看吗
霸王乌黑固发
推荐资讯
剑三捏脸大神们都是在哪捏的脸带各场景图的那
空调不制冷反而制热什么毛病
火车快开了,没装满,怎么办
颇颇的意思是什么
无缝内衣机上的ktf多少钱?
中国银行杭州余杭瓶窑支行地址在什么地方,想
比格犬离家出走自己还能回来吗
东湖社保局的问题
英语信封为暑假做准备作文
中商大厦停车场(澄海三路8号中商大厦停车场)
纵横时空罗汉加点
了解一下现货原油开一个户需要多少钱?
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?