请问这个输出是怎么理解的!

清涧煎饼 2011-10-14 09:30:37
printf( i%8?" %d\t":"%d\n",i);
谢谢各位了
...全文
88 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
深度抽象 2011-10-14
  • 打赏
  • 举报
回复
相当于if(i%8)printf("%d\n",i);printf("%d\n",i);

赵4老师 2011-10-14
  • 打赏
  • 举报
回复
等价于
if (0==i%8) printf("%d\n",i);
else printf(" %d\t",i);
AnYidan 2011-10-14
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 myit616003563 的回复:]
printf( i%8?" %d\t":"%d\n",i);
三目运算,如果i是8的倍数,用"%d\n"这个方式输出,否则的话用" %d\t"方式输出!!
[/Quote]
++
SuperFC 2011-10-14
  • 打赏
  • 举报
回复
soga
acdbxzyw 2011-10-14
  • 打赏
  • 举报
回复
printf( ( (i%8) ? (" %d\t") : ("%d\n") ), i);  
赵坤 2011-10-14
  • 打赏
  • 举报
回复
有问题,也就是i%8的值如果为0的话,用"%d\n"这个方式输出,否则的话用" %d\t"方式输出!!
赵坤 2011-10-14
  • 打赏
  • 举报
回复
printf( i%8?" %d\t":"%d\n",i);
三目运算,如果i是8的倍数,用"%d\n"这个方式输出,否则的话用" %d\t"方式输出!!
wocaniyan 2011-10-14
  • 打赏
  • 举报
回复
楼上都对,%差点把我迷惑了……

69,368

社区成员

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

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