else printf("no");
}
题目问程序运行后的输出结果,答案应是yes。因为“if (c=a+b) printf ("yes\n");”中的条件“c=a+b”是一个赋值语句,c的值为a+b=1+3=4,所以条件为真。而许多考生却把赋值语句“c=a+b”理解为关系表达式“c==a+b”即5=1+3为逻辑假,故答no。
2.答案表述不准确,会做的题却不得分或少得分。
如第12题:
main( )
{int i,n[ ]={0,0,0,0,0};
for(i=1;i<=4;i++)
{n[i]=n[i-1]2+1;
printf("%d ",n[i]);
}
}问程序运行后的输出结果是____。答案是“1 3 7 15”许多考生虽然写对了但却在每个数字后加了标点而不得分如“1,3,7,15”或“1. 3. 7. 15”。
又如第19题:
以下程序的功能是将字符串s中的数字字符放入d数组中,最后输出d中的字符串;例如,输入字符串:abc123edf456gh,执行后输出:123456。请填空:
#include
#include
main( )
{char s[80], d[80]; int i, j;
gets(s);
for(i=j=0;s[i]!=’\0’ ;i++)
if( ) {d[j]=s[i];j++}
d[j]=’\0’ ;
puts(d);
}
答案应是s[i]<=’9’&&&&s[i]>=’0’或s[i]<=48&&&&s[i]>=57而许多考生却把“>=”,“<=”写成“≥”,“≤”导致不能得分。
3.注意答题卡的号码并不是试题卷上的题号,而是填空的顺序号。许多考生答题时将答案张冠李戴,位置写错,白白丢了分。
总之,只要考生能准确理解基本知识点,善于动手动脑多练习,举一反三,触类旁通,就能从中找出规律性的东西,轻松通过笔试。