本章学习指导
1.课前思考
(1)C语言和C++语言有什么区别和联系?
(2)什么是程序?什么是程序设计?
(3)常用的算法描述方法有哪些?
(4)C程序的函数体由哪两部分组成?
(5)调试一个C程序要经过哪几个步骤?
2.本章难点
(1)在Turbo C 2.0中,使用标准输入/输出函数时最好在程序开始加上如下语句行
#include <stdio.h>
使编译器在编译阶段就能定位程序中的错误。
(2)C程序中最常用的预处理指令有两个。例如
#include<stdio.h> #define PI 3.1415926
它们是在编译前自动执行的。
(3)算法描述是编写代码前的必要步骤,它有助于理清思路,减少编程中的错误。
(4)在C程序中,说明语句(例如,变量的定义)要放在执行语句之前。
(5)每一个C程序都是从main()函数开始执行的,左花括号表示main()函数体的开始,与其对应的右括号表示main()函数体的结束。
(6)程序的编译错有两类:Warning(警告错误)和 Error(致命错误)。Error 错必须修改,否则不能形成obj文件。Warning错要根据具体情况分析,有的Warning错不影响程序运行结果,例如定义了一个程序中没有使用的变量;而有的Warning错要影响程序的运行结果,例如变量没有赋值就参加运算。
3.本章编程中容易出现的错误
(1)main()函数名写错或少了main后面的圆括号()。
(2)说明语句放在执行语句之后。例如:
void main() { int a=10; printf("a=%d,b=%d",a,b); int b=20; /* 该说明语句应该放在上一语句之前 */ }
(3)没有区分标识符的大、小写。例如:
int a=5; printf("%d",A);
C语言的编译器认为大写字母和小写字母是两个不同的字符,因此,编译程序把上面程序段的a和A认为是两个不同的变量名,编译时会显示错误信息:
Undefined symbol'A'
习惯上,符号常量名用大写,变量名用小写表示,以增加可读性。
(4)#define 或#include 后面多了分号或少了#。#define 和#include 都是预处理指令,而不是C语言的语句,所以不能加分号。例如:
#define N 5; /* 多了分号 */ define N 5 /* 少了#*/ #include"stdio.h"; /* 多了分号 */ include"stdio.h" /* 少了#*/