我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:藏宝阁 > 第一代语言 >

第一章 高级语言程序设计

归档日期:07-03       文本归类:第一代语言      文章编辑:爱尚语录

  第一章 高级语言程序设计_PPT模板_实用文档。高级语言程序设计(1) 高级语言程序设计( 河南工业大学 信息科学与工程学院 必须弄清楚的问题: 必须弄清楚的问题: 我们为什么要学习程序设计语言? 我们为什么要学习程序设计语言? 我们怎样学习

  高级语言程序设计(1) 高级语言程序设计( 河南工业大学 信息科学与工程学院 必须弄清楚的问题: 必须弄清楚的问题: 我们为什么要学习程序设计语言? 我们为什么要学习程序设计语言? 我们怎样学习程序设计语言? 我们怎样学习程序设计语言? 我们为什么学习C语言? 我们为什么学习 语言? 语言 河南工业大学 信息科学与工程学院 我们为什么要学习程序设计语言? 我们为什么要学习程序设计语言? 可以连续执行的一条条指令的集合称为程序。 可以连续执行的一条条指令的集合称为程序。 可以说,程序就是人与计算机进行对话的语言, 可以说,程序就是人与计算机进行对话的语言, 也即我们常说的“程序设计语言” 也即我们常说的“程序设计语言”。 计算机本身并不能直接识别有高级程序语言编 写的程序,它只能接受和处理由 和 的代码构 写的程序,它只能接受和处理由0和1的代码构 成的二进制指令或数据。 成的二进制指令或数据。 河南工业大学 信息科学与工程学院 怎样学习程序设计语言 The only way to learn a new programming language is by writing programs in it. Our aim is to show the essential elements of the language in real programs, but without getting bogged down in details, rules. 河南工业大学 信息科学与工程学院 我们为什么学习C语言? 语言? C语言是国际上广泛流行的、很有发展前途的计 语言是国际上广泛流行的、 算机高级语言。 算机高级语言。 它适合于作为系统描述语言,既用来写系统软件, 它适合于作为系统描述语言,既用来写系统软件, 也可用来写应用软件。 也可用来写应用软件。 河南工业大学 信息科学与工程学院 1.1 C语言出现的历史背景 C语言的发展源于人们希望用高级语言编写操作系统。 语言的发展源于人们希望用高级语言编写操作系统。 语言的发展源于人们希望用高级语言编写操作系统 语言是第三代语言( 面向过程的高级语言, 第一代: C 语言是第三代语言 ( 面向过程的高级语言 , 第一代 : 机器语言;第二代:汇编语言) 机器语言;第二代:汇编语言) C语言是在 语言的基础上发展起来的,它的根源可以追 语言是在B语言的基础上发展起来的 语言的基础上发展起来的, 溯到ALGOL 60。 溯到 。 1972年至 年至1973年间 贝尔实验室的 年间,贝尔实验室的 年至 年间 贝尔实验室的D.M.Ritchie在B语言的 在 语言的 基础上设计出了C语言( 的第二个字母) 基础上设计出了C语言(取BCPL的第二个字母)。 的第二个字母 河南工业大学 信息科学与工程学院 1.2 C语言的特点 1.语言简洁、紧凑,使用方便、灵活 语言简洁、紧凑,使用方便、 语言一共只有32 个关键字( 见附录II), 32个关键字 II),9 C 语言一共只有 32 个关键字 ( 见附录 II),9 种控制语 程序书写形式自由, 句,程序书写形式自由,主要用小写字母表示 2·运算符丰富 的运算符包含的范围很广泛,共有34 34种运算符 C的运算符包含的范围很广泛,共有34种运算符 见附录III III) 把括号、 赋值、 ( 见附录 III ) 。 C 把括号 、 赋值 、 强制类型转换 等都作为运算符处理。从而使C 等都作为运算符处理。从而使C的运算类型极其丰 表达式类型多样化, 富,表达式类型多样化,灵活使用各种运算符可以 实现在其它高级语言中难以实现的运算。 实现在其它高级语言中难以实现的运算。 河南工业大学 信息科学与工程学院 1.2 C语言的特点 3·数据结构丰富 的数据类型有:整型、实型、字符型、 C 的数据类型有 : 整型 、 实型 、 字符型 、 数组类 指针类型、结构体类型、共用体类型等。 型 、 指针类型 、 结构体类型 、 共用体类型等 。 能 用来实现各种复杂的数据结构(如链表、 用来实现各种复杂的数据结构 ( 如链表 、 树 、 栈 的运算。 等)的运算。 句、whi1e语句、do…whi1e语句、for语句)。 whi1 语句、do…whi1 语句、for语句) 语句 用函数作为程序模块以实现程序的模块化。 用函数作为程序模块以实现程序的模块化 。 是结构化的理想语言,符合现代编程风格要求。 是结构化的理想语言,符合现代编程风格要求。 具有结构化的控制语句( if...else语 ...else 4·具有结构化的控制语句(如if...else语 语法限制不大严格,程序设计自由度大. 5.语法限制不大严格,程序设计自由度大. 河南工业大学 信息科学与工程学院 1.2 C语言的特点 6.C语言允许直接访问物理地址 能进行位(bit)操作, 能进行位 ( bit ) 操作 , 能实现汇编语言的大部 分功能,可以直接对硬件进行操作,因此C 分功能 , 可以直接对硬件进行操作 , 因此 C 既具有 高级语言的功能,又具有低级语言的许多功能, 高级语言的功能 , 又具有低级语言的许多功能 , 可 用来写系统软件。 用来写系统软件。 7 . 生成目标代码质量高 , 程序执行效率高 。 生成目标代码质量高,程序执行效率高。 语言写的程序可移植性好( 8 . 用 C 语言写的程序可移植性好 ( 与汇编 语言比) 语言比)。 基本上不作修改就能用于各种型号的计算机和 各种操作系统 河南工业大学 信息科学与工程学院 1.3 简单的C程序介绍 简单的C 例1.1 主函数:每个 语言程序都 主函数:每个C语言程序都 必须有一个main函数,它是 函数, 必须有一个 函数 每一个C语言程序的执行起 每一个 语言程序的执行起 始点(入口点)。 始点(入口点)。 void main() { printf(“This is a C program.\n”) ; “ ” } main的函数体:main函 的函数体: 的函数体 函 数中的所有操作( 数中的所有操作(或:语 都在这一对{}之间 之间。 句)都在这一对 之间。 也就是说main函数的所 也就是说 函数的所 有操作都在main函数体 有操作都在 函数体 中。 语句:执行某种功能的指令。 语句:执行某种功能的指令。 C语言的每条语句都用“;” 语言的每条语句都用“ 语言的每条语句都用 作为结束标志。 作为结束标志。 一个函数中可以有多条语句。 一个函数中可以有多条语句。 河南工业大学 信息科学与工程学院 练习1: 编写一个程序,分行输出你的姓名、 编写一个程序,分行输出你的姓名、电话 地址。 和EMAIL地址。 地址 河南工业大学 信息科学与工程学院 例1.2 1 #include stdio.h 2 main( ) 3{ 4 5 6 7 8 9} int a,b,c; a=20; b=30; c=a+b; printf(%d\n,c); //预编译命令 将标准输入输出函数 预编译命令,将标准输入输出函数 预编译命令 //作为头文件包扩到用户源文件中 作为头文件包扩到用户源文件中 //主函数,名为main, 主函数,名为 , 主函数 //函数体 开始 函数体.开始 函数体 //声明部分 定义变量类型 声明部分.定义变量类型 声明部分 //执行部分 赋值语句 执行部分.赋值语句 执行部分 //执行部分 赋值语句 执行部分.赋值语句 执行部分 //执行部分 赋值语句 执行部分.赋值语句 执行部分 //执行部分 输出语句 执行部分.输出语句 执行部分 //函数体结束 函数体结束 河南工业大学 信息科学与工程学院 printf函数(格式输出函数) 函数(格式输出函数) 功能: 功能: 按照用户指定的格式, 按照用户指定的格式,向系统隐含的输出设备 终端)输出若干个任意类型的数据。 (终端)输出若干个任意类型的数据。 一般格式: 一般格式: printf(格式控制字符串,输出表列 ; 格式控制字符串, 格式控制字符串 输出表列) printf(“%c,% \n”,a,b); ( ,%d\ ” ,% ) 河南工业大学 信息科学与工程学院 练习2: 已知长方形的长a=3,宽b=4,编写一个程序, 宽 已知长方形的长 ,编写一个程序, 输出该长方形的面积。 输出该长方形的面积。 河南工业大学 信息科学与工程学院 main() [例1.3]从键盘输入两个整数,在屏幕上输出它们的 例 从键盘输入两个整数, 从键盘输入两个整数 最大值。 最大值。 int max(int x,int y) { int z; ; if (xy) z = x; x; else z = y; ; return z; ; } { int a,b,c; ; scanf(%d, %d, &a, &b); ; c = max(a, b); ; printf(max = %d, c); ; } 河南工业大学 信息科学与工程学院 scanf函数(格式输入函数) 函数(格式输入函数) scanf函数可用来输入任何类型的多个数据。 scanf函数可用来输入任何类型的多个数据。 函数可用来输入任何类型的多个数据 一般形式: 一般形式: scanf(格式控制,地址表列) scanf(格式控制,地址表列) scanf( scanf(”%d%d%d”,&a,&b,&c); ,&a,&b,&c) 河南工业大学 信息科学与工程学院 练习3: 编写任意两个整数相加的程序, 编写任意两个整数相加的程序,数据由主 函数main提供,相加功能由 提供, 函数实现。 函数 提供 相加功能由add函数实现。 函数实现 河南工业大学 信息科学与工程学院 说明: 说明: 1、C程序是由函数构成的 一个C 源程序至少 包含一个函数( 至少包含一个函数 一个 C 源程序 至少 包含一个函数 ( main 函数) 也可以包含一个main 和若干其他函数。 main和若干其他函数 函数 ) , 也可以包含一个 main 和若干其他函数 。 C的函数相当于其它语言中的子程序。用函数来 的函数相当于其它语言中的子程序。 实现特定的功能。 可以说C 是函数式的语言。 实现特定的功能 。 可以说 C 是函数式的语言 。 程序全部工作都是由函数来完成的。 程序全部工作都是由函数来完成的。 C的这种特点使得容易实现程序的模块化 河南工业大学 信息科学与工程学院 2.一个函数由两部分组成 函数的说明部分。 包括函数名、函数类型、 (1) 函数的说明部分 。 包括函数名 、 函数类型 、 函数属性、函数参数(形参) 函数属性、函数参数(形参)名、形式参数类型 函数体,即函数说明部分下面的大括弧{ (2)函数体,即函数说明部分下面的大括弧{…} 内的部分。如果一个函数内有多个大括弧, 内的部分 。 如果一个函数内有多个大括弧 , 则最 外层的一对{ 为函数体的范围。 外层的一对{ }为函数体的范围。 函数体一般包括: 函数体一般包括: ①变量定义。 变量定义。 ②执行部分。由若干个语句组成 执行部分。 河南工业大学 信息科学与工程学院 3.一个C程序总是从main函数开始执行的,而不论 一个C程序总是从main函数开始执行的 总是从main函数开始执行 main函数在整个程序中的位置如何 main函数在整个程序中的位置如何 4.C程序书写格式自由,一行内可以写几个语句, 程序书写格式自由,一行内可以写几个语句, 一个语句可以分写在多行上人程序没有行号 5.每个语句和数据定义的最后必须有一个分号。分 每个语句和数据定义的最后必须有一个分号。 分号 号是C语句的必要组成部分。 号是C语句的必要组成部分。 6.C语言本身没有输入输出语句。输入和输出的操 语言本身没有输入输出语句。 作是由库函数scanf和printf等函数来完成. 库函数scanf 等函数来完成 作是由库函数scanf和printf等函数来完成. 7.可以用/*……*/对C程序中的任何部分作注释 可以用/ * 河南工业大学 信息科学与工程学院 1.4 C程序的上机步骤 1、基本概念 、 程序:为了使计算机能按照人们的意志工作, 程序:为了使计算机能按照人们的意志工作, 就要根据问题的要求,编写相应的程序。 就要根据问题的要求,编写相应的程序。程序是一 组计算机可以识别和执行的指令, 组计算机可以识别和执行的指令,每一条指令使计 算机执行特定的操作。 算机执行特定的操作。 源程序:程序可以用高级语言或汇编语言编写, 源程序:程序可以用高级语言或汇编语言编写, 用高级语言或汇编语言编写的程序称为源程序。 用高级语言或汇编语言编写的程序称为源程序。C 程序源程序的扩展名为.c 程序源程序的扩展名为 河南工业大学 信息科学与工程学院 1.4 C程序的上机步骤 目标程序:源程序经过“编译程序” 目标程序:源程序经过“编译程序”翻 译所得到的二进制代码称为目标程序。 译所得到的二进制代码称为目标程序。目 标程序的扩展名为“ 标程序的扩展名为“.obj” 。 ” 可执行程序:目标程序与库函数连接, 可执行程序:目标程序与库函数连接, 形成的完整的可在操作系统下独立执行的 程序称为可执行程序。 程序称为可执行程序。可执行程序的扩展 名为“ 环境下)。 名为“.exe”(在dos/windows环境下 。 ”在 环境下 河南工业大学 信息科学与工程学院 1.4 C程序的上机步骤 输入与编辑 源程序 编译源程序 输入与 编辑源程序 编译 源程序 , 产生目 编辑 源程序→编译 源程序, 标代码→连接 各个目标代码 库函数, 标代码 连接各个目标代码 、 库函数 , 产 连接 各个目标代码、 生可执行程序→运行程序。 生可执行程序 运行程序。 运行程序 河南工业大学 信息科学与工程学院 开开 编编 Y 源源源 f.c 编编 有有? N Y 目目源源 f.obj Y 连连 有有? N 函函函 可可可 源源 f.exe 可可 有有? N 结结 图1.1 C源源程程程程程 河南工业大学 信息科学与工程学院 2007.4计算机二级考试试题 1.以下叙述中错误的是 ) 以下叙述中错误的是( 以下叙述中错误的是 A)计算机不能直接执行用C语言编写的源程序 )计算机不能直接执行用 语言编写的源程序 B)C程序经 编译程序编译后,生成后缀为 ) 程序经 编译程序编译后,生成后缀为.Obj 程序经C编译程序编译后 的文件是一个二进制文件 C)后缀为.Obj 的文件,经连接程序生成后缀为 )后缀为 的文件,经连接程序生成后缀为. exe 的文件是一个二进制文件 D)后缀为.obj 和.exe 的二进制文件都可以直接 )后缀为 运行 河南工业大学 信息科学与工程学院 2.以下叙中错误的是( ) 以下叙中错误的是( 以下叙中错误的是 A)C语言是一种结构化程序设计语言 )C语言是一种结构化程序设计语言 )C B)结构化程序由顺序、分支、循环三种基本 )结构化程序由顺序、分支、 结构组成 C)使用三种基本结构构成的程序只能解决简 ) 单问题 D)结构化程序设计提倡模块化的设计方法 ) 河南工业大学 信息科学与工程学院 3.对于一个正常运行的C程序,以下叙述中 对于一个正常运行的C程序, 对于一个正常运行的 正确的是( 正确的是( ) A)程序的执行总是从main函数开始,在 )程序的执行总是从 函数开始, 函数开始 main函数结束 函数结束 B)程序的执行总是从程序的第一个函数开始, )程序的执行总是从程序的第一个函数开始, 在main函数结束 函数结束 C)程序的执行总是从 函数开始, )程序的执行总是从main函数开始,在程 函数开始 序的最后一个函数中结束 D)程序的执行总是从程序中的第一个函数开 ) 始,在程序的最后一个函数中结束 河南工业大学 信息科学与工程学院 作业: 作业: 1、下面程序的输出结果是什么? 下面程序的输出结果是什么? main() { printf(I am studying); printf(The C programming Language.); printf(\n); } 2、改正下面程序中的错误 main() { int a,b a=10; b=a*9; printf(B= \n,B) } 河南工业大学 信息科学与工程学院 3、编写一个程序,求出半径r= 的圆 编写一个程序,求出半径r=2.5的圆 r= 的周长和面积。 的周长和面积。 4、计算上底为a,下底为b,高为h的 计算上底为a,下底为b,高为h a,下底为b,高为 梯形面积,其中,a、b、h的值由用户 梯形面积,其中,a、b、h的值由用户 ,a、b、h 从键盘上输入。 从键盘上输入。 河南工业大学 信息科学与工程学院

本文链接:http://kuenergyclub.com/diyidaiyuyan/590.html