首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • C语言的题目,来做做看 [已结贴,结贴人:alen88]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 20:37:30 楼主
    #include <stdio.h>
    int main()
    {
            int i=43;
            printf("%d\n",printf("%d",printf("%d",i)));
            return 0;
    }

    输出是多少?
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 20:42:431楼 得分:0
    2吧..
    printf返回的好像是输出字符的个数...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 20:49:342楼 得分:1
    4321
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 20:52:123楼 得分:10
    4321
    printf("%d\n",printf("%d",printf("%d",i)));
    第一个printf打印1
    第二个printf打印2
    第三个printf打印43

    从内层打印 出来就是4321

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 20:52:184楼 得分:0
    显然是输出三个数
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 20:57:075楼 得分:5
    printf()的返回值是打印的字符数
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 21:05:166楼 得分:10
    fisrt: 43
    second: 2
    last:1

    so result is : 4321

    the fuction "printf" will return the number of characters printed, or a negative value if an error occurs
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • eyf0917
    • 等级:
    发表于:2008-03-29 21:05:427楼 得分:10
    打印出来的是:4321
    最内层的printf()打印一个43,然后到了第二层时,printf("%d",43);此时打印的是:2 这是因为43共有占二个字符,所以输出:2
    最外层的循环;和第二层是一样的道理,占一个字符,所以打印:1,所以这个函数的输出为:4321!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 21:28:578楼 得分:0
    输出的是:4321
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 21:49:189楼 得分:0
    请教,为什么printf("%d", 43);却还是输出43?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 21:50:4810楼 得分:0
    我是说只使用单个printf的时候.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • chlaws
    • 等级:
    发表于:2008-03-29 22:55:5911楼 得分:0
    4321
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 22:59:1612楼 得分:0
    输入43
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • chlaws
    • 等级:
    发表于:2008-03-29 22:59:4513楼 得分:10
    从内层往外层看

    最内层的printf输出43
    中间输出 2 //43是两个数,printf返回元素个数 2
    最外层输出 1 //原因同上

    根据vc输出规则,输出是4321
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • leeyiqun
    • 等级:
    发表于:2008-03-29 23:38:5814楼 得分:10
    第一个printf(最右边)打印43后,返回值为2,然后第二个printf(中间)打印了2,返回值为1,第三个(最左边)打印了1,
    结果就为 4321 了。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-29 23:53:1515楼 得分:2
    嗯,4321,楼上的说得挺清楚的。

    按顺序从内到外计算就对了。

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 00:11:3116楼 得分:0
    学习了,谢谢
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 00:12:1517楼 得分:0
    蛮有意思的
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • cnzdgs
    • 等级:
    发表于:2008-03-30 01:05:4318楼 得分:5
    4321换行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 03:33:5519楼 得分:0
    支持楼上
    4321换行
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 03:50:3520楼 得分:0
    我答错了。。。。。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 04:12:0121楼 得分:0
    mark累死了灌水
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 06:03:5122楼 得分:0
    学习
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 08:23:1123楼 得分:2
    C/C++ code
    #include <stdio.h> int main() { int i=43; printf("%d\n",printf("%d",printf("%d",i))); return 0; } //输出是多少? //学习了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 08:45:0024楼 得分:0
    4321
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dizuo
    • 等级:
    发表于:2008-03-30 08:47:3525楼 得分:0
    4321
    try it
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 08:51:5026楼 得分:0
    4321
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 09:03:2727楼 得分:0
    交流群 C++ java 36414176
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 09:36:4128楼 得分:0
    学习了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 09:36:5129楼 得分:0
    应该是4321吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 09:55:1030楼 得分:0
    出错吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 09:56:1231楼 得分:0
    学习!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 10:02:5432楼 得分:1
    43,2,1
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 10:46:1133楼 得分:0
    确实还没想过这些东东  挺有意思的
    长见识了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 10:50:3834楼 得分:0
    mark。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 10:51:1935楼 得分:0
    UP 学习中......
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-03-30 10:54:2336楼 得分:0
    哈哈,才知道原来printf返回的是输出数经格式化后的字符个数.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • fetag
    • 等级:
    发表于:2008-03-30 10:56:0337楼 得分:0
    一群没事闲的呆子...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天