- 7
- 0
- 约5.75千字
- 约 14页
- 2021-03-17 发布于山东
- 举报
上机编程题答题技巧
上机编程题的特点和说明
一、在二级 C 程序设计上机考试中,要求完成一个独立的函数的编程。 目前教育部考试中心已出版了上机考试习题集,这些有助于学习编程,但考生应当在学习过程中理解基本的算法,通过实际上机操作积累经验,才能掌握基本的编程能力。
二、进行编程测试时,建议按以下步骤进行
1.首先仔细审题,了解试题的要求,记下试题给出的输入和输出例示, 以便检验在完成指定的函数后程序运行的结果是否正确。
2.当在 Visual C++6.0 环境下调出源程序后,应对照
函数首部的形参,审视主函数中调用函数时的实参内容,以
便明确在函数中需要处理的数据对象。
3.理解试题的要求,审视主函数中调用函数的方式,
若在表达式中调用函数 ( 如把函数值赋给某个对象 ) ,则要求
有函数值返回,需注意函数的类型,并在函数中用 return
语句返回函数值;若主函数中仅用语句形式调用函数,则需
要通过形参间接地返回所得结果。
4.选择适当的算法进行编程,输入程序语句。不要忘
记及时存盘!
5.编译程序,直到没有语法错误。
6.调试程序,利用试题中给出的例示数据进行输入 ( 若
要求输入的话 ) ,运行程序,用例示的输出数据检验输出结果,直到结果相同。
三、编程时常出现的错误
书写标识符时,忽略了大小写字母的区别。
main()
{
int a=5;
printf(%d,A);
}
编译程序把 a 和 A 认为是两个不同的变量名, 而显示出
错信息。 C 认为大写字母和小写字母是两个不同的字符。习
惯上,符号常量名用大写,变量名用小写表示,以增加可读
性。
忽略了变量的类型,进行了不合法的运算。
main()
{
float a,b;
printf(%d,a%b);
}
%是求余运算,得到 a/b 的整余数。整型变量 a 和 b 可
以进行求余运算,而实型变量则不允许进行“求余”运算。
将字符常量与字符串常量混淆。
char c;
c=a;
在这里就混淆了字符常量与字符串常量, 字符常量是由一对单引号括起来的单个字符, 字符串常量是一对双引号括起来的字符序列。 C 规定以“ ”作字符串结束标志,它是由系统自动加上的,所以字符串
“ a”实际上包含两个字符:‘ a 和‘ \ ,而把它赋给一个字符变量是不行的。
忽略了“ =”与“ ==”的区别。
在许多高级语言中,用“ =”符号作为关系运算符“等
于”。如在 BASIC程序中可以写
if (a=3) then ,
C 语言中,“ =”是赋值运算符,“ ==”是关系运算符。如:
if (a==3) a=b;
前者是进行比较, a 是否和 3 相等,后者表示如果 a 和
3 相等,把 b 值赋给 a。由于习惯问题,初学者往往会犯这
样的错误。
忘记加分号。
分号是 C 语句中不可缺少的一部分, 语句末尾必须有分
号。
a=1
b=2
编译时,编译程序在“ a=1”后面没发现分号,就把下
一行“ b=2”也作为上一行语句的一部分,这就会出现语法
错误。改错时,有时在被指出有错的一行中未发现错误,就
需要看一下上一行是否漏掉了分号。
{ z=x y;
t=z/100;
printf(%f,t);}
对于复合语句来说, 最后一个语句中最后的分号不能忽
略不写。
多加分号。
对于一个复合语句,如:
{ z=x y;
t=z/100;
printf(%f,t);
};
复合语句的花括号后不应再加分号,否则将会画蛇添
足。
又如:
if (a%3==0);
I ;
本是如果 3 整除 a,则 I 加 1。但由于 if (a%3==0) 后多加了分号,则 if 语句到此结束,程序将执行 I 语句,不论 3 是否整除 a, I 都将自动加 1。
再如:
for (I=0;I5;I );
{scanf(%d,x);
printf(%d,x);}
本意是先后输入 5 个数,每输入一个数后再将它输出。
由于 for() 后多加了一个分号,使循环体变为空语句,此时
只能输入一个数并输出它。
7. 输入变量时忘记加地址运算符“ ”。
int a,b;
scanf(%d%d,a,b);
这是不合法的。 Scanf 函数的作用是: 按照 a、b 在内存的地址将 a、b 的值存进去。“ a”指 a 在内存中的地址。
输入数据的方式与要求不符。
scanf(%d%d,a,b);
输入时,不能用逗号作两个数据间的分隔符,如下面输
入不合法:
3,4
输入数据时,在两个数据之间以一个或多个空格间隔,
也可用回车键,跳格键 tab 。
scanf(%d,%d,a,b);
规定:如果在“格式控制”字符串中除了格式说明以外还有其它字符, 则在输入数据时应输入与这些字符相同的字符。下面输入是合法的:
3,4
此时不用
原创力文档

文档评论(0)