新教学课件00计算机二级考试 国二 考前冲刺上机

上传人:我*** 文档编号:136719278 上传时间:2020-07-01 格式:PPT 页数:75 大小:1.30MB
返回 下载 相关 举报
新教学课件00计算机二级考试 国二 考前冲刺上机_第1页
第1页 / 共75页
新教学课件00计算机二级考试 国二 考前冲刺上机_第2页
第2页 / 共75页
新教学课件00计算机二级考试 国二 考前冲刺上机_第3页
第3页 / 共75页
新教学课件00计算机二级考试 国二 考前冲刺上机_第4页
第4页 / 共75页
新教学课件00计算机二级考试 国二 考前冲刺上机_第5页
第5页 / 共75页
点击查看更多>>
资源描述

《新教学课件00计算机二级考试 国二 考前冲刺上机》由会员分享,可在线阅读,更多相关《新教学课件00计算机二级考试 国二 考前冲刺上机(75页珍藏版)》请在金锄头文库上搜索。

1、二级C上机考前冲刺,辽宁科技大学 黄建 mtysoft,二级C考试包括笔试和上机两部分。只有一门合格的,下次考试合格的一门可以免考,两部分考试均合格者,由教育部颁发合格证书。 笔试:每年两次,四月的第一个星期六和九月倒数第二个星期六。 上机:从笔试当天下午开始,考点根据考生数量和设备情况安排。 2009年笔试时间为:3月28日和9月19日。,0.1 考试时间,机考形式: 90分钟,满分100分。 填空,30分,3个空,程序名:Modi1.c; 改错,30分,23个错,程序名:Blank1.c; 编程,40分,1个编程,程序名:Prog1.c。 考纲要求: 熟悉VC+ 6.0集成环境,掌握程序设

2、计中简单的数据结构和算法;能够编写简单的C程序,并具有基本的纠错和调试程序的能力。,0.2 考试内容,二级C上机题型分类,30分,30分,40分,1.1 填空题注意事项,仔细阅读题目要求和功能,尤其是题目给出的输入和输出示例,以便检验填空后程序运行结果是否正确。 在VC+ 6.0环境下调出源程序,读懂程序代码,根据“ (数字) ”出现的位置和题目要求填写空白内容。 在答题过程中,只能在有数字标号的空缺处填写,不要改动程序行的顺序和其余的非空缺行的代码。,1.2 填空题解题步骤,按F7键编译源程序,若发现有语法错误,重新检查或调整答题思路。 按Ctrl+F5执行程序,按照试题示例中给出的数据进行

3、测试,如果结果与给出的输出结果相同,该题就完成了;如果测试的结果与给出的结果不同,就需要进一步检查程序的逻辑错误。 最后得到正确结果后,一定保存程序,否则不得分。,2.1 改错题注意事项,上机改错的试题中通常包含23个错误需要修改。试题中用*found*/来提示在下一行(或第二行)有错。错误的性质基本分语法错误和逻辑错误两种,也有些试题要求把语句添加在下划线处。 注意:只能在出错的行上进行修改,不要改动程序行的顺序,更不要自己另编程序。一般来说,改动的地方很小,切忌打破原程序结构,特别不要增删语句(题目中明确指出要增删语句的除外)。,2.2 改错题解题步骤2-1,仔细审题,了解试题要求,看清试

4、题给出的输入输出示例,以便检验程序运行结果。 在VC+ 6.0下调出源程序,审视/*found*/所在函数,理解程序所采用的基本算法。 先按F7键,检查程序是否有语法错误,参考编译提示查找并改正错误。 当无语法错误时,按Ctrl+F5执行,按照试题给出的数据测试,若输出结果相同,该题就做对了;若结果不同,应进一步检查逻辑错误。,2.2 改错题解题步骤2-2,当程序存在逻辑错误时,应当理解题意、读懂程序的算法,必要时可按步检查数据的流程。 例如,题目要求按由小到大排序,而结果是按由大到小排序,问题可能出现在条件判断上。又如,输出的字符串比预期的短,就有可能字符串的结束标志放错了位置。 再如,做循

5、环的时候,数组上限下限错误了,下标是从0开始,而不是从1开始。 得到正确结果后,修改后的程序一定要存盘。,2.3 改错题常见错误4-1,标识符拼写错误,小写写成了大写 如:I = 0,应改为i = 0 运算符书写错误 如:a = 10,应改为a /= 10 a = b / 10,应改为a = b % 10 a = b,应改为a += b if (a = b),应改为if (a = b) if(a0 | b0),应改为if(a0 ,应改为switch (a) int f(int n);,应改为int f(int n) for (i = 1; i y) 变量1=变量2,如:p = q,应改为q =

6、 p 交换两个变量的值,如:t=x, y=x, y=t,应改为t=x, x=y, y=t,2.3 改错题常见错误4-4,函数类型或形参类型说明错误 int f(int a),应改为double f(int a) 实参是地址(数组名),形参应是指针或数组名 int f(int p),应改为int f(int *p)或者改为int f(int p ); 其他错误 如:a = c - o,应改为a = c - 0 scanf(%f,i),应改为scanf(%d,,应改为case 0:,3.0 编程题分类,整数分离与合并,3.1 整数分离与合并2-1,将两个两位的正整数a、b合并形成一个整数放在c中:

7、将a的十位和个位数放在c的千位和十位,b的十位和个位数放在c的百位和个位。 例如:若a = 45, b = 12,使c = 4152。 void fun(int a, int b, int *c) *c = a/10*1000+b/10*100+a%10*10+b%10; main() int c; fun(45, 12, ,3.1 整数分离与合并2-2,请编写函数unsigned fun(unsigned w),w是一个大于10的无符号整数,求出w后n-1位的数作为函数值返回。 unsigned fun(unsigned w) unsigned t = w, m = 1; while (t)

8、 t /= 10, m *= 10; return w % (m / 10); ,四舍五入,3.2 四舍五入,请编写函数double fun(double h),函数的功能是:对变量h中的值保留2位小数,并对第3位进行四舍五入(规定h中的值为正数)。 double fun(double h) /方法一 return (int)(h * 100 + 0.5) / 100.0; double fun(double h) /方法二 return (int)(h * 1000 + 5)/10/100.0; ,数学公式求值,3.3 数学公式求值3-1,编写函数求Fibonacci数列中大于t的最小的一个

9、数,结果由函数返回。其中数列f(n)的定义为:f(0)=0,f(1)=1, f(n)=f(n-1)+f(n-2) int fun(int t) int a = 0, b = 1, c = 0; while (c = e) s += v; v *= n/(2*n+1); n+; return s * 2; ,3.3 数学公式求值3-3,求方程cos(x)-x=0的一个实根。步骤:x1初值0.0;x0=x1;x1=cos(x0);若x0-x1的绝对值小于0.000001,执行步骤5,否则执行步骤2;x1就是实根,作为函数值返回。 double fun() double x1 = 0.0, x0;

10、do x0 = x1; x1 = cos(x0); while (fabs(x0-x1) = 1e-6); return x1; ,求极值和平均值,3.4 求极值和平均值2-1,编写函数求出s数组t个元素中最大元素在数组中的下标,并存放在k所指的存储单元中。 void fun(int *s, int t, int *k) int i, m = 0; for (i = 1; i sm) m = i; *k = m; ,3.4 求极值和平均值2-2,请编写函数fun,它的功能是:计算a数组中n门课程的平均分,计算结果作为函数值返回。 double fun(int *a, int n) int i;

11、 double s = 0; for (i = 0; i n; i+) s += ai; return s / n; ,矩阵问题,3.5 矩阵问题2-1,编写函数fun,求NN的二维数组周边元素的平均值并作为函数值返回给主函数。 double fun(int aNN) int i, k; double s = 0; for (i = 0; i N; i+) for (k = 0; k N; k+) if (i=0|k=0|i=N-1|k=N-1) s += aik; return s / (4*N-4); ,3.5 矩阵问题2-2,矩阵转置,如:输入10 20 30 输出10 40 70 (即

12、行列互换) 40 50 60 20 50 80 70 80 90 30 60 90 void fun(int aNN) int i, k, t; for (i = 0; i N; i+) for (k = 0; k i; k+) t = aik; aik = aki; aki = t; ,整除和素数问题,3.6 整除和素数问题4-1,请编写函数fun,它的功能是:求n以内(不包括n)同时能被3与7整除的所有自然数之和的平方根,并作为函数值返回。 double fun(int n) int i; double s = 0; for (i = 1; i n; i+) if (i % 3 = 0 ,

13、3.6 整除和素数问题4-2,请编写函数fun,它的功能是:求出1到m之内(含m)能被7或11整除的所有整数放在数组a中,通过函数返回这些数的个数。 int fun(int *a, int m) int i, j = 0; for (i = 1; i = m; i+) if (i % 7 = 0 | i % 11 = 0) aj+ = i; return j; ,3.6 整除和素数问题4-3,编写函数求出小于或等于lim的所有素数并放在a数组中,该函数返回所求的素数的个数。 int fun(int lim, int aMAX) int i, k, j = 0; for (i = 2; i =

14、lim; i+) for (k = 2; k i; k+) if (i % k = 0) break; if (k = i) aj+ = i; return j; ,3.6 整除和素数问题4-4,编写函数,将大于整数m且紧靠m的n个素数存入x所指的数组中。 void fun(int m, int n, int x ) int i, k, j = 0; for (i = m + 1; j n; i+) for (k = 2; k i; k+) if (i % k = 0) break; if (k = i) xj+ = i; ,回文数,3.7 回文数,判断字符串是否为回文数。若是则函数返回1,否

15、则返回0。回文是指顺读和倒读都是一样的字符串。 int fun(char *a) int i, t = 1, m = strlen(a); for (i = 0; i m / 2; i+) if (ai != am-i-1) t = 0; break; return t; ,移动数组元素,3.8 移动数组元素2-1,一维数组中有n个整数,把下标从0到p(p小于等于n1)的数组元素平移到数组的最后。 void fun(int a , int p, int n) int i, k, t; for (k = 1; k = p; k+) t = a0; for (i = 1; i n; i+) ai-1 = ai; an-1 = t; ,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号