c语言入门题

#include<stdio.h>func(intx){x=10;printf(“%d,”,x);}main(){intx=20;func(x);printf(“%d”,... #include<stdio.h>
func(int x)
{x=10;
printf(“%d,”,x);}
main()
{int x=20;
func(x);
printf(“%d”,x);
} 答案10 20 为什么。。
展开
 我来答
百度网友a45dec8
2019-03-19 · TA获得超过335个赞
知道小有建树答主
回答量:207
采纳率:80%
帮助的人:135万
展开全部
第一个是10是func里面输出的,在func里面x被重新赋值了x=10;
第二个20是main里面输出的,由于func的参数是传值的,所以虽然func里面修改了x的值,但是不会影响main里面的x的值。
参数修改成引用才会影响,这样就是输出两个10了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-03-19
展开全部
func函数里面修改x数值为10,所以func里面显示10;
但是由于采用值传递(把x的值复制一份),所有func函数修改没有影响x的原始值,所以main里面输出20.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3cffda32a1
2019-03-19 · TA获得超过2016个赞
知道大有可为答主
回答量:1860
采纳率:83%
帮助的人:1077万
展开全部
函数里面改变的和打印的只是参数值,x的原值并不会改变。
如果函数参数传递的是x的地址的话,则结果是10 10.
这一块是指针的内容,你之后会学到。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式