请教printf("*s=90-6s*","china");的结果为什么是*s= china*

JonathanCC 2001-10-24 07:00:29
急,这是一道考试题,我是新手求教
...全文
138 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
kingofark 2001-10-25
  • 打赏
  • 举报
回复
这个问题我看得都晕了。 谁来叫醒我。
xxb_xxb 2001-10-25
  • 打赏
  • 举报
回复
kao
fanqing 2001-10-24
  • 打赏
  • 举报
回复
这题是写错了。老师讲过。printf("*s=90%6s*", "china");
yug 2001-10-24
  • 打赏
  • 举报
回复
呵呵!
肯定是有人把“%”看成“90”了,写出来挺象的!
wt007 2001-10-24
  • 打赏
  • 举报
回复
研究成果:
90- means %-
then the result is :
*s=90china_*
wt007 2001-10-24
  • 打赏
  • 举报
回复
sorry:
the output is :
*s=90_china*
('_'表示空格)

printf("*s=90%8s*", "china");

output:
*s=90___china*
wt007 2001-10-24
  • 打赏
  • 举报
回复
printf("*s=90%6s*", "china");

output:
*s=90 china*
JonathanCC 2001-10-24
  • 打赏
  • 举报
回复
我刚才试了一下,结果是*s=90-6s*,书上不知是怎么编的,还是电子工业出版社出的呢,
编委是资深专家、教授组成的,原题是笔试题,这样的:

语句printf("*s=90-6s*","china");的输出结果是:____。(注:用_表示空格符。)


人家都专门说明了答案中有空格,难道会错了不成?
heimeng 2001-10-24
  • 打赏
  • 举报
回复
印错了
JonathanCC 2001-10-24
  • 打赏
  • 举报
回复
我用的是TC2.0
karma 2001-10-24
  • 打赏
  • 举报
回复
using VC++6.0, the output is "*s=90-6s*"

what kind of c/c++ compiler are you using? if it is home-made, it can output anything, :-)

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧