| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1089 人关注过本帖
标题:求助一道二级C语言的考题
只看楼主 加入收藏
防范
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2013-1-3
结帖率:50%
收藏
已结贴  问题点数:10 回复次数:10 
求助一道二级C语言的考题
#include <stdio.h>
int f(int x);
main()
{
int a,b=0;
for(a=0;a<3;a++)
{b=b+f(a);putchar("A"+b);}
}
int f(int x)
{return x*x+1;}
程序运行后的输出结果是:BDI
请详细的解析一下,我看不明白
搜索更多相关主题的帖子: include C语言 
2013-03-21 20:02
peach5460
Rank: 15Rank: 15Rank: 15Rank: 15Rank: 15
来 自:武汉
等 级:贵宾
威 望:30
帖 子:2780
专家分:6060
注 册:2008-1-28
收藏
得分:1 
a=0 f(0)=1 'A'+1='B'
a=1 f(0)=2 'A'+3='D'
a=2 f(0)=5 'A'+9='I'

我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-03-21 20:37
g270615179
Rank: 2
等 级:论坛游民
帖 子:32
专家分:63
注 册:2012-3-2
收藏
得分:1 
楼上正解。。。
2013-03-21 20:46
你不想去那儿
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:56
专家分:114
注 册:2012-9-21
收藏
得分:1 
楼主那个A应该是单引号吧!
2013-03-22 00:43
qwe885167759
Rank: 4
等 级:业余侠客
威 望:5
帖 子:148
专家分:259
注 册:2013-3-12
收藏
得分:1 
嗯。二楼正解

我本楚狂人,凤歌笑孔丘
2013-03-22 18:16
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2392
专家分:13384
注 册:2013-3-3
收藏
得分:1 
二楼正解

Maybe
2013-03-23 11:37
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:1 
程序代码:
#include <stdio.h>
int f(int x);//函数声明
main()
{
int a,b=0;
for(a=0;a<3;a++)//循环输出三个字符
{b=b+f(a);putchar('A'+b);}
}
int f(int x)//定义函数,作用就是返回一个a*a+1;
{return x*x+1;}
具体你可以debug分段调试一下嘛,那样就可以很清楚的看到具体是怎么来的

三十年河东,三十年河西,莫欺少年穷!
2013-03-23 11:57
奔跑的萝卜
Rank: 2
等 级:论坛游民
帖 子:43
专家分:55
注 册:2013-3-18
收藏
得分:1 
回复 2楼 peach5460
你好,我怎么算b第三次加的值是8呀?还有只打印了一个字符"A"为什么会同时显示3个字符?程序运行那么快应该只看到最后一个字母才对呀。我初学,不懂!请指教。
2013-03-23 22:45
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
回复 8楼 奔跑的萝卜
a=0  b=b+f(0)=0+1=1   输出B  
a=1  b=b+f(1)=1+2=3   输出D
a=2  b=b+f(2)=3+5=8   输出I
循环三次当然有三个输出,还有,什么程序运行那么快?你能看见,跟程序运行有啥关系?

[ 本帖最后由 韶志 于 2013-3-24 01:15 编辑 ]

三十年河东,三十年河西,莫欺少年穷!
2013-03-24 01:12
pengyancai
Rank: 2
等 级:论坛游民
帖 子:57
专家分:46
注 册:2013-3-4
收藏
得分:1 
同一楼二,就是三次循环,执行三次输出字符,另外putchar只能输出单个字符所以你的“A”应该是’A‘。
2013-03-24 08:52
快速回复:求助一道二级C语言的考题
数据加载中...
 
   



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

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