#include〈stdio .h〉
Void fun (int*x,int*y)
﹛printf (“%d%d”,*x,*y);
*x=3,*y=4; ﹜
Void main()
﹛ int x=1,y=2,
Fun( &y,&x)
Printf(“%d%d”,x,y);
﹜运行结果 2143
和读程序,写出运行结果:
Void main()
{
Int x=8; for(x>0;x--);
{if (x%3)
{printf (“%d”,x--);
Continue;}
Printf (“%d”,--x);}
}
运行结果: 8,5,4,2
我实在没有弄懂这两道题
恳请各位高手出手相助,非常感谢!!
Void fun (int*x,int*y)
﹛printf (“%d%d”,*x,*y);
*x=3,*y=4; ﹜
Void main()
﹛ int x=1,y=2,
Fun( &y,&x)
Printf(“%d%d”,x,y);
﹜运行结果 2143
和读程序,写出运行结果:
Void main()
{
Int x=8; for(x>0;x--);
{if (x%3)
{printf (“%d”,x--);
Continue;}
Printf (“%d”,--x);}
}
运行结果: 8,5,4,2
我实在没有弄懂这两道题
恳请各位高手出手相助,非常感谢!!
这是一个很简单的运算程序
第1个:
首先x=1,y=2
调用fun方法传值(2,1)
所以输出的结果也就是21
在fun这个方法里吧*x,*y的指针地址变了
因为*x*y是指针
所以输出的结果是43C++我不是太熟悉,不知道说的对不对下面那个
是X%3取余然后输出
下面那个有点不明白...见谅
printf (“%d%d”,*x,*y);其中*x=y,*y=x 所以结果是2 1;printf 之后*x=3,*y=4就给y和x(注意)重新赋值了,所以main中
的Printf(“%d%d”,x,y)是输出改编后的x和y,结果是 x=4,y=3第二题应该是有语法错误,for(x>0;x--);后应该没有“;”,首先x=8,x%3!=0,所以执行if,x--表示x先减一,
再打印x,所以打印8,此时x=7,遇到contine,转到for循环,x--,此时x=6符合x>0;然后(x=6)%3==0,所以不执行if,执行之后的printf,打印--x,--x等价于先打印x,再减一,所以结果为5,此时x=5; 之后转到for,x再减一,(x=4)>0;之后if成立,先打印x=4,然后x=x-1,此时x=3,continue再转到for,x--之后x=2>0;if又成立,再打印x=2,之后x=x-1,此时x=1,continue到for,x--之后x=0,for循环结束ok啦
第一个题3楼的可能说的也差不多吧!
而第二个
Void main()
{
Int x=8;
for(x>0;x--);
{
if (x%3)
{
printf (“%d”,x--);
Continue;
}
Printf (“%d”,--x);
}
}
这是一个For循环,当第一次执行时X=8,判断X>0?是! 然后执行IF语句8%3!=0为真,则输出8(注:此时X变成了7),
遇到continue则结束本次循环进行下次循环。执行for语句 X--;此时X==6;然后进行第二次循环。而6%3==0为假执行
Printf (“%d”,--x); 而--X先执行--,再输出X,此时X==5;下次循环和这两次循环差不多你自己应该可以做出来了。