Presentation is loading. Please wait.

Presentation is loading. Please wait.

杨玉蓓 主讲 武汉工程大学邮电与信息工程学院

Similar presentations


Presentation on theme: "杨玉蓓 主讲 武汉工程大学邮电与信息工程学院"— Presentation transcript:

1 杨玉蓓 主讲 武汉工程大学邮电与信息工程学院 2008.2
C语言程序设计 杨玉蓓 主讲 武汉工程大学邮电与信息工程学院

2 前 言 课程目标: 熟记C语言的基本概念 熟悉Turbo C的上机操作环境 会读、会编、会调试C语言程序 要求:多上机实习

3 让我们来共同回忆 运算器 控制器 存储器 输入设备 硬件 输出设备 计算机系统 操作系统 数据库系统 网络系统 系统软件 程序设计语言
应用软件 操作系统 数据库系统 网络系统 程序设计语言 与语言处理程序 机器语言和汇编语言 高级语言:C语言 、fortran 面向对象程序设计 语言:C++

4 C语言与自然语言的比较 自然语言 C语言 信息交流(地位平等)(有思维、推理能力) 语法规则、句法规则灵活(可省略、可颠倒)
如:走,去晒太阳! 去晒太阳,走! 表达方式多样 人-机对话(命令方式) (无思维、推理能力,具有计算与逻辑判断能力) 语法规则、句法规则固定 (一般不可省略、颠倒,必须按部就班) 如:x=a+b scanf(“%d%d”,a,b); 算法多样

5 学习要点 本科重点 考核方式 熟记C语言的语法、句法 学会算法分析和算法设计 第二章~第八章 平时作业10% 上机考核10% 考勤10%
期末考试7 0%

6 第一章 C语言概述 C语言出现的历史背景(自学) C语言的特点 简单的C程序介绍 C程序的上机步骤

7 1.2 C语言的特点 1、C 语言简洁、紧凑,32个关键字 2、C 有丰富的运算符 3、C 有丰富的数据结构
5、语法限制不太严格,程序设计自由度大 6、C 语言能进行位操作,可以直接对硬件进行操作 7、生成目标代码质量高,程序执行效率高 8、C程序可移植性好 < >

8 1.3 简单的 C 程序介绍 /* example1.1 The first C Program*/
#include <stdio.h> Void main() { printf(“This is a C program.\n”); } 备注 Include的标准 Library信息 定义 main主函数 语句 output: This is a C program. >

9 例1.2 求两个整数之和: } Output: sum is 579 #include <stdio.h>
Void main( ) { int a,b,sum; a=123;b=456; sum=a+b; printf(“sum is %d\n”,sum); } Output: sum is 579 Scanf(“%d,%d”,&a,&b);

10 exp1.3输入两个整数,计算两者较大者的数,并输出。
main() /* 主函数 */ { /* main函数体开始 */ int a,b,c; /*定义变量a,b,c*/ int max(int x,int y); /*定义max()函数*/ scanf("%d,%d",&a,&b); /*调用库函数scanf()给a,b赋值*/ c=max(a,b); /* 调用max,将调用结果赋给c */ printf("max=%d",c); } /* main函数体结束 */ int max(int x,int y) /*定义函数max*/ { /* max函数体开始 */ int z; /*定义变量z */ if(x>y) z=x; else z=y; return z; /* 将z值返回,通过max带回调用处 */ } /* max函数体结束*/ >

11 结构特点 exp1.3输入两个整数,计算两者较大者的数,并输出。 > 函数是组成C语言的基本构件 程序由一个或多个函数组成
必须有且只能有一个主函数main() 一个函数由2个部分组成: 函数首部+函数体 函数体:{ [声明部分] 执行部分 } 程序执行从main开始,在main中结束,其它函数通过嵌套调用得以执行。 C程序书写格式自由 用“;”作为语句终止符 输入输出由库函数完成 /* */为注释,不能嵌套 不产生编译代码 main() /* 主函数 */ { /* main函数体开始 */ int a,b,c; /*定义变量a,b,c*/ int max(int x,int y); /*定义max()函数*/ scanf("%d,%d",&a,&b); /*调用库函数scanf()给a,b赋值*/ c=max(a,b); /* 调用max,将调用结果赋给c */ printf("max=%d",c); } /* main函数体结束 */ int max(int x,int y) /*定义函数max*/ { /* max函数体开始 */ int z; /*定义变量z */ if(x>y) z=x; else z=y; return z; /* 将z值返回,通过max带回调用处 */ } /* max函数体结束*/ >

12 格式特点 优秀程序员的素质之一: 习惯用小写字母,大小写敏感 不使用行号,无程序行概念 可使用空行和空格 常用锯齿形书写格式 main( )
{ int i , j , sum; sum=0; for(i=1; i<10;i++) for(j=1;j<10;j++) sum+=i*j ; } printf(“%d\n”,sum); main( ) { ………………. ……………… ………….. ……… ………. …………… ……………. ………………. ……………….. } 优秀程序员的素质之一: 使用TAB缩进 { }对齐 有足够的注释 有合适的空行 < >

13 1.4 C程序的上机步 一、编辑 二、编译 三、连接 四、运行 运行程序,得到结果 程序代码的录入, 生成源程序*.c 语法分析查错,翻译
file.exe 一、编辑 程序代码的录入, 生成源程序*.c 二、编译 语法分析查错,翻译 生成目标程序*.obj 三、连接 与其它目标程序或库 链接装配,生成可执行 程序*.exe 四、运行 运行程序,得到结果 < >

14 1.4 C程序的上机步骤 源程序 目标程序 可执行程序 内容 程序设计语言 机器语言 可执行 不可以 可以 文件名后缀 .c .obj
.exe < >

15 习 题 一、选择题 1.1 以下______不是C语言的特点。 A)语言的表达能力强 B)语法定义严格
习 题 一、选择题 1.1 以下______不是C语言的特点。 A)语言的表达能力强 B)语法定义严格 C)数据结构系统化 D)控制流程结构化 1.2 C编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的是______。 A)编辑和编译 B)编译和连接 C)连接和运行 D)编辑和运行 1.3 以下______不是二进制代码文件。 A)标准库文件 B)目标文件 C)源程序文件 D)可执行文件

16 1.4 以下不属于流程控制语句的是______。
A)表达式语句 B)选择语句 C)循环语句 D)转移语句 1.5 下面描述中,正确的是______。 A)主函数中的花括号必须有,而子函数中的花括号是可有可无的。 B)一个C程序行只能写一个语句。 C)主函数是程序启动时惟一的入口。 D)函数体包含了函数说明部分。

17 二、填空题 1.6 函数体以符号______开始,以符号______结束。 1.7 一个完整的C程序至少要有一个______函数。 1.8 标准库函数不是C语言本身的组成部分,它是由______提供的功能函数。 1.9 C程序是以______为基本单位,整个程序由______组成。 1.10 C源程序文件的扩展名是______,C目标文件的扩展名是______。 1.11 程序连接过程是将目标程序、______或其他目标程序连接装配成可执行文件。


Download ppt "杨玉蓓 主讲 武汉工程大学邮电与信息工程学院"

Similar presentations


Ads by Google