计算机等级C语言上机考试改错题分类总结

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算机等级C语言上机考试改错题分类总结改错题总的出错分为两大类:语法出错和逻辑出错,此类题目是比较简单的题型,因此也是最容易把握的知识点。

注意:错误都是出现在/**********found**********/下面的这一行。

只是下面的这一行,其他行都没有错误。不能修改其他行。

做题方法:

1.首先拿到题目,先将题目详细看看,看清题目对做题时很有帮助的,特别是一些逻辑性较强的题目很有用。有的同学可能会觉得题目太难了不想去读,其实在做改错题目时即便你不会也能把题目做对。

2.按照以下的步骤解决题目中的错误的内容,对应着修改。修改完之后保存即可。

1.关键字出错:

在二级C 语言考试中仅仅考查学生对基本的关键字掌握情况,比如:整型就是int 不是Int,知识点简单。

2.格式出错:

在考试中主要考查学生细心的程度,最喜欢考简单的知识点。

(1)少分号:考查的知识点:分号是语句结束的标志。

(2)for 语句的格式:for( ; ; )中间用分号隔开不是用逗号隔开。

(3)if 语句的格式:if(表达式),if 后面必须加上小括号。

(4)命令行格式出错:如include 命令少了#,正确的形式应该是#include “stdio.h”;

(5)常用函数格式:

A.函数名后面一定是花括号,不能是方括号,方括号只有在数组下标中用到。

B.要同时定义两种以上不同的数据类型的时候必须在不同类型的数据中间加上分号。

C.scanf(“%d”,a[i][j]);应该改为scanf(“%d”,&a[i][j])。考查scanf输入函数的格式。

(6)数组:

A.数组下标引用时候只能用反括号。

B.二维数组中的列下标不能省略。

(7)常用符号出错:

A.C 语言中大于等于符号是“>=”,但是在考试的时候可能出现将它写为“=>”

B.当题目中需要比较某个字符是否是大写字母或是小写字母、数字时,必须将“与”、“或”、

“非”记住。

判断某个字符是否是大写字母:char ch;if(ch>=’A’&&ch<=’Z’)printf(“%c”,ch);

判断某个字符是否是小写字母:char ch;if(ch>=’a’&&ch<=’z’) printf(“%c”,ch);

判断某个字符是否是数字:char ch;if(ch>=’0’&&ch<=’9’)printf(“%c”,ch);

判断某个数字是否能同时被5 和7 整除:

int i=35; if(i%5==0&&i%7==0)printf(“%d”,i);

判断某个数字是否能被5 或7 整除:

int i=35; if(i%5==0||i%7==0)printf(“%d”,i);

判断某个数字是否是偶数或奇数:

int i=35;

if(i%2==0) printf(“%d 是一个偶数”,i);

else printf(“%d 是一个奇数”,i);

1. 使用了没有定义过的变量:这种题目可以通过编译查找出出错的地方并改之。

(1)0(零)和o(字母欧)的区别:

(2)P(大)和p(小)的区别:

(3)普通变量大小写的区别:

A.有的变量在定义的时候是小写但是在使用的时候是大写,或是在定义的时候是大写在使用的时候却是小写。

B.大小写没有出错,程序中直接使用了没有定义过的变量,要求学生更加细心的读题目。

2.运算符号出错:

(1)C 语言中除号是“/”不是“\”

(2)赋值号(=)和等号(= =)混淆,记住在if 语句中出现赋值号(=)一般是讲它改为等号(= =)。

3.表达式的取值范围出错:

当遇到计算表达式的累加或是累减时,一定用到循环来完成相应的操作。例如:要求计算t=1-1/2*2-1/3*3-….-1/m*m 这个表达式,在这个题目中第一空有这样的for 语句:for(i=2;i

样的题目看两点:一看题目中的表达式,二看for 语句中变量的取值范围。

4.C 语言中的除法运算:

这个考点同样考查表达式的相关知识。例如:要求计算t=1-1/2*2-1/3*3-….-1/m*m 这个表达式,在这个题目中第一空有这样的for 语句:for(i=2;i

5.找最大值和排序问题:

遇到这种题目在改错题中最容易考查的是大于(>)、小于(<)等符号的变化,当你查找出错的地方没有语法错误,也没有使用了未定义的变量时,记住这个口诀:将大于改为小于,将小于改为大于!

6.函数的返回值及其参数:重点

int fun(int x,int y) main()

{ {

if(x>y) return x;

int a,b,c;

else return y;

scanf(“%d%d”,&a,&b);

} c=fun(a,b);

printf(“最大值为:%d”,c);

}

(1) 函数的返回类型:在上面的例子中fun 函数的返回值是int,如果将int 改为double,很明显是错误的。从两个地方来看,首先return x;中x 的类型必须和fun 函数中的返回值相同,x 是整型。其次c=fun(a,b);中fun 函数将一个返回值赋值给了变量C,说明函数返回的值一定是整型。记住:函数调用、函数的返回值和ruturn 中数据类型必须一致!

(2) return 后面的表达式及其类型:

(3) 函数传递的参数:

int fun(int *x,int *y) main()

相关文档
最新文档