一个专科的 C 语言期末考试题,我居然不知道咋做。

2017-07-03 17:08:40 +08:00
 coderluan

https://ws2.sinaimg.cn/large/006Svwogly1fh6t12pt42j30ti0sfq4v.jpg

原谅我标题党,朋友发的,出题者口口声声说这是书上找的,肯定不会错,专科生中能干好这一行的也是不容易。

5357 次点击
所在节点    问与答
58 条回复
lany
2017-07-03 17:17:10 +08:00
瞎了我的眼
jinhan13789991
2017-07-03 17:24:08 +08:00
没毛病啊,专科的教材都是 2005 年左右的。有些错误页很正常嘛
ThatIsFine
2017-07-03 17:24:19 +08:00
一个艹字头飞向太空
mscb
2017-07-03 17:26:34 +08:00
真的难吗?不会吧。除了那个从控制台输入的那个函数需要学生默写出来以外,其他的空好像不难填呀?其他 V 友怎么看
notes
2017-07-03 17:26:58 +08:00
scanf("%d", a[i]) fun(a) max=a[i]
notes
2017-07-03 17:27:28 +08:00
哪有错吗?
llb123
2017-07-03 17:31:57 +08:00
同没看出错误在哪,楼上各位大佬点拨一下?
hx1997
2017-07-03 17:36:34 +08:00
除了 &a[i] 之外,不就是 5L 的答案吗。。。有什么难的??
jarlyyn
2017-07-03 17:40:52 +08:00
问题在哪?
coderluan
2017-07-03 17:45:36 +08:00
@mscb #4
@notes #5
@llb123 #7
@hx1997 #8
@jarlyyn #9

难道 10 几年前这么写是对的?现在编译器都编译不过的。

不是逻辑问题,是函数声明的写法,去掉逻辑,题目是:

int main(void) {int fun(int);}
int fun(int a[5]){}

这代码当年是规范的?我年纪小别吓我。
xdeng
2017-07-03 17:46:16 +08:00
第四行是什么鬼?
zqqian
2017-07-03 17:46:41 +08:00
这个题很简单啊。。、

没看出来哪里有问题
coderluan
2017-07-03 17:47:58 +08:00
@zqqian #12 看 10 楼
zqqian
2017-07-03 17:48:23 +08:00
@coderluan
这个在 C89 标准下是没有问题的吧。。
你用 VC6.0 编译一下试试
xdeng
2017-07-03 17:49:30 +08:00
函数声明可以写在函数里?参数也不对吧?
liuhaotian
2017-07-03 17:53:59 +08:00
除了 int fun(int); 应该改成 int fun(int*); 或者 int fun(int []); 或者 int fun(int [5]); 以外,好像没啥坑点吧...?
xrui
2017-07-03 17:54:20 +08:00
谭浩强那本书里就是这么写的。
hx1997
2017-07-03 17:55:26 +08:00
@coderluan main() 那个是 K&R C 的写法,现在是不规范的。int 和 int[5] 类型都不一样,不知道算不算编译错误,回去试试。
coderluan
2017-07-03 17:56:01 +08:00
@zqqian #14 你确定,我没 vc6,拿 gcc 设置 std 是 c89 肯定是过不去的。
hx1997
2017-07-03 17:57:04 +08:00
@coderluan 说真的现在的考题都是抄来抄去,有这种错误很正常的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/372721

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX