
其实这主要考察的就是自增自减的引用问题,还有就是在while()循环里实现的y++和++y
需要注意的就是:
1:y--,先引用y,再将y减一,在最后的printf()里面就是这样,其实输出的时候y并没有减一
2:--y,先减一,在引用,这就和我们平时想的一样了
3:while()循环,只有当条件为真时,执行循环体
没有给你一步步推导,记住注意的这几点,应该就能自己推出来了o(∩_∩)o
验证示例:
#include<stdioh>
int main()
{
int y=10;
do
y--;
while(--y);
printf("%d\n",y--);
}
希望可以帮你
本程序输出的结果是:a = ‘A’, b = 'b'。
也就是说实参b的值加了1,而a的值则没变,为什么呢?
首先,我们说一下b的值为什么会加1:在函数fun中的第一个形参是一个指针变量,fun(&b,a);中&b的意思是取b的地址,而c在这里其实就是b的值,这里的c = c+1;是对b的值直接进行 *** 作的,因此,b的值会变。
而a的值不变,是因为在C语言中,实参向形参的数据传递方向是单向传递,也就是说,只由实参传给形参,而不能由形参传回给实参。除非我们加个返回值,如
int fun(char c, int d) //带返回值得函数{
c = c+1;
d = d + 1;
return d; //将加1后的d值返回
}
void main()
{
char a='A',b='a';
a = fun(&b,a); //将返回的值赋给a
printf("%c,%c\n",a,b);
}
这个程序关系到C语言的两个内容,1、指针 2、函数的参数和函数的值 ,建议找一本C语言程序设计的书阅读这两个章节,一切都迎刃而解。
首先看一下主程序,
我们先取a变量的地址,送入子程序。
然后输出的时候是++*x
其中的*x的意思是:25
也就是a的值,然后加++嘛,就是26了。
最后,输出26。
以上就是关于执行下列程序段后,输出结果是_________。全部的内容,包括:执行下列程序段后,输出结果是_________。、下列程序的输出结果是( )。、下列程序的输出结果是等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)