这个结果是什么,为什么?

若执行下面的程序时,从键盘上输入5和2,则输出结果是______。

main( )

{

int a,b,k;

scanf("%d,%d",&a,&b) ;

k=a;

if(a<b) k=a%b;

else k=b%a;

printf("%d\n",k);

}

应该输出2,因为a>b,运行else里面的k=b%a;b=2,a=5,结果是k=2;

得出的是a,b中较小的值,如果a<b 输出a%b,否则输出b%a,

例如a=8 b=20执行8%20=0余8  输出8

例如a=5 b=2执行2%5=0余2  输出2

 

从键盘上输入5和2,则输出结果是  2

如有帮助请在我的回答上点个【采纳】

 

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632