
1-2 从基本概念开始
从机器指令到C/C++,以及今日的Java/C#,其发展过程基本上和计算机的历史相当。物竞天择,多年的演化和沉淀,存在到今天的编程语言,自然有其生存的道理。
在这个发展的过程中,有一条主线就是:随着计算机硬件的进步,编程语言不断地由适应机器的逻辑转化为适应人的逻辑。
顺序、选择和循环,这三种逻辑既有机器逻辑的影子,也有人类思维逻辑的影子,可以说介于两者之间。今天的高级语言,都含有这三种逻辑结构。所以,用程序语言控制电脑,从这里开始。
C/C++语言有许多经典的入门类图书。所以,我们也没有必要重复一次,这里总结了一般图书的基本语法放在本章供读者编程时查询使用。
1.认识C程序基本结构
下面通过一个C程序案例,说明C程序的结构组成。
案例代码如下:

下面三条关于程序的说明,如果你是第一次学习C程序,可以大致看一下,不要求一定要看懂:
(1)程序包括两个函数:主函数main和被调用函数max。主函数main是每一个C程序都必须具有的,max函数的作用是将x和y中较大者的值赋给变量z,函数体用{}括起来。
(2)return语句的作用是将z的值返回给主调用函数main,返回值将通过函数名max带回到main函数的调用处。
(3)scanf和printf都是C语言提供的标准输入输出函数,scanf函数的作用是输入a和b的值;printf函数的作用是按设置的格式输出有关量的值。
关键的是,我们可以从上面的代码中,总结介绍一下C程序的基本结构:
(1)C程序是由函数组成的。一个完整的C程序至少包括一个主函数(main函数),也可以包括一个main函数和若干个其他函数。
(2)每一个函数是由一个函数头和若干语句构成的。
(3)每个语句和数据定义的最后必须有一个分号,分号不可少。
(4)C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。
(5)C语言本身没有输入/输出语句,输入和输出功能是由库函数来完成的。所以,举例程序中的开头有#include<stdio.h>。
(6)一个C程序总是从main函数开始执行的,而不论其在程序中的位置如何。
(7)可以用/*......*/对C程序中的任何部分作注释。/*……*/之间的部分只是供人们阅读代码作为参考,对计算机或者说编译程序而言,是透明的、看不见的。
接下来你还要学习下面这些基本知识以掌握C语言的核心。
2.理解标识符、关键字和保留字
C程序代码语句继续细化下去,不过就是一个一个的符号。这些符号,也有一定的规则。要写文章,首先要学会写字,要编写C语言程序,首先要了解C程序中使用的符号。从上面的几个C程序例子可以看出,C语言程序中,有些符号是C语言规定的符号,像main、int、float、for、+、-、*等,有些是编程者自己使用的符号,像sum、i、x等。那么C语言规定了哪些符号?自己使用的符号又需要遵照什么样的规定?在C语言中使用的单词分为六类:标识符、关键字、常量、字符串字面值、运算符、分隔符。空格符、制表符、换行符、换页符和注解等统称为空白符。空白符在程序中仅起间隔作用,编译程序可以对它们忽略不计。因此在程序中使用空白符与否,对程序的编译不发生影响,但在程序中适当的地方使用空白符将增加程序的清晰性和可读性。
所有的程序设计语言,都有这些规定。
为什么呢?
一方面是为了让程序的可读性更强,另一方面,也方便程序设计语言的编译器开发。
我们只需要多读一些优秀程序员写的代码,看看别人是如何定义变量函数的,如何使用这些规范的,养成好习惯即可。
3.搞懂C语言的常量
在程序运行时,其值不能被改变的量称为常量。如5,3.14159,0.618等。
符号常量可以使用一个标识符表示常量,例如:PI表示3.14159,RETIREMENT表示退休年龄60等(C语言中写作#define PI 3.14159,#define RETIREMENT 60),这样的标识符称为符号常量,一般大写。符号常量使程序易于阅读和修改。例如,一个程序中多处用到退休年龄60,当有一天退休年龄改为65岁时,修改这个程序就会很困难。使用符号常量,只需要将#define RETIREMENT 60改为#define RETIREMENT 65即可。
字符串常量严格地说,不是一种数据类型。只有常量,没有变量。一个字符串常量用双引号括起来:"Hello,World!\n"。
4.变量是程序设计语言的关键
在程序运行时,其值能被改变的量称为变量。程序运行时,计算机给每个变量分配一定量的存储空间。每个变量必须有一个类型,如整型、浮点型等,它指明给这个变量分配多大量的存储空间;每个变量还必须有一个名字,如x,y等,它指明是哪个变量;一般,一个变量还要有值,值放在变量的存储空间内。
5.整理其他基本知识
你看C语言的代码:x=a+b;所以,有了a和b这样的变量之后,接下来需要有和数学一样的算术运算符才能构成语句,语言有三种规范,然后函数……这本书的定位是读者已经买过或者说上过一点儿C语言课程。所以,这里就不再详细讲述,读者可以通过后面章节的内容巩固线索,拿出你过去的书籍来学习。