标题:C语言教材中的未解之谜,当你还是菜鸟的时候你也看不懂。哪位大神帮忙解答下 ...
只看楼主
simonye28
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-5-6
结帖率:0
已结贴  问题点数:20 回复次数:8 
C语言教材中的未解之谜,当你还是菜鸟的时候你也看不懂。哪位大神帮忙解答下??关于赋值运算。
教材23面  数据输出3.2
#include<stdio.h>
main()
{int i=2518
 double a=3.1415
 printf(“i=%d,a=%f,a*10=%e\n",i,a,a*10)
}
 疑问1   输出结果为什么 a=3.141500  为什么不是 a=3.1415   
 疑问2   第三个 赋值运算 a*10 ????这个是不是错误 左边应该只能是变量
 疑问3  a*10=3.141500e+01  这个又是为什么????

教科书中的菜鸟未解之谜???????
搜索更多相关主题的帖子: 疑问 教材 教科书 C语言 
2012-05-06 15:28
Wikyo_hoho
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:31
专家分:188
注 册:2012-3-12
得分:3 
疑问1 因为%f默认输出小数点后六位,如果你想输出3.1415  改成%.4f
疑问2 谁说只能是变量? 你可以试试直接是常量来试试,这是一个表达式,表达式当参数,其值传入参数
疑问3 %e 的输出方式就是科学计数法输出
一般教材中都会由讲的,你再仔细看看书
2012-05-06 17:39
S_Ringo
Rank: 4
来 自:歌舞伎町
等 级:业余侠客
帖 子:94
专家分:230
注 册:2012-4-15
得分:3 
呵呵……
LS没理解LZ的意思,他说的是“”里面的a*10,不是后面的参数列表……
在printf函数里,“”里面的除了格式符由参数列表中的参数代替之外,其他的都是原样输出的……那个=左边的a*10什么也不是,只是一个字符串而已……&
2012-05-07 16:57
zhangqi_gsts
Rank: 6Rank: 6
来 自:甘肃天水
等 级:侠之大者
威 望:1
帖 子:227
专家分:457
注 册:2011-3-27
得分:3 
看书要紧。。。
2012-05-08 17:25
liuxingar
Rank: 2
等 级:论坛游民
帖 子:22
专家分:43
注 册:2011-4-1
得分:3 
表示这些都是书上最最基本的知识,还是建议先把书认真看看吧
2012-05-10 08:44
hunanlzg
Rank: 2
等 级:论坛游民
帖 子:11
专家分:43
注 册:2012-3-17
得分:3 
LZ去考国2吧  考了那个这些就会懂的
2012-05-11 12:59
xiao熊
Rank: 1
等 级:新手上路
帖 子:1
专家分:2
注 册:2012-4-12
得分:3 
我是来学习的
2012-05-11 13:31
原味_郭
Rank: 1
等 级:新手上路
帖 子:1
专家分:2
注 册:2012-5-11
得分:3 
基础知识要扎实
2012-05-11 19:30
a745043791
Rank: 4
等 级:业余侠客
帖 子:95
专家分:260
注 册:2012-2-12
得分:3 
2楼第2个问题答错了,printf函数“”里面的被看作字符串输出,输出a*10=e%的时候不会执行赋值运算。要分清楚了。
2012-05-11 19:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-367062-1-1.html




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

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