
程序设计语言与.ppt
62页GuangXi University,1,卢日昌 广西大学电气工程学院,C语言程序设计,GuangXi University,2,教 材 及 参 考 书,[1]龚沛曾,杨志强主编.C/C++程序设计教程,北京:高等教育出版社,2009年5月,[2]教育部考试中心.全国计算机等级考试二级教程—C语言程序设计,北京:高等教育出版社 [3]谭浩强.C++程序设计,北京:清华大学出版社,2004年6月 [4]吴文虎.程序设计基础(第2版),北京:清华大学出版社, 2004年9月,,GuangXi University,3,考试时间:第14周周六晚(最后一次课) 考试方式:笔试,开卷考试 总评成绩=平时成绩50%+期末成绩50% 本教学班Q群:121938137 1):1009495090 2)电子邮件:Lurch@ 3)联系:3231080(办) 4)博客 University,4,主要授课内容,第1章 C/C++概述 第2章 基本数据类型、运算符和表达式 第3章 结构化程序设计 第4章 数组 第5章 函数 第7章 文件夹,GuangXi University,5,第一章 C/C++概述,1.1 C/C++发展简史 1.2 简单的C/C++程序实例 1.3 基本语法成分 1.4 数据的输入和输出 1.5 编译预处理 1.6 Visual C++简介,GuangXi University,6,1.1 C/C++的发展简史,C是由BCPL语言经B语言进化而来,1972年Bell实验室的Ritchie开发,为Ken的UNIX而设计。
参与UNIX设计开发的主要人物还有ThompsonC语言的设计者Dennis M. Ritchie和Unix的设计者Ken Thompson接受美国国家技术勋章,GuangXi University,7,1.1C/C++的发展简史,Ritchie和Thompson在开发UNIX,UNIX OS可以说是第一个比较成熟并俱备开放性的操作系统,它的大部分代码是由C写的GuangXi University,8,1.1C/C++的发展简史,C语言有两个重要的标准: 老标准:1978年,The C Programming Language----B.W.Kernighan和D.M.Ritchie合著 新标准:1983年,ANSI制定,称为ANSI C 它被定为一种高级语言,但并不是“高级”,只是相对低级语言,在一个高的级别上进行编程很多重量级软件都是用C写的几乎没有不能用C写出来的软件,没有不支持C的系统很多流行语言、新生语言都借鉴了它的思想、语法GuangXi University,9,1.1C/C++的发展简史,硬件(Hardware),操作系统(OS),应用程序 (Application),基于 平台的 应用 程序,,低级语言的地盘,,高级语言的地盘,,C语言的地盘,GuangXi University,10,1.1C/C++的发展简史,C++: 1979年Bell实验室的Bjarne Stroustrup,主要是为改善管理程序的方便性,降代复杂性。
C,Simula 67,带类的C,,类,,基础,1979年 Cpre预处理器,,C++ 1.0,1985年 《C++程序设计语言》,,C++ 2.0,1989年,,C++ 3.0,1993年,类及派生类 公有和私有 构造函数,析构函数 友元 内联函数 赋值运算符的重载,虚函数 函数和运算符的重载 引用 常量Const,多重要继承 保护成员 对象的初始化与赋值的机制 抽象类 静态成员函数 CONST成员函数,模板,GuangXi University,11,1.1C/C++的发展简史,,C++的组成环,C语言,面向对象设计 (OOP),Visual C++组成,C++程序设计,,C程序设计,MFC,应用程序向导,类似的还有 C++ Builder Borland C++,GuangXi University,12,1.2简单的C/C++程序与结构,例1.1:输出一行信息include void main( ) { printf (“This is a C program.\n“); },说明: main-主函数名, void-函数类型 每个C程序必须有一个主函数main { }是函数开始和结束的标志,不可省 每个C语句以分号结束 使用标准库函数时应在程序开头一行写: #include ,运行结果: This is a C program.,GuangXi University,13,1.2简单的C/C++程序与结构,例1.2:输入圆的面积,求面积。
分别用C和C++写的源程序如下:,注释:以//开始,#include是编译预处理命令 把头文件的内容插入该处 使用cin、cout函数必须有该命令,main函数的函数体,main函数的函数头 void表示无返回值,,,,,,#define 定义替代宏,,GuangXi University,14,1.2简单的C/C++程序与结构,GuangXi University,15,1.2简单的C/C++程序与结构,例1.3:求两个数之和 #include “iostream.h“ int add(int x, int y) //定义add()函数,求两个数之和 { int z; //说明z为int类型的变量 z=x+y; //将x+y的值赋值给z return z; //结束add()函数的执行,并将z的值返回 } void main( ) //定义主函数 { int a, b, c; //说明a、b、c为int类型的变量 cinab; //从键盘输入两个数据送到a和b中 c=add(a,b) ;//调用add()函数,计算a+b,并把结果赋给c coutcendl; // 先输出c的值,再输出换行符 },GuangXi University,16,1.2 简单的C/C++程序与结构(小结),(1) C/C++程序是一个或多个函数构成的,main函数一定要有。
这使得程序容易实现模块化 (2) 一个函数由两部分组成: 函数的首部:例1.3中的add函数首部 int add(int x,int y ) 函数体:花括号内的部分若一个函数有多个花括号,则最外层的一对花括号为函数体的范围 函数体包括两部分 : 声明部分:int a,b,c; 可缺省 执行部分:由若干个语句组成可缺省,GuangXi University,17,例如: void dump ( ) { } 这是一个空函数,什么也不做,但是合法的函数1.2 简单的C/C++程序与结构(小结),GuangXi University,18,(3)不管有多少个函数,程序总是从main函数开始执行的,与main函数的位置无关 在一个函数内,执行从上到下开始的 (4)程序书写形式自由,一行内可以写几条语句, 一条语句可以分写在多行上,语句没有行号 (5)每个语句和数据声明的最后必须有一个分号 注释从//开始的,可增加程序的可读性 (6)C/C++语言中大小写字母是不同的 (7)C语言本身没有输入输出语句输入和输出的操作是由库函数scanf和printf等函数来完成的C对输入输出实行“函数化”1.2 简单的C/C++程序与结构(小结),GuangXi University,19,例1 以下说法不正确的是( ),A.C程序中必须有一个main()函数,C程序是从main() 函数的第1条语言开始执行 B.C程序中除主函数外的其他函数都是在执行主函数时, 通过函数调用或嵌套调用而得以执行的 C.C程序中的main()函数位置可以任意制定 D.C程序中的main()函数必须放在程序的开始位置,,典型例题分析,GuangXi University,20,A.C程序中的一行可以写多条语句 B.C程序中的每行只能写一条语句 C.C程序中的语句可以采用缩进格式书写 D.C程序中可以用注释提高程序的可读性,例2 以下说法不正确的是(),,典型例题分析,GuangXi University,21,例3 C语言的程序一行写不下时,可以( ),A.在任意空格处换行 B.用逗号换行 C.用回车换行 D.用分号换行,,典型例题分析,GuangXi University,22,例4 以下说法正确的是(),A.C 语言程序是从第一个定义的函数开始执行 B.在C语言中,要调用的函数必须在main函数中定义 C.C语言程序是从main函数的第1条语句开始执行 D.C语言程序中的main函数必须放在程序的开始部分,,典型例题分析,GuangXi University,23,A.主函数名是由程序设计人员按照“标识符”的规则选取的 B.分号和回车都可以作为一个语句的结束符号 C.程序的执行,总是从源程序清单的第1行开始 D.在程序清单的任何地方都可以插入一个或多个空格符,例5 下列说法中,正确的是(),,典型例题分析,GuangXi University,24,1.3 C/C++基本的语法成分,1. 基本符号: (1) 字母:52个 A~Z a~z (2) 数字字符:10个 0 ~9 (3) 下划线 _ 。
(4) 特殊符号:一般作运算符,如+、-、*、/、& 2.关键字 有特定含义的、专用的单词 如int、char、break、for、define等 不能作变量名、符号常量名、函数名、类名等GuangXi University,25,1.3 C/C++基本的语法成分,3. 标识符: 由字母、数字和下划线三种字符组成 必须以字母或下划线开头 合法标识符 A2 student area_of_circle num _dd Int 不合法标识符 2A A-B area of circle M.D int ① 大小写字母不等价 习惯上,变量名小写,符号常量大写 ② 关键字不能作标识符用例如,int、define等关键字不 能作为标识符用 ③ 定义标识符时最好能简洁且“见名知义”,以提高程序的可读性如min表示最小值,average表示平均值,day表示日期 ④ 在Visual C++中,标识符中不能有汉字 但是字符串和注释中可以有汉字GuangXi University,26,1.3 C/C++基本的语法成分,标识符通常用来对变量和函数命名,一般有经下约定: 直观,见名知意,便于记忆和阅读 最好使用英文单词或其组合 切忌使用汉语拼音 下划线和大小写通常用来增强可读性 variablename variable_name VariableName, variableName 某些功能的变量采用习惯命名 如:for语句所采用的循环变量习惯用i, j, k,,,,,Windows 风格,UNIX 风格,GuangXi University,27,1.4 C/C++数据的输入输出与格式化,本节仅介绍C/C++的数据输入输出及其格式化方法。
通过本节的学习,你马上会看到你能编制一些小程序了 1.4.1C++的数据输入输出与格式化 1.4.2C的数据输入输出与格式化 1.4.3字符输出/输入函数,GuangXi University,28,1.4.1C++的数据输入输出与格式化,C++使用cin(标准输入设备)和cout (标准输出设备)进行输入输出,把数据的输入输出处理为一个对象到另一个对象的流动要使用它们,程序开始必须用包含语句: #include “iostream.h“ 或#include 格式: cout变量1变量2……变量n;,GuangXi University,29,1.4.1C++的数据输入输出与格式化,例1.3 cout示例 #include “iostream.。
