LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: philix

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

[复制链接]
 楼主| 发表于 2006-1-11 01:19:47 | 显示全部楼层
Post by firstddf
printf("\n %d \n",x-->(y+x)?5:25>y++?'1':'2')

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

BC不知是怎么算的:ask


firstddf在windows下用borland算出来是5
我在linux下用gcc算出来是49
可以在图上看出来

Post by diony
看不到\216出现应该是字体问题吧。这个题确实变态,莫非要把ASCII码表也背下来么……

我在linux下不进X就可以看到\216显示为一个乱码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-11 01:29:56 | 显示全部楼层
看来这个问题,我只能说答案是5了,因为出题人多数用TC2.0/3.0

我又从同学那里拿回几个题,大家讨论一下:
1.
int x=5,y;
y=--x+--x/2;

问:之后x,y各为多少?

2.
a=1,b=2,c=3,d=4,则表达式 a++<b?a:c<d?--a:--d 的结果为?

3.
printf("%d\n",strlen("abc\n\x124\0xb\\"));

结果为?
回复 支持 反对

使用道具 举报

发表于 2006-1-11 05:54:30 | 显示全部楼层
Post by philix

        printf("\n %d \n",x-->(y+x)?5:25>y++?'1':'2');/*问输出的结果是什么?*/


只能感叹国内大学老师的变态. 程序写出来是用的, 是给别人看的, 而不是耍小聪明的. 出的题学生做不出来, 他才满足.
用好括号和注释, 没有难懂的代码.
而且那个家伙(原谅我不礼貌)显然没有注意到不同编译器解释代码的差异.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-1-11 07:42:44 | 显示全部楼层
Post by biinn
只能感叹国内大学老师的变态. 程序写出来是用的, 是给别人看的, 而不是耍小聪明的. 出的题学生做不出来, 他才满足.
用好括号和注释, 没有难懂的代码.
而且那个家伙(原谅我不礼貌)显然没有注意到不同编译器解释代码的差异.

我也感觉很变态,但中国的文化常常教我们这样想:
"虽然他很变态,但高手肯定是能做出来的,起码可以给出'正确答案',"
我们还是先把这几个问题弄出来吧
回复 支持 反对

使用道具 举报

发表于 2006-1-11 17:29:04 | 显示全部楼层
挂个号吧,看到这种题就好烦,根本不考什么有用的。:comp
回复 支持 反对

使用道具 举报

发表于 2006-1-11 17:58:49 | 显示全部楼层
“回字有四样写法,你知道么?”
回复 支持 反对

使用道具 举报

发表于 2006-2-23 23:21:28 | 显示全部楼层
猜测能得分的答案为
abcd
------
abc
<-查你们用的教科书上的ASCII码表,216对应的字符添到这里
<-字符2对应的ASCII码数值。

对于出题的老师,我就不评论了。反正他没做过软件就是了。
回复 支持 反对

使用道具 举报

发表于 2006-2-23 23:23:56 | 显示全部楼层
ASCII码只严格规定了0-127所代表的字符(最早的ASCII是7bit的)。216根据OS的locale的设置不同而不同。
回复 支持 反对

使用道具 举报

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

本版积分规则

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