一道C语言printf的经典题目

阅读 3.7k
2 个回答

答案是 43 2 1
解释:printf("%d", i)有返回值,返回输出的个数
上面代码可以转换为:

int i = 43;
a = printf("%d", i) # output: 43
b = printf("%d", a) # output: 2
printf("%d", b) # output: 1

答案是4321
是一种printf函数的递归调用,我们首先应该明白 printf函数的返回值是打印的字符数

从最后一个printf开始输出,输出43,并且返回字符数2
于是倒数第二个printf输出2,并且返回字符数1
第一个printf输出1

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题