您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 高级语言程序设计基础c语言
1高级语言程序设计基础(c语言)2课程情况介绍•教材:《c程序设计》(第二版)谭浩强•参考书:田淑清编写的《c语言程序设计》等•实验指导书•上机环境:Visualc++6.0•本课学时数:44学时•课程安排:••上课学时数:26•上机学时数:18(共9次)3本门课主要内容•C语言概述•算法及其表示方法•数据类型、运算符和表达式•编写程序(简单程序设计,选择结构程序设计,循环结构程序设计)•数组•函数•指针•结构体•文件4第一章C语言概述本章主要介绍C语言程序的结构和书写规则。一、C语言的发展简史和特点二、C语言程序的结构与书写规则三、C语言的语句和关键字简介四、C语言的上机环境介绍5一、C语言的发展简史和特点1.C语言的诞生与发展(1)在C语言诞生以前,系统软件主要是用汇编语言编写的。由于汇编语言程序依赖于计算机硬件,其可读性和可移植性都很差;但一般的高级语言又难以实现对计算机硬件的直接操作(这正是汇编语言的优势),于是人们盼望有一种兼有汇编语言和高级语言特性的新语言。(2)C语言是贝尔实验室于70年代初研制出来的,后来又被多次改进,并出现了多种版本。80年代初,美国国家标准化协会(ANSI),根据C语言问世以来各种版本对C语言的发展和扩充,制定了ANSIC标准(1989年再次做了修订)。本课程以ANSIC新标准来讲解。6C语言的产生背景年份语言名语言特点1960ALGOL60面向问题,离硬件远,不易写系统程序1963CPL(组合程序设计语言)接近硬件,但规模较大,难以实现(剑桥大学)1967BCPL(基本CPL)对CPL的简化(剑桥大学,MatinRichards)1970B进一步简化CPL,并在PDP/7上实现。(贝尔实验室)1972C汲取了BCPL和B优点,克服了缺点。用C编写了UNIX系统90%的代码198787ANSIC这是国际标准化组织87年公布的C语言标准(1989年再次做了修订)7(3)在微机上通常使用的C语言编译系统有TurboC、BorlandC等。Visualc++6.0为了易于以后的c++过渡,本课程上机采用vc++6.0环境。2.C语言的特点C语言同时具有汇编语言和高级语言的优势。(1)语言简洁、紧凑,使用方便、灵活。(2)运算符极其丰富。(3)生成的目标代码质量高,程序执行效率高。(4)可移植性好(较之汇编语言)。(5)可以直接操纵硬件。8二、C语言程序的结构与书写规则1、C语言程序的总体结构一个完整的C语言程序,是由一个main()函数(又称主函数)和若干个其它函数结合而成的,或仅由一个main()函数构成。[例1.1]仅由main()函数构成的C语言程序。#includestdio.hmain(){printf(ThisisaCprogram.\n);}程序运行结果:ThisisaCprogram.输出一个字符串9例1.2:求两个数中的较大数#includestdio.hintmax(intx,inty)/*定义max函数*/{intz;if(xy)z=x;elsez=y;return(z);/*将z的值返回*/}main()/*定义主函数*/{inta,b,c;scanf(%d,%d,&a,&b);c=max(a,b);/*调用max函数*/printf(max=%d,c);/*输出c的值*/}程序运行结果:键盘输入5,9程序输出为max=9101.函数是C语言程序的基本单位。main()函数的作用,相当于其它高级语言中的主程序;其它函数的作用,相当于子程序。2.C语言程序总是从main()函数开始执行。一个C语言程序,总是从main()函数开始执行,而不论其在程序中的位置。当主函数执行完毕时,亦即程序执行完毕。习惯上,将主函数main()放在最前头。112、函数的一般结构任何函数(包括主函数main())都是由函数说明和函数体两部分组成。其一般结构如下:函数返回值的类型函数名(函数参数表){说明语句部分;执行语句部分;}函数首部函数体1.函数首部由函数返回值类型、函数名和函数参数表三部分组成。函数参数表的格式为:数据类型形参1,数据类型形参2……12例如,[例1.2]中的函数max(),其函数说明各部分如图1-1所示。函数返回值的类型函数名函数参数表↓↓↓intmax(intx,inty)图1-1函数首部结构图2.函数体在函数说明部分的下面、大括号(必须配对使用)内的部分。函数体一般由说明语句和可执行语句两部分构成:(1)说明语句部分说明语句部分由变量定义、自定义类型定义、自定义函数说明、外部变量说明等组成。13(2)可执行语句一般由若干条可执行语句构成。图1-2是[例1.2]的main()函数体的示意图。/*主函数main()*/main(){intnum1,num2;printf(Inputthefirstintegernumber:);scanf(%d,&num1);printf(Inputthesecondintegernumber:);scanf(%d,&num2);printf(max=%d\n,max(num1,num2));}图1-2函数体结构示意图函数体变量定义部分可执行语句部分143、源程序书写格式1.所有语句都必须以分号;结束,函数的最后一个语句也不例外。2.程序行的书写格式自由既允许1行内写几条语句,也允许1条语句分写在几行上。3.允许使用注释C语言的注释格式为:/*……*/(1)/*和*/必须成对使用,且/和*、以及*和/之间不能有空格,否则都出错。15例如,main(){intnum1,num2;printf(Inputthefirstintegernumber:);scanf(%d,&num1);printf(Inputthesecondintegernumber:);scanf(%d,&num2);printf(max=%d\n,max(num1,num2));}如果某条语句很长,一般需要将其分写在几行上。16技巧:为避免遗漏必须配对使用的符号,例如注释符号、函数体的起止标识符(花括号)、圆括号等等,在输入时,可连续输入这些起止标识符,然后再在其中进行插入来完成内容的编辑。在起止标识符嵌套时,以及相距较远时,这样做更有必要。(2)注释的位置,可以单占一行,也可以跟在语句的后面。(3)如果一行写不下,可另起一行继续写。(4)注释中允许使用汉字。在非中文操作系统下,看到的是一串乱码,但不影响程序运行。(5)使用//可以在一行内注释。例如:printf(max=%d,c);//输出c的值17三、C语言的语句和关键字(从第4章起将详细介绍)(一)C语言的语句与其它高级语言一样,C语言也是利用函数体中的可执行语句,向计算机系统发出操作命令。按照语句功能或构成的不同,可将C语言的语句分为五类。1.控制语句控制语句完成一定的控制功能。C语言只有9条控制语句,又可细分为三种:(1)选择结构控制语句if()~else~,switch()~(2)循环结构控制语句do~while(),for()~,while()~,break,continue18(3)其它控制语句goto,return2.函数调用语句函数调用语句由一次函数调用加一个分号(语句结束标志)构成。例如,printf(ThisisaCfunctionstatement.);3.表达式语句表达式语句由表达式后加一个分号构成。最典型的表达式语句是,在赋值表达式后加一个分号构成的赋值语句。例如,num=5是一个赋值表达式,而num=5;却是一个赋值语句。4.空语句空语句仅由一个分号构成。显然,空语句什么操作也不执行。19例如,下面就是一个空语句:;5.复合语句复合语句是由大括号括起来的一组(也可以是1条)语句构成。例如:main(){……{……}/*复合语句。注意:右括号后不需要分号。*/……}复合语句的性质:(1)在语法上和单一语句相同,即单一语句可以出现的地方,也可以使用复合语句。(2)复合语句可以嵌套,即复合语句中也可出现复合语句。20(二)关键字C语言的关键字共有32个,根据关键字的作用,可分其为数据类型关键字、控制语句关键字、存储类型关键字和其它关键字四类。(1)数据类型关键字(12个):char,double,enum,float,int,long,short,signed,struct,union,unsigned,void(2)控制语句关键字(12个):break,case,continue,default,do,else,for,goto,if,return,switch,while(3)存储类型关键字(4个):auto,extern,register,static(4)其它关键字(4个):const,sizeof,typedef,volatile21四、VisualC++6.0的基本操作参考实验指导书中的实验一c程序集成开发环境,掌握在visualc++6.0环境中如何:1.编辑、2.编译、3.链接、4.运行一个c程序。注:此时,在多媒体教师机上向学生演示Visualc++上开发一个程序的过程。
本文标题:高级语言程序设计基础c语言
链接地址:https://www.777doc.com/doc-3328813 .html