楼主:
luke72 (ccc)
2016-07-13 14:30:57※ 引述《ssac (吼..)》之铭言:
: 不好意思因为是不同小题 就分开贴了 不是为了赚P币~XD
: 题目 int main(){
: int a=1,b=2,c=3,d=4;
: prinf("%d %d %d %d ", a+b+c+d , (b*=a) , (a+=d),(d++));
: }
: 补习班的答案
: 10 2 5 4
: 使用gcc的结果
: 26 12 6 4
: 这部份也是觉得推算起来很鬼异~
: 毕竟d++的生效要是下一行 才有反应~?
: 这只是compiler的不同吗?
先说我没有考国考 只是个手痒的小RD
case 1:
OS: amazon linux kernel: 3.14.20-20.44.amzn1.x86_64
gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC)
result:
[ec2-user@ip-xxxxxxxx ~]$ gcc test.c -o test
[ec2-user@ip-xxxxxxxx ~]$ ./test
26
12
6
4
case 2:
OS: linux Mint 17.2 kernel: GNU/Linux 3.16.0-38-generic x86_64
gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.3)
result:
luke-PC ~ # gcc test.c -o test
luke-PC ~ # ./test
26
12
6
4
result2:
luke-PC ~ # g++ test.c -o testcplus
luke-PC ~ # ./testcplus
26
12
6
4
case 3:
OS: OS X EI Capitan 10.11.4
Apple LLVM version 7.3.0 (clang-703.0.29) (Xcode 7.3)
tomootekiMacBook-Pro:~ Luke$ gcc test.c -o test
test.c:6:45: warning: unsequenced modification and access to 'b' [-Wunsequenced]
printf( "%d\n%d\n%d\n%d\n", a+b+c+d, (b *= a), (a += d), (d++));
~ ^
test.c:6:55: warning: unsequenced modification and access to 'a' [-Wunsequenced]
printf( "%d\n%d\n%d\n%d\n", a+b+c+d, (b *= a), (a += d), (d++));
~ ^
test.c:6:64: warning: unsequenced modification and access to 'd' [-Wunsequenced]
printf( "%d\n%d\n%d\n%d\n", a+b+c+d, (b *= a), (a += d), (d++));
~ ^
3 warnings generated.
tomootekiMacBook-Pro:~ Luke$ ./test
10
2
5
4
心得是
考试院别闹了,程式语言钻这些跟八股文有什么两样
这种考试只考得出补习能力,哪有程式设计能力?
作者: fatty3321 2016-07-15 21:24:00
角色不同,公职的资讯人员跟一般科技业性质本就差很多这题要马送分不马都对,毕竟他case3就是左到右压把编译器考虑进去太难了,每个习惯用的都马不同