LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1929|回复: 17

help!!,问一个以c语言的考研题

[复制链接]
发表于 2006-1-10 16:35:28 | 显示全部楼层 |阅读模式
非计算机专业的题,有人问我,我一时回答不了,上机后也不能解释,请大哥们帮忙看一下

#include<stdio.h>
int main(){
        char str[]="abcd\061efg";
        int x=1,y=0;
        printf("%s",str);/*问输出的结果是什么?*/
        printf("\n------\n");
        printf("abc\n\216\0\n\\");/*问输出的结果是什么?*/
        printf("\n %d \n",x-->(y+x)?5:25>y++?'1':'2');/*问输出的结果是什么?*/
        return 0;       
}



马上就要考了,我现在还给不了(女)同学答案,着急

请先写出结果,再上机试试
说的详细些,thanks
发表于 2006-1-10 16:43:03 | 显示全部楼层
[color="Red"]*问输入的结果是什么?*/
是问输出结果吧
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-10 16:48:05 | 显示全部楼层
Post by firstddf
[color="Red"]*问输入的结果是什么?*/
是问输出结果吧

sorry,一着急就写错了
回复 支持 反对

使用道具 举报

发表于 2006-1-10 17:07:53 | 显示全部楼层
abcd1efg
------
abc

49
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-10 17:20:29 | 显示全部楼层
Post by shannleon
abcd1efg
------
abc

49


我也运行出来了,可是

\216 怎么解?

printf 参数传递顺序如何?
回复 支持 反对

使用道具 举报

发表于 2006-1-10 17:30:26 | 显示全部楼层
这是我机子上运行的结果

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-10 17:34:26 | 显示全部楼层
Post by firstddf
这是我机子上运行的结果


看来\216也是显示出来了
谢谢各位

我是在archlinux下做的,没有看到\216的出现

还有一个疑点:
我记得从前一个文章上说过,printf的参数传递顺序和其它函数是相反的
那么,其顺序道底如何?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

发表于 2006-1-10 18:04:30 | 显示全部楼层
printf("\n %d \n",x-->(y+x)?5:25>y++?'1':'2')

实际上最后就是printf("\n %d \n",'1')
应该是49

BC不知是怎么算的:ask
回复 支持 反对

使用道具 举报

发表于 2006-1-10 20:45:49 | 显示全部楼层
Post by philix
我也运行出来了,可是

\216 怎么解?

printf 参数传递顺序如何?

这题太BT了,没有ASII码表可以查,有多少人能记得\216是什么?
回复 支持 反对

使用道具 举报

发表于 2006-1-10 22:24:55 | 显示全部楼层
看不到\216出现应该是字体问题吧。这个题确实变态,莫非要把ASCII码表也背下来么……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表