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 为什么。。 展开
func(int x)
{x=10;
printf(“%d,”,x);}
main()
{int x=20;
func(x);
printf(“%d”,x);
} 答案10 20 为什么。。 展开
展开全部
第一个是10是func里面输出的,在func里面x被重新赋值了x=10;
第二个20是main里面输出的,由于func的参数是传值的,所以虽然func里面修改了x的值,但是不会影响main里面的x的值。
参数修改成引用才会影响,这样就是输出两个10了。
第二个20是main里面输出的,由于func的参数是传值的,所以虽然func里面修改了x的值,但是不会影响main里面的x的值。
参数修改成引用才会影响,这样就是输出两个10了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2019-03-19
展开全部
func函数里面修改x数值为10,所以func里面显示10;
但是由于采用值传递(把x的值复制一份),所有func函数修改没有影响x的原始值,所以main里面输出20.
但是由于采用值传递(把x的值复制一份),所有func函数修改没有影响x的原始值,所以main里面输出20.
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
函数里面改变的和打印的只是参数值,x的原值并不会改变。
如果函数参数传递的是x的地址的话,则结果是10 10.
这一块是指针的内容,你之后会学到。
如果函数参数传递的是x的地址的话,则结果是10 10.
这一块是指针的内容,你之后会学到。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询