C语言(急!!!!!!!)

main(){intk=5;reset(k/2);printf("1.%d\n",k);reset(k=k/2);printf("2.%d\n",k);k=reset(k... main()
{int k=5;reset(k/2);printf("1.%d\n",k);
reset(k=k/2);printf("2.%d\n",k);
k=reset(k/2);printf("3.%d\n",k);}
int reset(int k)
{k=k<=2?0:5;return k;}
这个的答案是 1.5 2.2 3.0 为什么??????
展开
 我来答
luzhiwei512
2010-06-14 · TA获得超过386个赞
知道小有建树答主
回答量:407
采纳率:0%
帮助的人:353万
展开全部
int k=5;reset(k/2);printf("1.%d\n",k); k是main的局部变量k=5
reset(k=k/2);printf("2.%d\n",k); k=k/2 k/2赋值给k在作为参数 k=5/2=2(整数)
k=reset(k/2);printf("3.%d\n",k);k等于函数返回值
{k=k<=2?0:5;return k;}条件表达式先2<=2 ?:真的话取冒号左边k=0
奥夫洛斯基
2010-06-14 · TA获得超过136个赞
知道小有建树答主
回答量:295
采纳率:0%
帮助的人:177万
展开全部
#include <stdio.h>
int reset(int k)
{
k=k<=2?0:5;
return k;
}
int main( )
{ //1.5 2.2 3.0
int k=5;
reset(k/2);//k值未被改变,为5
printf("1.%d\n",k);

reset(k=k/2);// k/2=2.5 取整为2
printf("2.%d\n",k);

k=reset(k/2);//形参为2 函数返回值为0,并赋值给k
printf("3.%d\n",k);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
一变班爱麻啊堡0J
高粉答主

2020-01-13 · 醉心答题,欢迎关注
知道答主
回答量:11.4万
采纳率:2%
帮助的人:5508万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式