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");
}
一楼的说的对,我老师就是这么说的,但是为什么呢? 展开
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");
}
一楼的说的对,我老师就是这么说的,但是为什么呢? 展开
6个回答
展开全部
此程序功能是找出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整除的。
就是这样的 。
假设这样的整数为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整除的。
就是这样的 。
展开全部
当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);
}
}
}
}
代码可以写成
{
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 之间的数
% 就是取余的意思
% 就是取余的意思
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这是一个输出x-2能被2整除,x-1能被3整除,x能被7整除的数
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个程序是寻找1-100中一个数x,
如果x+1可以被2整除,x+2可以被3整除,x+3可以被7整除,这3个条件同时满足,就输出(x+3)的值,
其中
if(++x%2==0)//判断x+1是否被2整除,并将x值加1
如果x+1可以被2整除,x+2可以被3整除,x+3可以被7整除,这3个条件同时满足,就输出(x+3)的值,
其中
if(++x%2==0)//判断x+1是否被2整除,并将x值加1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
题目的意思:求出100以内的,满足:x能被2整除、x+1能被3整除、x+2能被7整除的x的值。
lz 要晓得:++x%2是先执行x+1后%2的。
可以手动求一下题目,就是计算结果28和70了
lz 要晓得:++x%2是先执行x+1后%2的。
可以手动求一下题目,就是计算结果28和70了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询