C语言高手快进!

以下程序输出的结果是()答案是28.70.但是我不知道怎么来的,老师讲的没听懂!main(){intx,t;for(i=1;i<=100;i++){x=i;if(++x%... 以下程序输出的结果是( )答案是28 .70 .但是我不知道怎么来的,老师讲的没听懂!
main( )
{ int x,t;
for (i=1;i<=100;i++)
{ x=i;
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
pprintf("%d",x);
}
printf("\n");
}
一楼的说的对,我老师就是这么说的,但是为什么呢?
展开
 我来答
百度网友e43033c
2011-04-07 · TA获得超过1130个赞
知道小有建树答主
回答量:933
采纳率:100%
帮助的人:941万
展开全部
此程序功能是找出1~100之间这样的整数:
假设这样的整数为k,则k满足如下条件:
1. k能被7整除;
2. k-1能被3整除;
3. k-2能被2整除。
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
对于这三条语句:
第一条,因为前面有x=i这样一句,而i从1开始,所以x从1开始,但是++在变量前时,是加了之后才做运算,所以其实第一次执行时,x是从2开始;
第二条,同理,在上次x的值的基础 上加1,再对3取余;
第三条,同理,在上次x的值的基础上加1,再对7取余;
要三条if语句同时成立才输出,所以输出的值是能被7整除的,而这个数在加1之前是能被3整除的,在两次加1之前是能被2整除的。
就是这样的 。
nehcam
2011-04-06 · TA获得超过221个赞
知道答主
回答量:139
采纳率:0%
帮助的人:133万
展开全部
当i满足 i+1是2的整数倍,并且i+2是3的整数倍,并且i+3是7的整数倍时,才会把i+3打印出来。
代码可以写成
{
x = i;
x++;
if(x%2 == 0){
x++;
if(x%3 == 0){
x++;
if(x%7 == 0){
printf("%d",x);
}
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-04-06
展开全部
输出能同时被2 3 7 整除的1到100 之间的数
% 就是取余的意思
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小七说LoRa
2011-04-06 · TA获得超过461个赞
知道小有建树答主
回答量:433
采纳率:0%
帮助的人:235万
展开全部
这是一个输出x-2能被2整除,x-1能被3整除,x能被7整除的数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
只由飞之冬
2011-04-06 · 超过18用户采纳过TA的回答
知道答主
回答量:82
采纳率:0%
帮助的人:33.5万
展开全部
这个程序是寻找1-100中一个数x,
如果x+1可以被2整除,x+2可以被3整除,x+3可以被7整除,这3个条件同时满足,就输出(x+3)的值,
其中
if(++x%2==0)//判断x+1是否被2整除,并将x值加1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3ad3936
2011-04-06 · 超过12用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:30.9万
展开全部
题目的意思:求出100以内的,满足:x能被2整除、x+1能被3整除、x+2能被7整除的x的值。
lz 要晓得:++x%2是先执行x+1后%2的。
可以手动求一下题目,就是计算结果28和70了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式