若有定义和语句:double x=34213.6894; printf("*%8.2e*\n", x); 则下列说法真确的是:
A. 输出值为*3.42e+04* B. 输出值为*3.42e+004*
C. 输出值为*34.21e+04* D. 输出格式符宽域不够,不能输出值
我跑出来是A啊
给定的变量 x=34213.6894,以科学计数法表示为 3.42e+04。
x=34213.6894
3.42e+04
根据格式化输出控制符 %8.2e,总共输出8个字符,包括小数点和指数部分,小数点后保留两位。
%8.2e
因此,正确的输出应该是:
B. 输出值为3.42e+004
这个题的答案咋来的捏
快乐小土狗 回复 fzh: 在C语言中,printf函数用于格式化输出,其中"%8.2e"是一个格式说明符,用于输出浮点数。"8"表示输出的宽度,"2"表示小数点后的位数,"e"表示用科学计数法输出。
3.42e+04和3.42e+004什么区别?
快乐小土狗 回复 victor_yan: +04和+004具体的输出格式可能会因不同的编译器和平台而有所差异
victor_yan 回复 快乐小土狗: 那这道题是A,B都可以吗
快乐小土狗 回复 victor_yan: 可以这么说,正式考试的时候会避免出现这种问题可以把其中一个改为有明显错误的选项来避免,如*3.4e+04*
A
答案是a
答案错了,上机现在是答案A
快乐小土狗 回复 zibingo: 上机是B
B
用户登录可进行刷题及查看答案
登录后提交答案