第一讲C语言概论
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1讲程序设计与软件开发基础概述
1.1 计算机语言
1.1.1 计算机语言
第1代语言——机器语言
第2代语言——汇编语言,如MASM
第3代语言——高级语言,如C、BASIC
第4代语言——非过程化语言(面向对象语言),如C++
第5代语言——智能化语言,用于抽象、数理逻辑等领域。
1.1.2 编译程序和解释程序
计算机语言处理程序:
编译程序
解释程序
计算机程序的运行方式:
编译运行
编辑源程序——由编译程序编译源程序生成目标程序——连接装配生成可执行程序——在操作系统支持下运行程序
解释运行
编辑源程序——在解释程序支持下逐语句解释运行程序
1.2 算法与数据结构
程序=算法+数据结构
数据——是信息的载体,即计算机处理的信息集合,如文字、符号、图、表、声音等。
数据结构——数据元素及其之间的关系——数据的逻辑结构。
数据的存储结构——数据逻辑结构在计算机存储设备中的映象——数据的物理结构
算法——问题求解过程的精确描述。
算法的特点是:
有穷性——计算机执行的次数为有限次,只含有限条指令。
确定性——算法的每一步操作含意明确,无二义性。
可行性——有效性——描述的操作可以通过有限次的基本操作来实现。
输入——有0个或多个输入
输出——有1个或多个输出
算法的分类:数值运算算法和非数值运算算法。
算法描述的方法:自然语言描述、流程图描述、N-S盒图描述。
程序——用计算机程序语言描述的算法。
1.3 结构化程序设计的3种基本结构及其设计方法
1.3.1 三种基本结构
顺序结构、选择结构、循环结构
1.3.2 算法的表示
1.自然语言
即用文字叙述算法
2.传统流程图
流程图——用图框、流线及文字组成的图形来描述算法. 流程图的基本构件:
N-S图——盒图(box diagram),由矩形框组成的图
例求1+2+3+4+……+100的和
1.5 C程序的特点
1.函数——C语言的最小基本单位模块。
2.函数简单介绍
例:
#include<stdio.h>
main()
{
printf("世界,您好!\n");
}
例:
#include<math.h>
#include<stdio.h>
main()
{
double x,s;
printf("input number:\n");
scanf("%lf",&x);
s=sin(x);
printf("sine of %lf is %lf\n",x,s); }
3.C语句分类
控制语句
函数调用语句
空语句
复合语句
表达式语句
4.C语言的输入/输出
scanf和printf这两个函数分别称为格式输入函数和格式输出函数。
其意义是按指定的格式输入输出值。
5.C语言程序的书写规则
◇从书写清晰,便于阅读,理解,维护的角度出发,在书写程序时应遵循以下规则:
⑴一个说明或一个语句占一行。
⑵用{} 括起来的部分,通常表示了程序的某一层次结构。
{}一般与该结构语句的第一个字母对齐,并单独占一行。
⑶低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。
6.C语言的结构特点
⑴一个C语言源程序可以由一个或多个源文件组成。
⑵每个源文件可由一个或多个函数组成。
C程序以函数为基本单位。
⑶一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。
⑷源程序中可以有预处理命令(include 命令仅为其中的一种),预处理命令通常应放在源文件或源程序的最前面。
⑸每一个说明,每一个语句都必须以分号结尾。
但预处理命
令,函数头和花括号“}”之后不能加分号。
⑹标识符,关键字之间必须至少加一个空格以示间隔。
若已有明显的间隔符,也可不再加空格来间隔。
1.6 常用C语言开发工具
Turbo C 2.0
Microsoft C
1.7 C语言的关键字、标识符
1.关键字
C语言简洁、紧凑,使用方便、灵活。
ANSI C一共只有32个关键字
2.C语言词汇
在C语言中使用的词汇分为六类:标识符,关键字,运算符,分隔符,常量,注释符等。
⑴标识符
在程序中使用的变量名、函数名、标号等统称为标识符。
除库函数的函数名由系统定义外,其余都由用户自定义。
C 规定,标识符只能是字母(A~Z,a~z)、数字(0~9)、下划线(_)组成的字符串,并且其第一个字符必须是字母或下划线。
以下标识符是合法的:
a, x, x3, BOOK_1, sum5
以下标识符是非法的:
3s 以数字开头
s*T 出现非法字符*
-3x 以减号开头
bowy-1 出现非法字符-(减号)
在使用标识符时还必须注意以下几点:
①标准C不限制标识符的长度。
②在标识符中,大小写是有区别的。
⑵关键字
关键字分为以下几类:
类型说明符、语句定义符、预处理命令字、其他
⑶运算符
⑷分隔符
在C语言中采用的分隔符有逗号和空格两种。
⑸常量
C 语言中使用的常量可分为数字常量、字符常量、字符串常量、符号常量、转义字符等多种。
⑹注释符
C 语言的注释符是以“/*”开头并以“*/”结尾的串。
在“/*”和“*/”之间的即为注释。
程序编译时,不对注释作任何处理。
3.C语言的字符集
◇字母
小写字母a~z共26个
大写字母A~Z共26个
◇数字
0~9共10个
◇空白符
空格符、制表符、换行符等统称为空白符。
◇标点和特殊字符
本章考点
•程序的三种基本结构。
•C语言程序的构成及格式。
•C语言程序的编辑与运行。
典型试题详解
1.以下叙述正确的是________。
A)构成C程序的基本单位是函数
B)可以在函数中定义另一个函数
C)main()函数必须放在其他函数之前
D)所有被调用的函数一定要在调用之前进行定义
正确答案:A(知识点:C语言程序的构成及格式)
试题分析:构成C程序的基本单位是函数,一个C程序中有且只有一个main函数,main函数在程序中没有固定的位置。
2.一个C程序中________。
A)main函数必须出现在所有函数之前
B)main函数可以在任何地方出现
C)main函数必须出现在所有函数之后
D)main函数必须出现在固定位置
正确答案:B(知识点:C语言程序的构成及格式)
试题分析:构成C程序的基本单位是函数,一个C程序中有且只有一个main函数,main函数在程序中没有固定的位置。
3.C语言中用于结构化程序设计的三种基本结构是______。
A)顺序结构、选择结构、循环结构
B)if、switch、break
C)for、while、do-while
D)if、for、continue
正确答案:A(知识点:程序的三种基本结构)
试题分析:结构化程序设计的三种基本结构是顺序结构、选择结构、循环结构。
4.以下叙述中正确的是________。
A)C语言比其他语言高级
B)C语言可以不用编译就能被计算机识别执行
C)C语言以接近英语国家的自然语言和数学语言为语言的表达形式
D)C语言出现最晚,具有其他语言的一切优点
正确答案:C(知识点:程序设计语言)
试题分析:C语言是高级语言中的一种。
高级语言由人们容易理解的自然语言(英语)和数学语言中一些简单的符号和单词组成。
计算机不能直接识别高级语言,需要经过专用软件转换为机器语言程序才能在计算机上运行。
转换方式分解释方式和编译方式两类,C语言采用编译方式。
5.算法具有五个特性,以下选项中不属于算法特性的是________。
A)有穷性
B)简洁性
C)可行性
D)确定性
正确答案:B(知识点:算法的特征)
试题分析:算法具有有穷性、确定性、可行性、有零个或多个输入、有一个或多个输出五个特性。