永发信息网

C语言习题摘不明白。希望给出祥细解答: 以下程序的输出结果是() A 39 81 B 42 84 C 26 68 D 28 70

答案:6  悬赏:30  手机版
解决时间 2021-02-01 15:19
  • 提问者网友:情歌越听越心酸
  • 2021-01-31 15:03
main()
{ int x,i;
for(i=1;i<=100;i++)
{ x=i;
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
printf("%d ",x);
}
printf("\n");
}
最佳答案
  • 五星知识达人网友:痴妹与他
  • 2021-01-31 16:19
if(++x%2==0)的意思是x的值先+1,然后判断x是否能整出2
所以
x=i;
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
printf("%d ",x);
就表示x的初值是i,要是x+1是偶数并且x+2是3的倍数并且x+3是7的倍数的话,那么就输出x的值
注意2点,这里首先3个if是递进关系,所以输出的x值要同时满足3个if,另外,x的值是经过3次++以后的值
所以这个程序可以另外理解为1到100的整数中,当这个整数+1是偶数,这个整数+2是3的倍数,这个整数+3是7的倍数的话,就输出这个整数+3以后的值。
因为7的倍数的数最少,是 7,14,21,28,35,42,49,56,63,70,77,84,91,98
所以输出的数只可能是上面的数字值(也就是7的倍数),那么排除法就可以知道答案是D了
全部回答
  • 1楼网友:白昼之月
  • 2021-01-31 19:56
我认为答案是D x是7的倍数 ,x-1是3的倍数 x-2是2倍数
  • 2楼网友:轻雾山林
  • 2021-01-31 19:36
你好! d 首先直接看最后能被七整除肯定输出后是7的倍数 只有b和d了 再看减掉1后能被三整除只有d了 如有疑问,请追问。
  • 3楼网友:毛毛
  • 2021-01-31 18:42
程序是求出 1-100之间 能被2,3,7 整除的数~ 综合结果选B :42 84
  • 4楼网友:何以畏孤独
  • 2021-01-31 18:26
42 84 求100以内能被2,3,7整除的数
  • 5楼网友:痴妹与他
  • 2021-01-31 16:48
选择D 当i=26时 26整除2 判断通过后加一变成27整除3 通过判断再加一整除7 80同理
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯