1、C C语言程序设计语言程序设计中国地质大学计算机学院张求明主讲E mail:课程安排课程安排讲授课时:讲授课时:40 实习课时:实习课时: 16使用教材:使用教材:C程序设计(第四版),谭浩强程序设计(第四版),谭浩强实习教材:实习教材: C程序设计实践指导书,何兴恒等程序设计实践指导书,何兴恒等 第一章第一章 计算机语言与计算机语言与C C语言概述语言概述 1.1 1.1 计算机语言概念计算机语言概念 计算机语言定义计算机语言定义 计算机能够识别和接受的语言。计算机能够识别和接受的语言。 要使计算机按自己的意图工作,要使计算机按自己的意图工作,必须使用计算机所能接受、理解和必须使用计算机所能
2、接受、理解和执行的指令指挥计算机工作。执行的指令指挥计算机工作。 计算机语言的种类计算机语言的种类 机器语言机器语言 低级语言低级语言 汇编语言汇编语言 (面向计算机面向计算机) BASIC 入门语言入门语言 F77 科学计算科学计算 高级语言高级语言 Foxpro 数据库管理数据库管理 (面向问题面向问题 ) C 多用途多用途 计算机语言机器语言机器语言 最早问世,用二进制代码构成指令。最早问世,用二进制代码构成指令。 如:如: 100000 100000 (+ +) 110000 110000 (- -) 用机器语言编程的缺点:用机器语言编程的缺点: 繁琐、不直观、不易调试。繁琐、不直观、
3、不易调试。 如计算如计算y=2xy=2x2 2+3x-1+3x-1需要七八条指令。需要七八条指令。 移植性差。移植性差。 依赖于计算机。依赖于计算机。 汇编语言汇编语言 用符号构成指令,如:用符号构成指令,如:MOVMOV、ADDADD 用汇编语言编程:用汇编语言编程: 相对直观,但仍繁琐,仍是面向计算相对直观,但仍繁琐,仍是面向计算机的语言。机的语言。 汇编语言是计算机间接接受的语言汇编语言是计算机间接接受的语言高级语言高级语言与低级语言相比,有根本性的区别: 是面向问题的语言。高级语言的一条指令(语句): y=2*x*x+3*x-1; 对应于:y=2x2+3x-1 y=sin(x); 对应
4、于:y=sinx用高级语言编程:用高级语言编程:直观、易懂、移植性好(不依赖于具体计算机)上机运行高级语言程序需经过编译: 编译 执行 要上机完成一个计算问题,主要的任务就是用高级语言编写出相应的源程序。即至少要学会一种计算机语言。 高级语言源程序 机器指令目的程序结果编译程序1.2 C1.2 C语言的特点语言的特点 集高级语言和低级语言的优点于一身: 能实现低级语言的大部分功能(如直接访问内存物理地址、进行位操作等)。 图形功能强。 运算符和数据结构丰富。 语法限制不太严格,程序设计自由度大。 生成目标代码质量高,程序执行效率高。 1.3 1.3 简单的简单的C C程序介绍程序介绍 例1:
5、main()main() 主函数说明 程序框架 printf(“abcdefprintf(“abcdef”);”); 函数体 语句 程序的功能是输出字符串:abcdef 例2:求两数之和。main() int a,b,c; a a=100; b=50; b c=a+b; c printf(“n c=%d”,c);程序运行结果:c=150 例例3 3:求两数中的最大值。:求两数中的最大值。 函数类型函数类型 函数名函数名 形参形参main() int max (int x,int y) int a,b,c; int z; scanf(“%d,%d”,&a,&b); if(xy) z=x; c=m
6、ax(a,b); else z=y; printf(“nmax is:%d”,c); return(z); a x b y c z (两个函组成)353555 总结上例可知:总结上例可知:(1 1) C C程序程序由函数构成由函数构成。(2 2) 函数由两部分组成:函数由两部分组成: 函数说明函数说明部分:函数名、函数类型、形部分:函数名、函数类型、形参名、形参类型。参名、形参类型。 函数体函数体:实现函数的具体操作;由语句:实现函数的具体操作;由语句构成。构成。(3 3) 程序总是程序总是从从mainmain函数函数开始执行。开始执行。(4 4) 书写格式自由。书写格式自由。(5 5)语句必须有分号。)语句必须有分号。 :