c语言程序设计(包云)c第1章概述.ppt
《c语言程序设计(包云)c第1章概述.ppt》由会员分享,可在线阅读,更多相关《c语言程序设计(包云)c第1章概述.ppt(50页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、C C程序设计程序设计程序设计程序设计C语言程序设计 讲授:包云讲授:包云 单位:聊城大学计算机学院单位:聊城大学计算机学院 1/16/20231/16/20231 1第第1 1章章 C C语语言言概概述述C C程序设计程序设计程序设计程序设计第1章 C语言概述1/16/20231/16/20232 2第第1 1章章 C C语语言言概概述述第1章 C语言概述16-Jan-23主要内容主要内容1.1 什么是计算机程序什么是计算机程序1.2 什么是计算机语言什么是计算机语言1.3 C语言的发展及其特点语言的发展及其特点1.4 简单的简单的C程序介绍程序介绍1.5 C程序的上机步骤与方法程序的上机步
2、骤与方法3第1章 C语言概述16-Jan-231.1什么是程序设计什么是程序设计什么是程序?什么是程序?为了解决某一特定问题用某一种计算机语言编写的为了解决某一特定问题用某一种计算机语言编写的指令序列称为程序。指令序列称为程序。什么是程序设计?什么是程序设计?程序是程序设计的结果,在执行程序前必须先排程序是程序设计的结果,在执行程序前必须先排定程序,排定以时间为进程必须完成的各种操作叫定程序,排定以时间为进程必须完成的各种操作叫程序设计。程序设计。用高级语言进行程序设计时要注意以下三个概念:用高级语言进行程序设计时要注意以下三个概念:语法语法,每种计算机语言都有自己的语法规则。,每种计算机语言
3、都有自己的语法规则。语义语义,即某一语法成分的含义。,即某一语法成分的含义。语用语用,即正确使用语言。,即正确使用语言。4第1章 C语言概述16-Jan-231.2什么是计算机语言什么是计算机语言计算机语言计算机语言机器语言机器语言汇编语言汇编语言高级语言高级语言非过程语言非过程语言5第1章 C语言概述16-Jan-23高级语言经历的不同的发展阶段:高级语言经历的不同的发展阶段:1、非结构化的语言、非结构化的语言2、结构化语言、结构化语言3、面向对象的语言、面向对象的语言6第1章 C语言概述16-Jan-231.3 C语言的发展及其特点语言的发展及其特点语言的诞生与发展语言的诞生与发展(1 1
4、)在)在C C语言诞生以前,系统软件主要是用汇编语言编写的。语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势),于是人们盼望有一种兼有操作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言。汇编语言和高级语言特性的新语言。(2 2)语言是贝尔实验室于)语言是贝尔实验室于7070年代初研制出来的,后来又被年代初研制出来的,后来又被多次改进,
5、并出现了多种版本。多次改进,并出现了多种版本。8080年代初,美国国家标准化年代初,美国国家标准化协会(协会(ANSIANSI),根据语言问世以来各种版本对语言的发),根据语言问世以来各种版本对语言的发展和扩充,制定了展和扩充,制定了ANSI CANSI C标准(标准(19891989年再次做了修订)。年再次做了修订)。本课程以本课程以 C99新标准来讲解。新标准来讲解。7第1章 C语言概述16-Jan-23C语言的历史背景语言的历史背景年份年份语言名语言名语言特点语言特点1960ALGOL 60面向问题,离硬件远,不易写系统程序面向问题,离硬件远,不易写系统程序1963CPL(组合程序组合程
6、序设计语言设计语言)接近硬件,但规模较大,难以实现接近硬件,但规模较大,难以实现 (剑桥大学)(剑桥大学)1967BCPL(基本基本CPL)对对CPL的简化(剑桥大学,的简化(剑桥大学,Matin Richards)1970B进一步简化进一步简化CPL,并在,并在PDP/7上实现。上实现。(贝尔实验室)(贝尔实验室)1972C汲取了汲取了BCPL和和B优点,克服了缺点。用优点,克服了缺点。用C编写了编写了UNIX系统系统90%的代码的代码198787ANSI C这是国际标准化组织这是国际标准化组织87年公布的年公布的C语言标准(语言标准(1989年再次做了修订)年再次做了修订)8第1章 C语言
7、概述16-Jan-23C语言的特点语言的特点C C语言同时具有汇编语言和高级语言的优势。语言同时具有汇编语言和高级语言的优势。语言简洁、紧凑,使用方便、灵活。语言简洁、紧凑,使用方便、灵活。(3232个关键字个关键字 9 9种控制语句)种控制语句)运算符丰富。运算符丰富。(3434种运算符)种运算符)数据类型丰富。数据类型丰富。具有结构化的控制语句具有结构化的控制语句语法限制不太严格,程序设计自由度大语法限制不太严格,程序设计自由度大可以直接对硬件进行操作。可以直接对硬件进行操作。生成目标代码质量高,程序执行效率高。生成目标代码质量高,程序执行效率高。可移植性好(较之汇编语言)。可移植性好(较
8、之汇编语言)。9第1章 C语言概述16-Jan-23C语言缺点n算符太多,优先级多,不便记忆。算符太多,优先级多,不便记忆。n相对来说,相对来说,C语言类型转换随便,安全性较差(如指针)语言类型转换随便,安全性较差(如指针)10第1章 C语言概述16-Jan-231.4 简单的简单的C程序介绍程序介绍1、最简单的程序、最简单的程序例1.1 要求在屏幕上输出以下一行信息要求在屏幕上输出以下一行信息:This is a C program.#include int main()printf(“This is a C program.n”);return 0;一个完整的程序,是由一个一个完整的程序,
9、是由一个main()函数(又称主函数)和若干个函数(又称主函数)和若干个其它函数其它函数(又称子函数又称子函数)结合而结合而成的,或仅由一个成的,或仅由一个main()函数函数构成。构成。main是函数的名字,表示是函数的名字,表示“主主函数函数”,main前面的前面的int表示此表示此函数的类型是函数的类型是int类型。每个语类型。每个语句最后都有一个分号,表示语句最后都有一个分号,表示语句的结束。句的结束。stdio.h是系统提供的一个文件名,输入输出函数都事先放是系统提供的一个文件名,输入输出函数都事先放在这个文件里,如果想用,必须调用在这个文件里,如果想用,必须调用stdio.h。11
10、第1章 C语言概述16-Jan-23 例1.2 求两个数的和。求两个数的和。#include int main()int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is%dn”,sum);return0;程序运行结果:程序运行结果:sum is 579/*预处理命令预处理命令*/*函数首部函数首部*/*声明部分声明部分*/*输出语句输出语句*/函数体函数体12第1章 C语言概述16-Jan-231.4 简单的简单的C程序介绍程序介绍例1.3 求求2个数中较大者。个数中较大者。#include“stdio.h”int main()int a,b,c;scan
11、f(%d,%d,&a,&b);c=max(a,b);printf(max=%dn,c);return0;int max(int x,int y)int max(int x,int y)int z;int z;if(xy)z=x;if(xy)z=x;else z=y;else z=y;return z;return z;从键盘输入从键盘输入:5,9程序运行结果:程序运行结果:max=9 说明说明:v函数是程序的基本单位函数是程序的基本单位vC C程序总是从程序总是从main()main()函数开始执行函数开始执行v程序行的书写格式自由程序行的书写格式自由v所有语句都必须以分号所有语句都必须以分号
12、“;”结结束束v可用可用/*/*/对程序作注释对程序作注释13第1章 C语言概述16-Jan-231.4 简单的简单的C程序介绍程序介绍2.函数的一般结构函数的一般结构1 1)一个程序由一个或多个源程序文件组成。)一个程序由一个或多个源程序文件组成。(1 1)预处理指令。)预处理指令。(2 2)全局声明。)全局声明。(3 3)函数定义。)函数定义。2 2)函数是)函数是C C程序的主要组成部分程序的主要组成部分14第1章 C语言概述16-Jan-233 3)一个函数包括)一个函数包括2 2个部分个部分 任任何何函函数数(包包括括主主函函数数main()main())都都是是由由函函数数说说明明
13、和和函函数数体体两两部部分组成。其一般结构如下:分组成。其一般结构如下:函数返回值的类型函数返回值的类型 函数名函数名(函数参数表函数参数表)说明语句部分;说明语句部分;执行语句部分;执行语句部分;函数首部函数首部函数体函数体说明语句部分由变量定义、自定义类型定义、自定义函数说明、外部变量说明等组成。可执行语句部分一般由若干条可执行语句构成。函数参数表的格式为:数据类型 形参1,数据类型 形参215第1章 C语言概述16-Jan-231.函数是语言程序的基本单位。main()函函数数的的作作用用,相相当当于于其其它它高高级级语语言言中中的的主主程程序序(“龙龙头头大大哥哥”,运运行行时时由由它
14、它开开始始执执行行);其其它它函函数数的的作作用,相当于子程序(一般是被调用的)。用,相当于子程序(一般是被调用的)。2.C语言程序总是从语言程序总是从main()函数开始执行。函数开始执行。一个语言程序,总是从main()函数开始执行,而不论其在程序中的位置。当主函数执行完毕时,亦即程序执行完毕。习惯上,将主函数main()放在最前头。总结一下总结一下16第1章 C语言概述16-Jan-23 任任何何函函数数(包包括括主主函函数数main())都都是是由由函函数数说说明明和和函函数数体体两两部分组成。其一般结构如下:部分组成。其一般结构如下:函数返回值的类型函数返回值的类型 函数名函数名(函
15、数参数表函数参数表)说明语句部分;说明语句部分;执行语句部分;执行语句部分;函数首部函数体1.函数首部函数首部 由函数返回值类型、函数名和函数参数表三部分组成。由函数返回值类型、函数名和函数参数表三部分组成。函数参数表的格式为:函数参数表的格式为:数据类型数据类型 形参形参1,数据类型数据类型 形参形参217第1章 C语言概述16-Jan-23例如,函数例如,函数max()max(),其函数说明各部分如图,其函数说明各部分如图1-11-1所示。所示。函数返回值的类型函数返回值的类型 函数名函数名 函数参数表函数参数表 int max (int x,int y )图图1-1 函数首部结构图函数首
16、部结构图2.函数体函数体在函数说明部分的下面、大括号(必须配对使用)内的部分。在函数说明部分的下面、大括号(必须配对使用)内的部分。函数体一般由说明语句和可执行语句两部分构成:函数体一般由说明语句和可执行语句两部分构成:(1)说明语句部分)说明语句部分说说明明语语句句部部分分由由变变量量定定义义、自自定定义义类类型型定定义义、自自定定义义函函数数说说明明、外部变量说明等组成。外部变量说明等组成。18第1章 C语言概述16-Jan-23 (2)可执行语句)可执行语句 一般由若干条可执行语句构成。一般由若干条可执行语句构成。main()函数体的示意图。函数体的示意图。/*主函数主函数main()*
17、/main()int num1,num2;printf(Input the first integer number:);scanf(%d,&num1);printf(Input the second integer number:);scanf(%d,&num2);printf(max=%dn,max(num1,num2);函数体变量定义部分可执行语句部分图图1-2 函数体结构示意图函数体结构示意图19第1章 C语言概述16-Jan-233、源程序书写格式1.所所有有语语句句都都必必须须以以分分号号;结结束束,函函数数的的最最后后一一个个语语句句也也不不例外。例外。2.程序行的书写格式自由程
18、序行的书写格式自由既允许既允许1行内写几条语句,也允许行内写几条语句,也允许1条语句分写在几行上。条语句分写在几行上。3.允许使用注释允许使用注释C语言的注释格式为:语言的注释格式为:/*/(1)/*和和*/必须成对使用,且必须成对使用,且/和和*、以及、以及*和和/之间不能有空格,否则都出错。之间不能有空格,否则都出错。20第1章 C语言概述16-Jan-23例如,例如,main()int num1,num2;printf(Input the first integer number:);scanf(%d,&num1);printf(Input the second integer numb
19、er:);scanf(%d,&num2);printf(max=%dn,max(num1,num2);如果某条语句很长,一般需要将其分写在几行上。如果某条语句很长,一般需要将其分写在几行上。21第1章 C语言概述16-Jan-23 技巧:为为避避免免遗遗漏漏必必须须配配对对使使用用的的符符号号,例例如如注注释释符符号号、函函数数体体的的起起止止标标识识符符(花花括括号号)、圆圆括括号号等等等等,在在输输入入时时,可可连连续续输输入入这这些些起起止止标标识识符符,然然后后再再在在其其中中进进行行插插入入来来完完成成内内容容的的编编辑辑。在在起止标识符嵌套时,以及相距较远时,这样做更有必要。起止标
20、识符嵌套时,以及相距较远时,这样做更有必要。(2)注释的位置,可以单占一行,也可以跟在语句的后面。)注释的位置,可以单占一行,也可以跟在语句的后面。(3)如果一行写不下,可另起一行继续写。)如果一行写不下,可另起一行继续写。(4)注注释释中中允允许许使使用用汉汉字字。在在非非中中文文操操作作系系统统下下,看看到到的的是是一串乱码,但不影响程序运行。一串乱码,但不影响程序运行。(5)使用)使用/可以在一行内注释。例如可以在一行内注释。例如:printf(max=%d,c);/输出输出c的值的值 22第1章 C语言概述16-Jan-23C C语言的语句和关键字语言的语句和关键字(从第从第4 4章起
21、将详细介绍章起将详细介绍)(一)C语言的语句 与与其其它它高高级级语语言言一一样样,语语言言也也是是利利用用函函数数体体中中的的可可执执行行语语句句,向向计计算算机机系系统统发发出出操操作作命命令令。按按照照语语句句功功能能或或构构成成的的不不同同,可可将将语语言言的的语语句句分分为五类。为五类。1.控制语句控制语句控控制制语语句句完完成成一一定定的的控控制制功功能能。语语言言只只有有条条控控制制语语句句,又又可可细细分分为三种:为三种:(1)选择结构控制语句)选择结构控制语句 if()else,switch()(2)循环结构控制语句)循环结构控制语句 dowhile(),for(),whil
22、e(),break,continue(3)其它控制语句)其它控制语句 goto,return23第1章 C语言概述16-Jan-232.函数调用语句 函数调用语句由一次函数调用加一个分号(语句结束标志)构成。函数调用语句由一次函数调用加一个分号(语句结束标志)构成。例如,例如,printf(This is a C function statement.);3.表达式语句表表达达式式语语句句由由表表达达式式后后加加一一个个分分号号构构成成。最最典典型型的的表表达达式式语语句句是是,在赋值表达式后加一个分号构成的赋值语句。在赋值表达式后加一个分号构成的赋值语句。例例如如,num=5 是是一一个个赋
23、赋值值表表达达式式,而而num=5;却却是是一一个个赋赋值值语语句。句。4.空语句空语句仅由一个分号构成。显然,空语句什么操作也不执行。空语句仅由一个分号构成。显然,空语句什么操作也不执行。例如,下面就是一个空语句:例如,下面就是一个空语句:;24第1章 C语言概述16-Jan-235.复合语句复合语句是由大括号括起来的一组(也可以是复合语句是由大括号括起来的一组(也可以是1条)语句构成。例如:条)语句构成。例如:main()/*复合语句。注意:右括号后不需要分号。复合语句。注意:右括号后不需要分号。*/复合语句的性质:(1)在在语语法法上上和和单单一一语语句句相相同同,即即单单一一语语句句可
24、可以以出出现现的的地地方方,也也可可以使用复合语句。以使用复合语句。(2)复合语句可以嵌套,即复合语句中也可出现复合语句。)复合语句可以嵌套,即复合语句中也可出现复合语句。25第1章 C语言概述16-Jan-23 (二)关键字 C语语言言的的关关键键字字共共有有32个个,根根据据关关键键字字的的作作用用,可可分分其其为为数数据据类类型型关关键字、控制语句关键字、存储类型关键字和其它关键字四类。键字、控制语句关键字、存储类型关键字和其它关键字四类。(1)数数据据类类型型关关键键字字(12个个):char,double,enum,float,int,long,short,signed,struct
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 概述
限制150内