| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 687 人关注过本帖
标题:刚学c程序,请教一下
只看楼主 加入收藏
安静cc
Rank: 1
来 自:洛阳
等 级:新手上路
帖 子:2
专家分:0
注 册:2011-7-27
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
刚学c程序,请教一下
以下程序段的输出结果是_________。
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
}
printf("%d\n",s);
A)9 B)1 C)11 D)10

以下程序段的输出是_________。
int i,j,m=0;
for(i=1;i<=15;i+=4)
for(j=3;j<=19;j+=4)m++;
printf("%d\n",m);
A)12 B)15 C)20 D)25



for语句程序究竟该怎样读呢?
搜索更多相关主题的帖子: c程序 
2011-07-27 13:31
吴辉
Rank: 3Rank: 3
来 自:湖南
等 级:论坛游侠
帖 子:52
专家分:199
注 册:2011-3-27
收藏
得分:2 
像这样的题不知道就上机运行一下吧...
for语句这样执行:先执行第一个表达式,再执行第二个表达式,第二个表达式为假,不执行循环语句;第二个表达式为真,执行循环语句,循环一次后执行第三个表达式,然后再执行第二个表达式,为真,执行循环语句;为假,结束循环。
这些书上都有...
2011-07-27 17:19
_改变自己_
Rank: 2
等 级:论坛游民
帖 子:21
专家分:39
注 册:2011-7-26
收藏
得分:2 
1)D;
2)C;
2011-07-28 00:22
为我留住记忆
Rank: 4
来 自:北京
等 级:业余侠客
帖 子:130
专家分:226
注 册:2011-4-30
收藏
得分:2 


这是在要答案。。。。还是。。。。

学习c是为了自己更强大。。。
2011-07-28 09:24
hy247767221
Rank: 2
来 自:襄樊
等 级:论坛游民
帖 子:41
专家分:22
注 册:2011-7-27
收藏
得分:2 
for(k=2;k<6;k++,k++)
{
    s=1;
    for(j=k;j<6;j++)
        s+=j;
}
printf("%d\n",s);
A)9 B)1 C)11 D)10

相当于转圈for(k=2;k<6;k++,k++)执行里面的语句,然后进去s=1;再执行for(j=k;j<6;j++)里面的语句,再s+=j;然后返回第一层循环,在下去,依次执行,直至循环条件结束为止
2011-07-28 10:45
风生钧起
Rank: 4
来 自:江西
等 级:业余侠客
帖 子:383
专家分:246
注 册:2011-7-26
收藏
得分:2 
举个例子吧  for语句 语法
估计楼主对for语句循环不太懂 要答案估计也不会来论坛。
for (1, 2, 3)
    {A语句;
   for(4, 5, 6)
    B语句;}
按照程序是先从上到下运行→到for这 先执行1→在2→在A语句→执行4 4完了5→5成立→执行B→B完了 6→在5 →5(成立继续单个for循环
                                                                                                                    如5不成立→执行3
依次类推 先理解单个for循环
新手 多多指教

墨一世红颜倾醉己    霁天谁与话风流

修仙``````````````````````````````````````````````
2011-07-29 08:18
myh2006
Rank: 1
等 级:新手上路
帖 子:5
专家分:4
注 册:2011-7-30
收藏
得分:2 
像一楼说的那样,上机运行一下不就知道了,如果真要分析就按for循环语句的要求一次次运算,都是体力活。

2011-07-30 10:13
守望之殇
Rank: 1
来 自:福建福州
等 级:新手上路
帖 子:43
专家分:9
注 册:2010-12-2
收藏
得分:2 
第一题:
int k,j,s;
for(k=2;k<6;k++,k++)
{
s=1;
for(j=k;j<6;j++)s+=j;
}
printf("%d\n",s);
A)9 B)1 C)11 D)10

我觉得刚开始学习就得慢慢分析了,自己先分析,再上机运行检查
这是一个循环的嵌套,内层循环
for(j=k;j<6;j++)s+=j;
就等价于s=s+j+(j+1)+(j+2)+...+5,j可以看作是一个常量,由k给它赋值
从外循环开始执行:
当k=2时,内循环,s=1+2+3+4+5=15;
当k=4时,内循环,注意
s=1;
,s=1+4+5=10;
当k=6时,不满足循环条件,不执行内循环,所以就输出s的值为10了。
第二题:
int i,j,m=0;
for(i=1;i<=15;i+=4)
for(j=3;j<=19;j+=4)m++;
printf("%d\n",m);
A)12 B)15 C)20 D)25

也是循环的嵌套。
先看当i=1时内循环m值得变化,j的值由3变为7,11,15,19;所以m的值由0变为1,2,3,4,5,可以发现m的值增加了5;
再分析i=5时,m值得变化规律跟变量i没有关系,所以m的值由5变为10;
以此类推
最后一次循环时,m的值为20

博观而约取
2011-07-30 11:05
hjywyj
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:1114
专家分:2611
注 册:2010-4-14
收藏
得分:2 
D
C
2011-07-30 11:26
樱花雾海
Rank: 2
来 自:广西桂林
等 级:论坛游民
帖 子:39
专家分:28
注 册:2011-6-17
收藏
得分:2 
第一段是嵌套的for语句,第二段直接按照顺序执行
2011-07-30 14:58
快速回复:刚学c程序,请教一下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016906 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved