C语言程序的一个计算问题,不会啊,求大家把计算过程写下啊

[复制链接]
查看11 | 回复1 | 2009-2-5 19:44:30 | 显示全部楼层 |阅读模式
47.以下程序的输出结果是
f(int a )
{int b=0;
static int c=3;
a=c++,b++;
return(a);
}
main()
{ int a=2,i,k;
for(i=0;i<2;i++) k=f(a++);
printf(“%d\n”,k);
}
A.3 B.6 C.5 D.4
麻烦大家帮忙写个计算过程 3Q 拉 我算不出啊 谢谢了

回复

使用道具 举报

千问 | 2009-2-5 19:44:30 | 显示全部楼层
4; 当i=0时,先执行f(a=2),得到a=3,k=3;而后执行a++,a=4; 循环下一次,i=1,执行f(a=4),得到a=4(执行了C++后,c的值+1,返回a) k=返回值4你肯定是没搞清++a和a++的区别;通俗的说,++a是a+1的意思;而a++是先用a的值,而后才是a+1;就是前者先执行加法后再用a的值,后者先用a的值后再执行加法;...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行