帮忙回答下3个语言的题目吧

[复制链接]
查看11 | 回复1 | 2010-11-3 19:19:30 | 显示全部楼层 |阅读模式
第一题:
inta=1,b=10;
do
{b -=a;a++;}
while(b- -3;j--)
{if(j%3)j--;
--j;--j;
printf("%d",j);
}
求最后输出的结果是( )。
第三题:
main()
{intx,i;
for(i=1,i<=50,i++)
{x=i;
if(++x%2==0)
if(x%3==0)
if(x%7==0)
printf("%d",i);
}
}
则输出结果是()。
以上3题请给出答案,并解释下,
在下感激不尽。
回答完再给出相应的积分

回复

使用道具 举报

千问 | 2010-11-3 19:19:30 | 显示全部楼层
1. 输出为:8先执行do中的部分,之后b=9然后执行while的循环条件部分,之后b=8 不满足循环条件,故退出循环2.输出为11.for循环中j的值是逐渐减少的2.在j=4的时候满足循环条件,但不满足if条件故只执行两个--j 最后再执行一下for循环中的j--(for循环中的最后一部分是在依次循环结束的时候才执行)3.输出为 41根据第一个条件知道 可以输出的这个x 是个偶数,并且比i大1,根据后两个if条件知道x是3,7的倍数,综上知x是2,3,7的倍数,而且小于50 故只有42 所以i 为41 做这几道题的关键是弄清楚if和while模块的范围,跟执行条件。if和while如果后面有{}的话,那么他们的范围
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行