《Cha_1_C语言概述》由会员分享,可在线阅读,更多相关《Cha_1_C语言概述(23页珍藏版)》请在金锄头文库上搜索。
1、E-mail: 1第一节 C语言出现的历史背景第二节 C语言的特点第三节 简单的C程序第四节 C程序的上机步骤2机器语言机器语言汇编语言汇编语言补充:计算机语言高级语言高级语言二进制指令,可直接应二进制指令,可直接应用于裸机用于裸机符号化了的机器语言符号化了的机器语言接近于自然语言,如接近于自然语言,如C语语言、言、Basic语言等语言等面向过程面向过程如,如,C语言语言面向对象面向对象如,如,C3第一节第一节C语言出现的历史背景语言出现的历史背景CPLCPL语言语言BCPLBCPL语言语言B B语言语言C C语言语言C+C+语言语言规模较大,难以实现规模较大,难以实现无数据类型无数据类型接近
2、硬件,但过于简接近硬件,但过于简单,功能有限单,功能有限用其编写了用其编写了UNIXUNIX操作系统操作系统功能更强大,面向对象功能更强大,面向对象ALGOL60ALGOL60面向问题,离硬件较远面向问题,离硬件较远19601963196719701972 20 世纪世纪80年代年代4语言简洁、紧凑,使用灵活语言简洁、紧凑,使用灵活3232个关键字,个关键字,9 9种控制语句种控制语句书写格式自由书写格式自由运算符丰富运算符丰富3434种运算符种运算符丰富的数据类型丰富的数据类型整型、实型、字符型,枚举型整型、实型、字符型,枚举型数组、指针、结构体、共用体,空类型数组、指针、结构体、共用体,空
3、类型具有结构化控制语句具有结构化控制语句9条控制语句条控制语句第二节第二节C语言的特点语言的特点5语法限制不严格,设计自由度大。语法限制不严格,设计自由度大。如,对数组下标如,对数组下标“越界越界”不作检查等不作检查等“限制限制”与与“灵活灵活”是一对矛盾是一对矛盾C语言能实现汇编语言的大部分功能。语言能实现汇编语言的大部分功能。如,位操作、可直接对硬件进行访问如,位操作、可直接对硬件进行访问被称为被称为“中级语言中级语言”生成目标代码质量高,执行效率高。生成目标代码质量高,执行效率高。比比“汇编语言汇编语言”低低10%20%可移植性好。可移植性好。能用于不同型号的计算机能用于不同型号的计算机
4、能应用于不同操作系统能应用于不同操作系统6s 程序一程序一s 程序二程序二s 程序三程序三s 程序的结构程序的结构第三节简单第三节简单C程序介绍程序介绍7s程序一程序一main( )main( ) intint a,b,sum; a,b,sum; a=653; a=653; b=-17; b=-17; sum=a+b; sum=a+b; printf(Sumprintf(Sum is %dn,sum); is %dn,sum); 8s程序二程序二intint max(intmax(int x,intx,int y) y) intint z; z; if(x=y) z=x; if(x=y) z=
5、x; else z=y; else z=y; return(z); return(z); main( )main( ) intint a,b,c; a,b,c; scanf(%d%d,&a,&bscanf(%d%d,&a,&b);); c=max(a,b); c=max(a,b); printf(”%dn,cprintf(”%dn,c);); 9s程序三程序三/*/*两个整数相加两个整数相加* */ /intint add(intadd(int x,intx,int y) y) intint z; z; z=x+y; z=x+y; return(z); return(z); /*/*两个整数相
6、乘两个整数相乘* */ /intint mul(intmul(int x,intx,int y) y) intint z; z; z=x*y; z=x*y; return(z); return(z); main( )main( ) intint a,b,c,d; a,b,c,d;scanf(%d%d,&a,&bscanf(%d%d,&a,&b););c=add(a,b); c=add(a,b); d=d=mul(a,bmul(a,b););printf(”%d+%dprintf(”%d+%d=%dn,a,b,c);=%dn,a,b,c);printf(”%dprintf(”%d*%d=%dn,
7、a,b,d);*%d=%dn,a,b,d); 10s程序的结构程序的结构 C C程序由函数构成,这些函数既可以放在一个文程序由函数构成,这些函数既可以放在一个文件中,也可以放在几个文件中件中,也可以放在几个文件中。在若干函数中在若干函数中有有且只能有一个且只能有一个mainmain函数,程序的执行总是从函数,程序的执行总是从mainmain函数开始,执行完函数开始,执行完mainmain函数返回系统函数返回系统。 一个函数由两个部分组成一个函数由两个部分组成: 函数头:函数头:存储类型数据类型函数名(参数及类型说明)存储类型数据类型函数名(参数及类型说明) 函数体:函数体: 变量的定义变量的定
8、义执行部分执行部分 11s程序的结构(续)程序的结构(续)以以/* */* */之间的内容是注释,不影响程序的之间的内容是注释,不影响程序的执行,可增加程序的可读性执行,可增加程序的可读性。书写格式自由书写格式自由:一般用小写字母;语句以一般用小写字母;语句以分号分号结结束,分号是语句的必要组成部分;一行上可以写束,分号是语句的必要组成部分;一行上可以写几条语句,一条语句也可以写在几行上。几条语句,一条语句也可以写在几行上。 C C语言本身不带输入输出语句,必须通过调用库语言本身不带输入输出语句,必须通过调用库函数来实现输入输出函数来实现输入输出。12编辑编译连接运行.c.exe.obj有错编
9、辑程序编译程序连接程序源程序目标程序可执行程序结果第四节第四节C程序的上机步骤程序的上机步骤13附:Visual C+6.0 环境使用说明151、启动Visual C+6.0Microsof Visual C+6.0162、建一个新工程Win32 Console Application输入工程名输入工程名173、“An empty project”184、工程的“File View”195、新建源文件(.cpp)206、输入源程序217、编译、连接和运行编译编译连接连接运行运行22编译、连接和运行工具栏Compile(Ctrl+F7)Build(F7)BuildExecute(Ctrl+F5)23