有关c语言二级考试的答题规范问题!!!学霸大神们帮帮忙!

为什么填空题和改错题只要和答案不一样就算错??!!。这如何能保证一模一样呢,比如有一步骤,我填的i=10*i,标准答案是i=i*10,结果评分系统算我错,程序运行没有任何... 为什么填空题和改错题只要和答案不一样就算错??!!。这如何能保证一模一样呢,比如有一步骤,我填的i=10*i,标准答案是i=i*10,结果评分系统算我错,程序运行没有任何问题,然后比如改错题
原来是for(i=1;i<N;i++),标准答案改为小于等于,我把1改为了0,这道题里,i唯一的作用就是运算次数的,对最终输出没有任何影响,结果评分系统又算我错,醉了啊!!!,这程序运行没问题,还能不给分,这是多蛋疼的事情啊,泪奔。。。。。。。
展开
 我来答
被诅咒的驭灵者
2015-02-17 · 超过21用户采纳过TA的回答
知道答主
回答量:39
采纳率:0%
帮助的人:21.6万
展开全部

看你的描述我也觉得蛋疼。。。不是你的错。。。系统有问题。。。

关于第一个:

i=i*10;
i=10*i;

两个在本质上是没有区别的,但是要知道运算符有缩写形式,也就是

i*=10;

等价于

i=i*10;

我也不知道算不算规范,但是因为这个缩写形式的存在,一般我们都把被省略的变量写在前面,然后如果是负数的话一般把数字写前面:

i=-10*i;

虽然我也不知道为什么大家都这样写。。。大概是习惯之类。。。Orz

关于这个顺序问题,我觉得你搞清楚所有操作符的优先级之后应该就没有什么问题了,正常人写程序的时候因为不清楚优先级会用很多多余的括号,但是考题的答案里是肯定没有多余括号的。

然后第二个:

正常情况下,初始化语句不应该动,因为虽然这个题里改了0是对的,但万一循环里面用到了变量i一改就错了。。。

碰到循环语句改错,优先改符号,然后才是数字什么的。另外for循环里的第三个语句一般写成后缀式,也就是第一个:

i++;    //后缀式
++i;    //前缀式

虽然两个的效果是一样的。。。


我的对策是。。遇到这种评分系统错误。。就把答案给背下来吧。。虽然比较脑残。。。Orz

追问
恩,也对,就把答案背下来吧,无奈了。。。。刚才又碰见一个恶心的答案,答案是
a[n-i-1],我写的是a[n-1-i],然后评分算我不对,我猜测是把字母写在数字前面,可能就是答案所谓的标准吧。。。。。。
追答
话说模拟的评分系统跟真正考试的评分系统不一样,如果是真正考试的话,像这样交换位置导致答案不同也会判对的。。。当然保险起见还是跟标准答案一样吧。。。Orz。。。
宿啥品8397
2015-02-17 · TA获得超过4528个赞
知道大有可为答主
回答量:3273
采纳率:60%
帮助的人:1782万
展开全部
这是多蛋疼的事情啊,泪奔。。。。。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式