第1章 C语言程序设计概述
合集下载
C语言程序设计概述
⑶用C语言编程时,建议一行写一条语句,遇到复合语句向右缩进,必要时 对程序加上注释行。这样写出的源程序结构清楚、易于阅读、调试、维护和 修改。
§1.2 简单C语言程序的结构和格式
四、标识符与关键字
1.标识符 在程序中用来标识变量名、符号常量名、函数名、数组名和文件名等的
有效字符序列统称为标识符。除库函数的函数名由系统定义外,其余都由用 户自己定义。C语言规定,标识符只能由字母(A~Z,a~z)、数字(0~9) 和下定划义线标“识_符”时组建成议,遵且循第如一下个原字则符:必须为字母或下划线。
main()
内容的不同,程序也就各自具有了不同
{
的功能。事实上,任何一个C语言程序,
int eng,c_pro,math;
main()函数都是不可缺少的。main()函
int total;
数的一般结构为:
eng=90;c_pro=96;math=92;
total=sum(eng,c_pro,mathm)a;in()
⑴在标识符中,大小写是有区别的,如max和MAX是两个不同的标识符。 2.在关以定键下义字标标识识符符是时合,法变的量:名、函数名等尽量用小写,符号常量用大写。
a,⑵PI标,准s1C2不3,限_制ad标d,识n符am的e_长1 度,但它受各种版本的C语言编译系统的限制, 同关时键也字受又到称具保体留机字器,的是限C制语。言例规如定在的某具些有版特本定中意规义定的标字识符符串前,八如位标有准效输,当 入输两出以个函下标数标识名识符s符前ca是八nf非位和法相p的r同i:n时tf,、则控被制认命为令是字同if一、个wh标il识e等符都。是因系此统,的在关编键写字程。序时, 应4了5D解所用系统对不标允识许符以长数度字的开规头定,以免出现错误。
§1.2 简单C语言程序的结构和格式
四、标识符与关键字
1.标识符 在程序中用来标识变量名、符号常量名、函数名、数组名和文件名等的
有效字符序列统称为标识符。除库函数的函数名由系统定义外,其余都由用 户自己定义。C语言规定,标识符只能由字母(A~Z,a~z)、数字(0~9) 和下定划义线标“识_符”时组建成议,遵且循第如一下个原字则符:必须为字母或下划线。
main()
内容的不同,程序也就各自具有了不同
{
的功能。事实上,任何一个C语言程序,
int eng,c_pro,math;
main()函数都是不可缺少的。main()函
int total;
数的一般结构为:
eng=90;c_pro=96;math=92;
total=sum(eng,c_pro,mathm)a;in()
⑴在标识符中,大小写是有区别的,如max和MAX是两个不同的标识符。 2.在关以定键下义字标标识识符符是时合,法变的量:名、函数名等尽量用小写,符号常量用大写。
a,⑵PI标,准s1C2不3,限_制ad标d,识n符am的e_长1 度,但它受各种版本的C语言编译系统的限制, 同关时键也字受又到称具保体留机字器,的是限C制语。言例规如定在的某具些有版特本定中意规义定的标字识符符串前,八如位标有准效输,当 入输两出以个函下标数标识名识符s符前ca是八nf非位和法相p的r同i:n时tf,、则控被制认命为令是字同if一、个wh标il识e等符都。是因系此统,的在关编键写字程。序时, 应4了5D解所用系统对不标允识许符以长数度字的开规头定,以免出现错误。
第1章 C语言概述
什么是计算机语言
计算机语言:人和计算机交流和沟通的工 具、计算机和人都能识别的语言。
计算机语言发展阶段:
– 机器语言(由0和1组成的指令) – 符号语言(用英文字母和数字表示指令) – 高级语言(接近于人的自然语言和数学语言)
• 面向过程的语言 (非结构化的语言、结构化语言)
• 面向对象的语言
习题讲解
例: 关于标识符,下列说法不正确的是() A.库函数名称为预定义标识符,不建议用作用户 自定义标识符 B.关键字不能作为用户自定义标识符 C.用户自定义标识符中不区分英文字母大小写 D.标识符中可以出现下划线,且可以出现在标识 符的任何位置。
习答案:C题讲解
习题讲解
例: 以下可以作为C语言自定义标识符的一组是: A.void return if B.printf include fabs C.Max _abc Main D.2abc pay$ sum-10
字符常量:如’?’ – 转义字符:如’\n’
字符串常量:如”boy” 符号常量:#define PI 3.1416
练习
以下四个选项中哪个是合法的实型常量 A.+1e+1 5e-9.4 B.-.60 12e-4 -8e C.123e 2e-4 +2e-1 D.-e3 0.8e-4 5.e-7
答案:操作系统是最基本的系统软件,是对硬 件机器的首次扩充,因此不是应用软件,B
习题讲解
机器语言是计算机唯一能够直接识别并接受的语言。 高级语言编写的程序必须先经过翻译或者编译才能 够生成机器语言,才可以在计算机上直接执行。
二、下面叙述中错误的是: A.程序设计是指设计、编制和调试程序的过程 B.程序设计语言的基本功能就是描述数据和对数据
C语言程序设计 第一章C语言概述
7.允许直接访问物理地址,能进行位(bit)操作
8.目标代码质量好,程序执行效率高
9.可移植性好
1.2 c语言的基本语法成分
1.C语言字符集:字符是C语言的最基本的元素,C语言字符 集由字母、数字、空白、标点和特殊字符组成(在字符串 常量和注释中还可以使用汉字等其它图形符号)。由字符 集中的字符可以构成C语言进一步的语法成分(如,标识 符,关键词,运算符等)
2.标识符 标识符用来标识变量名、符号常量名、函数名、
类型名、文件名等的有效字符序列。
3.关键字 C语言中一些具有特殊意义的标识符称为关键字。
这些关键字在任何时候都不得用作变量名、符号常量 名、函数名、类型名、文件名等。
4.运算符: 运算符将常量、变量、函数连接起来组成表达式,
表示各种运算。
5.分隔符:分号,空格。起分隔、间隔作用。
int x, y; /*对形参x、y作类型定义*/
{ int z;
/*max函用到的变量z,也要加以定义*/
z=y;
if (x>y) z=x;
return (z); /*将z的值返回,通过max带回调用处*/
}
通过分析,初步看出:
1. C程序全部由一个一个的函数构成。至少有一个 主函数main ( ), 其它函数可被主函数调用或相 互调用。其它函数可为C 函数库中函数,也可为自
1.1 c语言的特点 1.2 c语言的基本语法成分 1.3 c语言的程序结构
1.1 C语言的特点
C语言是在B语言的基础上发展起来的一种中级语 言。它具有高级语言和低级语言(汇编语言)双重功能的 特点,被广泛用于系统软件和应用软件的开发,成为目 前生命力最旺盛的高级语言之一。其主要特点有:
1.C语言源程序由多个相互独立的函数组成 2.语言简洁、紧凑,使用方便、灵活
8.目标代码质量好,程序执行效率高
9.可移植性好
1.2 c语言的基本语法成分
1.C语言字符集:字符是C语言的最基本的元素,C语言字符 集由字母、数字、空白、标点和特殊字符组成(在字符串 常量和注释中还可以使用汉字等其它图形符号)。由字符 集中的字符可以构成C语言进一步的语法成分(如,标识 符,关键词,运算符等)
2.标识符 标识符用来标识变量名、符号常量名、函数名、
类型名、文件名等的有效字符序列。
3.关键字 C语言中一些具有特殊意义的标识符称为关键字。
这些关键字在任何时候都不得用作变量名、符号常量 名、函数名、类型名、文件名等。
4.运算符: 运算符将常量、变量、函数连接起来组成表达式,
表示各种运算。
5.分隔符:分号,空格。起分隔、间隔作用。
int x, y; /*对形参x、y作类型定义*/
{ int z;
/*max函用到的变量z,也要加以定义*/
z=y;
if (x>y) z=x;
return (z); /*将z的值返回,通过max带回调用处*/
}
通过分析,初步看出:
1. C程序全部由一个一个的函数构成。至少有一个 主函数main ( ), 其它函数可被主函数调用或相 互调用。其它函数可为C 函数库中函数,也可为自
1.1 c语言的特点 1.2 c语言的基本语法成分 1.3 c语言的程序结构
1.1 C语言的特点
C语言是在B语言的基础上发展起来的一种中级语 言。它具有高级语言和低级语言(汇编语言)双重功能的 特点,被广泛用于系统软件和应用软件的开发,成为目 前生命力最旺盛的高级语言之一。其主要特点有:
1.C语言源程序由多个相互独立的函数组成 2.语言简洁、紧凑,使用方便、灵活
第1章_C语言概述(C语言程序设计)
通过以上例子可以看出: 通过以上例子可以看出: 1. C程序是由函数构成的。每个程序由一个或多个函数组成, 程序是由函数构成的。每个程序由一个或多个函数组成, 程序是由函数构成的 其中必须有且仅有一个主函数main( )。 有且仅有一个主函数 其中必须有且仅有一个主函数 。 2. 一个可执行的 语言程序总是从 一个可执行的C语言程序总是从main函数开始执行,而不 函数开始执行, 语言程序总是从 函数开始执行 论其在整个程序中的位置如何。 论其在整个程序中的位置如何。 3. C对输入输出实行函数化。 对输入输出实行函数化。 对输入输出实行函数化 4. C程序书写格式自由,一行内可以写几个语句,一个语句 程序书写格式自由,一行内可以写几个语句, 程序书写格式自由 也可以分写在多行上。 也可以分写在多行上。 5. 可用 可用/*……*/对C程序中的任何部分作注释,注释可以写在 对 程序中的任何部分作注释 程序中的任何部分作注释, 程序的任何位置上, 也可不在同一行上。 程序的任何位置上,“/*”与“*/”也可不在同一行上。 与 也可不在同一行上 6. 在C语言中,大小写字母是有区别的。( 语言习惯用小 语言中, 。(C语言习惯用小 语言中 大小写字母是有区别的。( 写字母) 写字母)
主函数
main( ) { int x, y, z; printf(“Please input two integers:\n”) ; scanf(“%d%d” , &x, &y); z = add_xy(x, y); printf(“%d %d %d.”, x, y, z); }
西南林学院计科系
第 1章 概述
西南林学院计科系
第 1章 概述
将汇编源程序翻译为目标程序(机器语言)的过程称 为汇编 汇编。 汇编 连接的原因是由于在目标程序中还可能要调用一些 连接 标准程序库中的标准子程序或其他自定义函数等,由于 这些程序还没有连接成一个整体,因此,需通过“连接 程序”将目标程序和有关的程序库组合成一个完整的 “可执行程序”。
C语言第一章
C语言程序设计
第一章 C语言概述
第1章 C语言概述
C语言发展历史 简单的C程序介绍 C语言数据类型概述
C语言程序设计
第一章 C语言概述
1.1 C语言的出现和发展历史
• 程序设计语言的发展
机 器 语 言
汇 编 语 言
高 级 语 言
面向过程
面向对象
用助记符号描述的指令系统,可进行地址、位操作 可读性,移植性好,编写应用程序 CPU指令系统,由0、1序列构成的指令码组成 C语言兼有高级和低级语言的功能 面向机器的语言适合写系统软件和应用软件 如 ADD A,一般较难实现汇编语言的某些功能 B 加 如:10000000 编写系统软件,直接对硬件操作,可读性,移植性差 如:地址和位的操作 10010000 减 又称中级语言 < >
数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 可以进行的操作
C语言程序设计
第一章 程序的灵魂——算法
数值数据的表示
C语言中数值数据有两种:整型和浮点小数 1.整数表示形式 十进制:123,-567 八进制:011,072 十六进制:0x12 2.整数的存储空间为两个字节,即16个二进制位。 取值范围为-32768—32767 如果超过这范围,使用占4个字节的长整型,在整 数后面加上一个字母L,此时取值范围可以扩大到 -2147483648—2147483647
C语言程序设计
第一章 C语言概述
1.2 简单的C程序介绍
例1.1 第一个程序This is a c program . 注释 /* example1.1 The first C Program*/ #include <stdio.h> 编译预处理 void main() 主函数 { printf(“This is a c program.\n”); 语句 } 输出: This is a c program.
第一章 C语言概述
第1章 C语言概述
C语言发展历史 简单的C程序介绍 C语言数据类型概述
C语言程序设计
第一章 C语言概述
1.1 C语言的出现和发展历史
• 程序设计语言的发展
机 器 语 言
汇 编 语 言
高 级 语 言
面向过程
面向对象
用助记符号描述的指令系统,可进行地址、位操作 可读性,移植性好,编写应用程序 CPU指令系统,由0、1序列构成的指令码组成 C语言兼有高级和低级语言的功能 面向机器的语言适合写系统软件和应用软件 如 ADD A,一般较难实现汇编语言的某些功能 B 加 如:10000000 编写系统软件,直接对硬件操作,可读性,移植性差 如:地址和位的操作 10010000 减 又称中级语言 < >
数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 可以进行的操作
C语言程序设计
第一章 程序的灵魂——算法
数值数据的表示
C语言中数值数据有两种:整型和浮点小数 1.整数表示形式 十进制:123,-567 八进制:011,072 十六进制:0x12 2.整数的存储空间为两个字节,即16个二进制位。 取值范围为-32768—32767 如果超过这范围,使用占4个字节的长整型,在整 数后面加上一个字母L,此时取值范围可以扩大到 -2147483648—2147483647
C语言程序设计
第一章 C语言概述
1.2 简单的C程序介绍
例1.1 第一个程序This is a c program . 注释 /* example1.1 The first C Program*/ #include <stdio.h> 编译预处理 void main() 主函数 { printf(“This is a c program.\n”); 语句 } 输出: This is a c program.
C语言---第一章 C语言概述
4、C程序每条语句以分号结束,一行内可以写几个语句。 3、花括号{ }内为函数体。包括变量定义和执行部分(功能)。 2、C程序总是从main()函数开始执行,其后的括号可以为空。 1、C程序是由一个main主函数和若干个其他函数。函数是C程 5、可以用/*……*/对C程序的任何部分作注释。 序的基本单位。
五、C程序的上机步骤
下图表示整个过程:
f.obj f.exe 结果
键盘输入 编辑 源程序
f.c
编译
连接
执行
编译
编译并连接
运行程序
文 档 编 辑 区
编译结果
编译结果显示
四、C程序的上机步骤(重点)
1、编辑 功能:编写源程序保存在磁盘文件中。扩展名为“.c”。
2、编译
功能:将源程序翻译成为二进制的目标代码。编译过程中要 对源程序进行语法检查并显示出错信息。编译后生成目标文 件“标准模块连接处理后,生成
可执行文件“.exe”文件。
C语言二级培训
第一章 C语言概述
一、C语言的特点 二、结构化程序设计 三、简单的C程序介绍(重点) 四、C程序的上机步骤(重点)
一、C语言的特点
1、语言简洁、紧凑、使用方便、灵活。
2、运算符丰富,表达能力强,程序设计自由度大。
3、它属于高级语言,但提供了接近汇编语言(低级语言) 的功能。 4、C语言程序所生成的目标代码质量高。
二、结构化程序设计 1、顺序结构 2、选择结构 3、循环结构
三、简单C语言程序介绍(重点)
#include “stdio.h” main() { int a,b,sum; /*定义变量*/ a=10; /*给变量赋值*/ b=20; sum=a+b; /*求两数之和给变量sum*/ printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); } /*把结果输出到屏幕上*/
大学课程《C语言程序设计基础》PPT课件:第1章
第1章 C语言程序设计概述
机器语言是计算机能够直接识别的语言,它是一组二进 制编码指令。在计算机应用初期,人们用机器语言编写程序。 但是机器语言是冗长的二进制代码,难理解、难记忆、难编 程,只有少数计算机专业人员才会使用。随着计算机应用技 术的发展,计算机语言一直朝着“人性化”的方向发展,先 后出现了汇编语言和不同种类的高级语言。
第1章 C语言程序设计概述
1.2.1 数据结构与算法 数据结构与算法具有密切的联系。数据结构是加工对象,
算法则是对数据结构加工处理的方法。不同的数据结构可能 需要采取不同的算法,不同的算法可以对不同的数据进行加 工处理。
1.数据结构
何谓数据结构?数据结构在程序中如何表示?
数据结构指的是数据的组织形式,例如,字符数组、方 程组系数矩阵、人员的基本信息表、反映部门组织机构关系 的树形图、反映网络结构及信息的网状图等都是不同的数据 结构。
组织和存储数据的目的是能被计算机处理,即对数据施 加各种运算。因此,可以在逻辑结构上定义运算集合,而在 存储结构上实现这些运算。
第1章 C语言程序设计概述
2.算法
何谓算法?算法如何表示?
所谓算法,是解决某一问题所采取的方法和步骤。程序 设计中的算法把解决问题的每一步骤具体化为计算机的操作, 即算法解决计算机在什么情况下应该“做什么”和“怎样做” 的问题。
第1章 C语言程序设计概述
高级语言的种类很多,不同的语言各有不同的特点与使 用场合,但从原理上看,各种语言都包含一些相同的功能和 结构。对初学者来说,只要选择有代表性的语言,掌握了程 序设计语言的规律和内在功能结构,就很容易学习和应用其 他语言。现在一般都把C语言作为程序设计的入门语言。
第1章 C语言程序设计概述
C语言程序设计教程(第二版第1章
下一页 返回
1.3 C程序的上机步骤
在编好一个C源程序后,该怎样上机运行呢?在纸上写好一 个程序后,要经过以下几个步骤: ①上机输入与编辑源程序。 ②对源程序进行编译。 ③与库函数连接。 ④运行目标程序。 以上过程如图1-1所示。其中实线表示操作流程,虚线表示 文件的输入输出。例如,编辑后得到一个源程序文件f.c,然 后在进行编译时再将源程序文件f.c输入,经过编译得到目标 程序文件f.obj,再将目标程序文件f.obj输入内存,与系统 提供的库函数等连接,得到可执行的目标程序文件f.exe, 最后把f.exe调入内存并使其运行。
上一页 下一页 返回
1.2 简单的C程序介绍
④scanf功能是调用系统提供的标准库函数读入变量 integer1和integer2的值。 ⑤printf功能是调用系统提供的标准库函数输出计算结果 sum的值。 例1-2 阅读并分析下面的程序。 main( ) /*主函数*/ { int a,b,c; /*声明部分,定义变量*/ scanf(″%d,%d″,&a,&b);/*输入变量a和b的值*/ c=max(a,b);/*调用max函数,将得到的值赋给c*/ printf(″max=%d″,c); /*输出c的值*/ }
上一页 下一页 返回
1.2 简单的C程序介绍
下面来分析一下本程序的程序结构: ①本程序包括两个函数:主函数main和被调用的函数max。 max函数的作用是将x和y中较大者的值赋给变量z。 return语句将z的值返回给主调函数main。返回值是通过 函数名max带回到main函数的调用处。main函数中的 scanf是“输入函数”的名字(scanf和printf都是C系统 提供的标准输入输出函数)。程序中scanf函数的作用是输 入a和b的值。&a和&b中的“&”的含义是“取地址”,此 scanf函数的作用是将两个数值分别输入到变量a和b的地址 所标志的单元中,也就是输入给变量a和b。这种形式是与其 他语言不同的。它相当于BASIC语言中的INPUT a,b或 PASCAL语言中的Read(a,b)。&a和&b前面的 “%d,%d”的含义与前相同,只是现在用于“输入”。它 指定输入的两个数据按十进制整数形式输入。
第一章C语言概述
x轴
y
h
w y轴
《C语言程序设计》 C语言概述
练习6:
某矩形的宽度为w,高度为h,其中心点在(x0,y0) 处,计算它的左上角坐标(x,y)。
x
(x,y) (x0,y0)
x轴
y
h
y轴
《C语言程序设计》 C语言概述
练习7:
示例:盯住你
已知两点p1(x1,y1)和p2(x2,y2)。另有一点p(x,y), 将p移动到p1、p2的连线上,并使p到p1点的距离 不变。计算p的新位置p’。
第一章 C语言概述
第一章 C语言概述
本章主要内容:
1.1
C语言的发展简史 1.2 C语言的特点 1.3 简单的C程序介绍 1.4 C程序的上机方法
ห้องสมุดไป่ตู้本章重点:
C程序的最基本的语句 掌握C程序的上机方法
《C语言程序设计》
1.1 C语言简史
C语言是在美国贝尔实验室诞生的。 贝尔实验室的M.D.Ritchie和K.Thompson在开发 UNIX操作系统时,希望有一种既有高级语言特性, 又有低级语言特点的语言来描述系统软件,但当 时存在的CPL、BCPL、B语言不是规模大、难以 实现,就是过于简单,功能很弱。1972~1973年 M.D.Ritchie设计出了C语言。在一段时间里,C 语言还只是在贝尔实验室内部使用,直到1975年 UNIX第六版的C语言才引起人们的注意。
《C语言程序设计》 C语言概述
《C语言程序设计》 C语言概述
1977年出现了可移植C语言,1978年第七版的C 语言成了当时的标准,称标准C。1983年,美国 国家标准化协会(ANSI)对C语言制定新的标准, 称为ANSI C,这就是现行的C语言标准。 此后,C语言的发展非常迅速,现在已风靡全世 界,成为最受人们欢迎的几种计算机程序设计语 言之一。 目前,实用的C语言编译系统种类繁多,如Turbo C,Microsoft C,Quick C等,虽然它们略有差异, 但基本部分都是相同的。
C语言第1章概述
7
1.1 程序设计概述
2、什么是程序设计语言? 程序设计语言通常简称为编程语言,是一组用来定义
计算机程序的语法规则。它是一种被标准化的交流技 巧,用来向计算机发出指令。一种计算机语言让程序 员能够准确地定义计算机所需要使用的数据,并精确 地定义在不同情况下所应当采取的行动。 可以分为机器语言、汇编语言和高级语言三大类。
_22A,lea_1,avg3,day,ABCde43xyw8 以下标志符是非法的:
8Tea ,$_238,a*b,#xy
注意:在C语言中,大小写字母不等效。因此,a和A,I和i,Sum 和sum,分别是两个不同的标识符
18
1.2 C语言简介
2、关键字 具有特定含义的的字符串,也称为保留字。用户定
注意:编译只能发现语法错误,不能发现算法错误。
26
1.3 C语言的编程环境
1.3.2 Visual C++6.0编程环境
1. Visual C++6.0 Visual C++6.0不仅是一个C++编译器,而且是一
个基于Windows操作系统的可视化集成开发环境 (integrated development environment,IDE)。
维护和完善性维护。 可移植性:程序主要与其所完成的任务有关,但也与
它的运行环境有着一定的联系。软件的开发应尽可能 远离机器的特征,以提高它的可移植程度。
14
1.2 C语言简介
1.2.1 C语言出现的历史背景
1978年由美国电话电报公司(AT&T)贝尔实验室正式发 表了C语言。早期的C语言主要是用于Unix系统。
13
1.1 程序设计概述
1.1 程序设计概述
2、什么是程序设计语言? 程序设计语言通常简称为编程语言,是一组用来定义
计算机程序的语法规则。它是一种被标准化的交流技 巧,用来向计算机发出指令。一种计算机语言让程序 员能够准确地定义计算机所需要使用的数据,并精确 地定义在不同情况下所应当采取的行动。 可以分为机器语言、汇编语言和高级语言三大类。
_22A,lea_1,avg3,day,ABCde43xyw8 以下标志符是非法的:
8Tea ,$_238,a*b,#xy
注意:在C语言中,大小写字母不等效。因此,a和A,I和i,Sum 和sum,分别是两个不同的标识符
18
1.2 C语言简介
2、关键字 具有特定含义的的字符串,也称为保留字。用户定
注意:编译只能发现语法错误,不能发现算法错误。
26
1.3 C语言的编程环境
1.3.2 Visual C++6.0编程环境
1. Visual C++6.0 Visual C++6.0不仅是一个C++编译器,而且是一
个基于Windows操作系统的可视化集成开发环境 (integrated development environment,IDE)。
维护和完善性维护。 可移植性:程序主要与其所完成的任务有关,但也与
它的运行环境有着一定的联系。软件的开发应尽可能 远离机器的特征,以提高它的可移植程度。
14
1.2 C语言简介
1.2.1 C语言出现的历史背景
1978年由美国电话电报公司(AT&T)贝尔实验室正式发 表了C语言。早期的C语言主要是用于Unix系统。
13
1.1 程序设计概述
c语言课本 第1章
大学C/C++语言程序设计
第1章 程序设计概述
1.8 C语言程序结构
§C语言特点
语言简洁、紧凑、灵活 c语言共32个关键字,9种控制语句 运算符和数据类型丰富 程序设计结构化 允许直接访问物理地址,进行位操作 生成目标代码质量高 可移植性好
C语言程序设计
第一章 C语言概述
例 C语言与Pascal语言比较 C语言 Pascal语言 含义 { } BEGIN….END 复合语句 if(e) s; IF(e) THEN s 条件语句 int i ; VAR i:INTEGER 定义i为整型变量 int a[10]; VAR a:ARRAY[1..10] OF INTEGER 定义整型数组a int f(); FUNCTION f():INTEGER 定义f为返值整型 的函数 int *p; VAR p:INTEGER 定义p为指向整 型变量的指针 i+= 2; i=i+2 赋值i+2i i++,++i; i=i+1 i自增值 结论:C比 Pascal简练,源程序短。
语句
大学C/C++语言程序设计
第1章 程序设计概述
例1.2
#include <stdio.h> 预处理命令 int add(int x,int y); 函数 main() { int a,b,c; printf(”please input value of a and b:\n”); scanf(“%d %d”,&a,&b); 语句 c=add(a,b); printf(”c= %d\n“,c); } 运行结果: int add(int x,int y) 12 22 { sum=34 return(x+y); }
c语言程序设计概述
例1.1 输出Good afternoon!
#include <stdio.h>
编译预处理
main()
函数
{
printf(“Good afternoon!”);
语句
}
输出: Good afternoon!
>
例1.2
/* 计算a+b*/ #include <stdio.h> main() { int a,b,sum;
Language,这本书中介绍的C语言成为后来广泛使用的C语言版本的基础,它是实际上第一个C
语言标准。
• 1983年,美国国家标准协会(ANSI),根据C语言问世以来各种版本对C语言的发展和扩充,制
定了第一个C语言标准草案(83 ANSI C)。
• 1989年,ANSI公布了一个完整的C语言标准——ANSI X3.159—1989(常称为ANSI C或C 89)。
double else
enum extern float for
goto
if
int
long register return
short signed sizeof static struct
switch typedef unsigned union void
volatile while
<
基本控制语句:
目录
第1章 C语言概述 第2章 算法 第3章 数据类型、运算符与表达式 第4章 顺序程序设计 第5章 选择结构程序设计 第6章 循环控制 第7章 函数 第8章 数组
问题思考与讨论
1、程序设计有那些语言? 2、智能制造、智能服装与程序设计有什么关系? 3、服装数字化、信息化与程序设计有什么关系?
《C语言程序设计》 第1章 概论
Chapter 1
Introduction
1.2.2 C 程序的基本结构
实例:输入两个数及其算术运算关系,输出运算结果。 int fun(int x,char op,int y) /* This is my first C program { filename:first.c int z; */ switch(op) #include <stdio.h> { void main(void) case ‗+‘: z=x+y; break; { case ‗-‗ : z=x-y; break; char ch; case ‗*‘: z=x*y; break; int iA, iB, c; case ‗/‘ : z=x/y; scanf(―%d%c%d‖, 子 } &iA,&ch,&iB); 函 return z; /*返回运算结果*/ c=fun(iA,ch,iB); 数 } 主printf(―%d%c%d=%d‖,iA, 函 ch,iB,c); chp1ex1 数 }
Chapter 1
Introduction
C 语言程序设计
C Language Programming
但愿她是你知识大厦的又一块基石。 但愿她是开启你智慧的又一把钥匙!
Chapter 1
Introduction
学习目的
通过学习掌握C语言的语法结构,理解程序设计的一般 方法和基本技术。 学习算法的概念以及结构化程序设计的一般方法,提 高分析能力和综合能力。 能够用C语言编程解决一定的实际问题,提高计算能力。
0111000011 0101000010
Chapter 1
Introduction
学习的层次
第1章C语言程序设计概述
线性结构
数据结构逻存辑储结结构构非顺线序性存结储构结构图树
链接存储结构
抽象运算 : 初始化、读取、插入、删除等
1.2.2 算法的描述方法 算法描述的方法:自然语言描述、流程图描述、N-S 盒图描述。
程序——用计算机程序语言描述的算法。 1.自然语言描述算法
#include<stdio.h> void main() {
int i,t; t=1; i=2; while(i<=5) {
t=t*i; i=i+1; } printf("%d\n",t); } 例: 判定 2000 — 2500 年中的每一年是否闰年。
#include<stdio.h> void main() {
除了很简单的问题,一般不用自然语言表示算法。 2.流程图描述描述算法。 流程图表示算法,直观形象,易于理解。
【ቤተ መጻሕፍቲ ባይዱ 1】计算 5!
【例 2】判定 2000 — 2500 年中的每一年是否闰年,将结 果输出。润年的条件:
1)能被 4 整除,但不能被 100 整除的年份; 2)能被 100 整除,又能被 400 整除的年份; 设 y 为被检测的年份 判定闰年的算用流程图表示。
编译运行编辑源程序由编译程序编译源程序生成目标程序连接装配生成可执行程序在操作系统支持下运行程序解释运行编辑源程序在解释程序支持下逐语句解释运行程序12算法及其描述121算法的概念程序算法数据结构算法问题求解过程的精确描述
第 1 章 C 语言程序设计概述 1.1 程序与程序设计 1.1.1 程序的基本概念 程序 ——用计算机语言描述的某一问题的解决步骤,是符合一定 语法规则的符号序列。 ——是计算机可以执行的指令和操作的数据的用序集合。
C语言程序设计第1章-C语言概述课件
1.2.2 Visual C++ 6.0开发环境介绍(续)
图1-8 新建源文件
图1-8 新建源文件
1.2.2 Visual C++ 6.0开发环境介绍(续)
5) 点击“确定”按钮以后,在窗口左边的工作区会看到两个选项卡: ClassView和 FileView。一般默认为ClassView,点击FileView,可以才从ClassView 切换到FileView选项卡。逐步点击工作区p1工程下面的“+”号,可以 在Source Files目录下看到刚才新建的1-1.c源文件,这个时候可以在 右边的程序编辑窗口中输入源代码,如下图1-9所示。
1.1.1 C语言的发展
C语言是国际上流行的计算机高级程序设计语言之一。与其他高 级语言相比,C语言的硬件控制能力和运算表达能力强,可移植性 好,效率高(目标程序简洁,运行速度快)。因此应用面非常广, 许多大型软件都是用C语言编写的。
艾伦.佩利(Alan J.Perlis)在巴黎举行的全世界一流软件专家参加 的讨论会上,发表了“算法语言Algol 60”报告,确定了程序设计语言 Algol 60;1962年,艾伦.佩利又对Algol 60进行了修正;1963年,英 国剑桥大学在ALGOL语言的基础上进行了改进,推出CPL语言; 1967 年剑桥大学的马丁·理查德对CPL简化,产生了BCPL语言; 1970年美国 贝尔实验室的肯·汤姆逊对BCPL语言进行了修改,取其
1.2.2 Visual C++ 6.0开发环境介绍(续)
图1-9 新建源文件
图1-9 新建源文件
1.2.2 Visual C++ 6.0开发环境介绍(续)
注意:工作空间可以包含多个工程,工程又可以包含多个程序 文件,工程与工程之间相互不影响,工作空间类似于文件夹,工程 类似于文件夹中的文件。
C语言程序设计实例教程(第2版)丁爱萍第1章 C语言程序设计概述
第1章 C语言程序设计概述 章 语言程序设计概述 1.2.2 三种基本结构 结构化程序由三种基本结构组成:顺序结构、选择结 构和循环结构。已经证明,这三种基本结构组成的算法可 以解决任何复杂的问题。使用这三种基本结构编写的程序, 称为结构化程序。下面通过简单的实例说明结构化程序设 计的三种基本结构。 1. 顺序结构 顺序结构程序中的语句按先后顺序逐条执行。 【例1-2】顺序结构示例。求s=a+b的值。 其流程图如图1.3所示,图(a)是传统流程图,图(b)是NS流程图。
第1章 C语言程序设计概述 章 语言程序设计概述 5) 整理源程序并总结资料 有人以为程序调试成功就万事大吉了,其实这种思想是 错误的。对于程序设计人员来说,平时的归纳和总结是很重 要的。程序员应将平时的源程序进行归类保存,以方便今后 查找,同时一定要注意保留文字资料。 1.1.4 算法 日常生活中做任何事情都有其方法和步骤,这些方法、 步骤就是算法,它要求过程合理而有序。不同的问题,有不 同的方法和步骤;同一问题,不同的人也可能有不同的方法 和步骤。下面介绍一下衡量算法步骤优劣的标准、算法的分 类和算法设计准则的常用方法。
第1章 C语言程序设计概述 章 语言程序设计概述 这样,就使得编写共享代码段的程序变得短小简 单。如果开发了一些分离较好的函数,在引用时就可 以只需知道函数做什么,而不必知道它是如何做的。 (切记:过度使用全局变量会由于意外的副作用而在程 序中引入错误。) 在C语言中,函数是完成程序功能的基本构件。使 C 用函数可以将一个程序的诸任务分别定义和编码,使 程序模块化。可以确信,一个好的函数不仅能正确工 作,还不会对程序的其他部分产生副作用。
第1章 C语言程序设计概述 章 语言程序设计概述
a=3 b=4
a=3
《C语言程序设计(高职版)》第1章C语言概述
第1章 C语言概述
(时间:1次课,2学时)
/webnew/
第1章 C语言概述
教学提示: C语言是近年来在国内外得到迅速推广应用的一种计算机 语言,它之所以得到迅速推广,是与它的特点分不开的。 本章学习的目的是让初学者在深入学习 C 语言之前,首 先对C语言有个初步的了解,让他们知道学习C语言的重 要性及学习方法。本章学习要点有:了解 C 语言程序的 基本结构,掌握上机步骤;掌握 Turbo C的启动方法以 及Turbo C编译器的使用方法。
1.2 简单的C程序介绍
【例1.2】求两个整数之和,两个整数由键盘输入。 main() { int x,y,z; scanf("%d,%d",&x,&y); /*输入两值,分别放入变量x、y中*/ z=x+y; printf("sum=%d\n",z); } 这个C程序只由一个main函数组成。程序的第三行为定义变量部分,在这里定 义了三个整型变量x、y和z,其中的int为数据类型标识符,表示整型;x、y、z 为三个变量的名称,定义变量时变量名之间用逗号隔开。程序的第四行为函数 调用语句,通过scanf函数给变量x和y输入数据,该函数的具体使用将在第3章 中详细介绍。程序的第五行为赋值语句,将变量x与y两数之和赋予变量z,即 用变量z存放两变量x、y的和。程序的第六行用于输出变量z的值。 该程序的运行结果如下: 3,5↙ sum=8
第1章 C语言概述
1.1 1.2 1.3 1.4 1.5
C语言的发展历史及其基本特性 简单的C程序介绍 C程序的上机步骤 小结 思考与练习
1.1 C语言的发展历史及其基本特性
1.1.1 C语言的发展历史 1.1.2 C语言的基本特性
(时间:1次课,2学时)
/webnew/
第1章 C语言概述
教学提示: C语言是近年来在国内外得到迅速推广应用的一种计算机 语言,它之所以得到迅速推广,是与它的特点分不开的。 本章学习的目的是让初学者在深入学习 C 语言之前,首 先对C语言有个初步的了解,让他们知道学习C语言的重 要性及学习方法。本章学习要点有:了解 C 语言程序的 基本结构,掌握上机步骤;掌握 Turbo C的启动方法以 及Turbo C编译器的使用方法。
1.2 简单的C程序介绍
【例1.2】求两个整数之和,两个整数由键盘输入。 main() { int x,y,z; scanf("%d,%d",&x,&y); /*输入两值,分别放入变量x、y中*/ z=x+y; printf("sum=%d\n",z); } 这个C程序只由一个main函数组成。程序的第三行为定义变量部分,在这里定 义了三个整型变量x、y和z,其中的int为数据类型标识符,表示整型;x、y、z 为三个变量的名称,定义变量时变量名之间用逗号隔开。程序的第四行为函数 调用语句,通过scanf函数给变量x和y输入数据,该函数的具体使用将在第3章 中详细介绍。程序的第五行为赋值语句,将变量x与y两数之和赋予变量z,即 用变量z存放两变量x、y的和。程序的第六行用于输出变量z的值。 该程序的运行结果如下: 3,5↙ sum=8
第1章 C语言概述
1.1 1.2 1.3 1.4 1.5
C语言的发展历史及其基本特性 简单的C程序介绍 C程序的上机步骤 小结 思考与练习
1.1 C语言的发展历史及其基本特性
1.1.1 C语言的发展历史 1.1.2 C语言的基本特性
C语言程序设计第1章C语言概述简明教程PPT课件
1.1.2 C语言的特点
1.语言简洁、紧凑,使用灵活、方便
C99标准规定,C语言共具有: 37个关键字 9种控制语句 程序书写自由 可以像汇编语言一样对位、字节和地址进行操作
C语言程序设计
第1章 C语言概述
5
1.1.2 C语言的特点
1.语言简洁、紧凑,使用灵活、方便 2.运算符丰富 C语言的运算符包含34个运算符。 C语言把括号、赋值、强制类型转换等都作为运算符处 理,从而使C的运算类型极其丰富,表达式类型多样化, 通过灵活使用各种运算符,可以实现在其它高级语言中 难以实现的运算。
8.C语言适用范围大,可移植性好
C语言程序设计 第1章 C语言概述 10
1.2 C语言的程序结构及书写规则 构成C语言程序,在屏幕上输出一行信息
定义主函数 main函数 开始标志 main函数 结束标志 #include<stdio.h> 编译预处理指令 void main() { printf("This is a C program.\n"); } 输出指定的一行信息 运行结果:
C语言程序设计
第1章 C语言概述
6
1.1.2 C语言的特点
1.语言简洁、紧凑,使用灵活、方便 2.运算符丰富 3.数据类型丰富 C语言的数据类型有:整型、实型、字 符型、数组类型、指针类型、结构体类 型、共用体类型等,并能通过现有数据 类型来构建各种复杂的数据类型。
C语言程序设计
第1章 C语言概述
掌握C语言的关键字;
掌握C程序的运行环境及运行步骤;
C语言程序设计
第1章 C语言概述
3
1.1 C语言的发展简史和特点
1.1.1 C语言的起源与发展 产生背景 发展过程 机器码是计算机语言的最终形式,汇编 语言是机器码的简单表示。 C标准 ─时间 :1972~1973 ─地点 :由于汇编语言程序依赖于计算机硬件来 美国贝尔实验室 标准 C: K&R 合著《The C Programming 实现,其可读性和可移植性很差;其它的高 ─目的 :UNIX Language 》 操作系统 级语言又难以实现对计算机硬件的直接操作 ─设计人 : Ken.Thompson 和Dennis.M.Ritchie ANSI C: 1983 年 (汇编语言的特点),于是人们期望有一种 87 ANSI C: 1987年 1990兼有汇编语言和高级语言特性的新语言出现。 年国际标准的ANSI C ISO在1995年对C90进行技术补充,推出C95标准 1999年,ANSI和ISO又通过了最新版本的C语言标 准和技术勘误文档,该标准被称为 C99 4 C语言程序设计 第1章 C语言概述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
9
一、算法的描述方法 算法是考虑实现某一个问题求解的框架流程, 算法是考虑实现某一个问题求解的框架流程,而程序 设计则是根据这一求解的框架流程进行语言细化实现这一 问题求解的具体过程。常用描述算法的工具有: 问题求解的具体过程。常用描述算法的工具有: 1、自然语言: 、自然语言: 使用人们日常进行交流的语言。 使用人们日常进行交流的语言。 a,b中找出一个大的数给max。 中找出一个大的数给max 如:从a,b中找出一个大的数给max。 从键盘输入两个数给a ⑴ 从键盘输入两个数给a和b; ⑵ 如果a比b大,则把a的值传给max, 如果a 则把a的值传给max, max 否则把b的值传给max max; 否则把b的值传给max; 输出max的值。 max的值 ⑶ 输出max的值。 2、专用工具: 、专用工具: 借助于有关图形工具或代码符号来描述。 借助于有关图形工具或代码符号来描述 。 常用的 工具有流程图、 图等。 工具有流程图、N-S图等。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
12
C语言程序的基本结构 1.4 C语言程序的基本结构
一、简单的C语言程序示例 例1-1:已知三个整数8、12、6,按公式s=a+b×c计算 已知三个整数8 12、 按公式s=a+b× s=a+b 并显示结果。 并显示结果。 #include<stdio.h> /*标准输入输出头文件*/ /*标准输入输出头文件* 标准输入输出头文件 main() /*定义四个整型变量 定义四个整型变量* { int a,b,c,s; /*定义四个整型变量*/ a=8 b=12 c=6 12; /*变量赋值 变量赋值* a=8;b=12;c=6; /*变量赋值*/ s=a+b*c; /*算术运算并赋值 算术运算并赋值* s=a+b*c; /*算术运算并赋值*/ printf(“s= s=% 输出结果* printf( s=%d\n”,s); /*输出结果*/ ,s); /*输出结果 }
3、程序设计语言: 、程序设计语言: 算法最终要用程序设计语言来描述, 算法最终要用程序设计语言来描述,计算机才能 保存、翻译和执行。如用C语言来描述从a 保存、翻译和执行。如用C语言来描述从a和b中找 大数的问题。 大数的问题。 常用的算法有:迭代法、枚举法、递归法、 常用的算法有:迭代法、枚举法、递归法、递推 法等。 法等。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
10
如用N 图来描述从a 如用N-S图来描述从a和b中找大数的问题。 中找大数的问题。 输入a和b a>b max⇐a max⇐b 输出max max scanf(“%d,%d”,&a,&b); if(a>b) max=a; else max=b; printf(“%d,%d”,a,b);
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
4
1.1 程序与程序设计
一、程序 实际上是一个用计算机语言描述的某一问题的解决步骤。 实际上是一个用计算机语言描述的某一问题的解决步骤。 二、程序设计 人们常把编写程序的过程称为程序设计。 人们常把编写程序的过程称为程序设计。在进行程序设 计时离不开程序设计语言。程序设计语言的种类很多, 计时离不开程序设计语言。程序设计语言的种类很多,从其 发展历史以及功能情况来划分可以大致划分成五个阶段: 发展历史以及功能情况来划分可以大致划分成五个阶段: 1、机器语言: 、机器语言: 计算机可以直接识别和执行的二进制语言。 计算机可以直接识别和执行的二进制语言。 加法指令: 0 0 1 0 0 0 0 特点:计算机可以直接识别和执行,效率高, 特点:计算机可以直接识别和执行,效率高, 节省内存;但难以阅读和记忆。 节省内存;但难以阅读和记忆。
2011/3/28
C语言程序设计教程
6
• 机器语言与高级语言的关系: 机器语言与高级语言的关系: 机器语言 目标程序 编译方式 低级语言) 汇编语言 (低级语言) 编译 解释方式 高级语言 源程序
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
7
4、面向任务的程序设计语言: 、面向任务的程序设计语言: 是非过程化的语言,不需要知道问题是如何求解的。 是非过程化的语言,不需要知道问题是如何求解的。 例如:要从某学生表SS用数据库(SQL) SS用数据库 例如:要从某学生表SS用数据库(SQL)查询语言 获取表中记录的信息,采用SELECT语句,描述如下: SELECT语句 获取表中记录的信息,采用SELECT语句,描述如下: SELECT SSNO,SSNAME,SSAGE,SSSEX FROM SS 5、面向对象的程序设计语言: 面向对象的程序设计语言: 认为系统是由许多对象组成的, 认为系统是由许多对象组成的,对象通过消息相互 联系和相互作用,从而完成系统的功能。 C++, 联系和相互作用,从而完成系统的功能。如C++, 设计的程序更易懂, 更适合更大规模的程序开发。 设计的程序更易懂, 更适合更大规模的程序开发。 程 序 数据的确定:确定数据的类型和数据的存放方式。 数据的确定:确定数据的类型和数据的存放方式。 设 高级语言中用变量定义来实现。 变量定义来实现 高级语言中用变量定义来实现。 计 操作步骤(也即算法)的确定: 语句来实现 来实现。 操作步骤(也即算法)的确定:用语句来实现。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
14
一个完整的C程序由若干个函数组成 程序由若干个函数组成, ⑴ 一个完整的 程序由若干个函数组成,至少有一 main函数 每个函数包括: 函数, 个main函数,每个函数包括: 函数说明部分 变量定义 函数体 语句部分 语句必须以分号 分号( 作结束标志; ⑵ 语句必须以分号(;)作结束标志; 之间的内容构成C ⑶ 由 “ /*”与“* /”之间的内容构成C 语言程序的注 /* 与 之间的内容构成 释 部分; 部分; #include可以包含有关文件的信息 用预处理命令#include可以包含有关文件的信息。 ⑷ 用预处理命令#include可以包含有关文件的信息。 语言中区分大小写, Main、MAIN、main、 区分大小写 ⑸ 在C语言中区分大小写,如Main、MAIN、main、 maiN是不相同的 maiN是不相同的。
C语言程序设计教程
2011/3/28
13
例1-2 从键盘接收2个变量,输出较大的。 从键盘接收2个变量,输出较大的。 stdio. #include “stdio.h” stdio main() a,b,c; { int a,b,c; scanf(“%d,% ,&a,&b) ,&a,&b); scanf( %d,%d”,&a,&b); c=max(a,b); c=max(a,b); printf(“max= max=% ,c) ,c); printf( max=%d”,c); } int max(int x,int y) { int z; (x<y)z=x; if (x<y)z=x; else z=y; z=y; (z); return (z);}
陈 刚 改 编
数 计 学 院
江 汉 大 学
2
教学要求
• 掌握C语言的基础知识,包括数据类型、 输入输出的基本操作以及简单程序设计; • 掌握顺序、选择、循环三大结构的编程; • 掌握函数的定义与调用; • 掌握数组、指针的应用; • 掌握文件的操作; • 会进行综合程序设计。
C语言程序设计教程
2011/3/28
第1章 C语言程序设计概述
3
第 1 章 C语言程序设计概述
1.1 1.2 1.3 1.4 1.5 1.6 程序与程序设计 算法及其描述 C语言的发展及特点 C语言的发展及特点 C语言程序的基本结构 C语言程序的基本结构 C语言字符集、 C语言字符集、标识符和关键字 语言字符集 C语言程序的开发环境 C语言程序的开发环境
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
8
1.2 算法及其描述
瑞士计算机科学家N•沃思教授提出了程序 瑞士计算机科学家N 沃思教授提出了程序 定义的著名公式: 程序=数据结构+ 定义的著名公式: 程序=数据结构+算法 一、算法的概念 算法是由一套规则组成的一个过程, 算法是由一套规则组成的一个过程,算法是对某一特 定问题的求解步骤的一种描述。 定问题的求解步骤的一种描述。算法应当具备以下几个方 面的特点: 面的特点: 一个算法必须保证执行有限步之后结束; 1、一个算法必须保证执行有限步之后结束; 算法的每一个步骤必须具有确切的定义; 2、算法的每一个步骤必须具有确切的定义; 应对算法给出初始量; 3、应对算法给出初始量; 算法具有一个或多个输出; 4、算法具有一个或多个输出; 算法的每一步都必须是计算机能进行的有效操作。 5、算法的每一步都必须是计算机能进行的有效操作。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
5
2、汇编语言: 、汇编语言: 助记符”来表示机器指令。 用“助记符”来表示机器指令。 如: ADD A, B SUB A, B 计算机不能直接识别和执行用汇编语言编写的源程 序,它必须经过一个叫汇编程序的系统软件翻译成 机器语言程序(即目标程序)后才能执行。 机器语言程序(即目标程序)后才能执行。 3、高级语言: 、高级语言: 即算法语言,不依赖于机器,降低了编程的难度。 即算法语言,不依赖于机器,降低了编程的难度。 PASCAL、FORTRAN等 +’和 如:C、PASCAL、FORTRAN等,用‘+’和‘-’来 表示加减运算。 表示加减运算。 计算机也不能直接执行算法语言描述的源程序, 计算机也不能直接执行算法语言描述的源程序,必 须先经过编译程序或解释程序翻译成目标程序后, 须先经过编译程序或解释程序翻译成目标程序后, 才能由计算机执行。 才能由计算机执行。
C语言程序设计教程
第1章 C语言程序设计概述
9
一、算法的描述方法 算法是考虑实现某一个问题求解的框架流程, 算法是考虑实现某一个问题求解的框架流程,而程序 设计则是根据这一求解的框架流程进行语言细化实现这一 问题求解的具体过程。常用描述算法的工具有: 问题求解的具体过程。常用描述算法的工具有: 1、自然语言: 、自然语言: 使用人们日常进行交流的语言。 使用人们日常进行交流的语言。 a,b中找出一个大的数给max。 中找出一个大的数给max 如:从a,b中找出一个大的数给max。 从键盘输入两个数给a ⑴ 从键盘输入两个数给a和b; ⑵ 如果a比b大,则把a的值传给max, 如果a 则把a的值传给max, max 否则把b的值传给max max; 否则把b的值传给max; 输出max的值。 max的值 ⑶ 输出max的值。 2、专用工具: 、专用工具: 借助于有关图形工具或代码符号来描述。 借助于有关图形工具或代码符号来描述 。 常用的 工具有流程图、 图等。 工具有流程图、N-S图等。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
12
C语言程序的基本结构 1.4 C语言程序的基本结构
一、简单的C语言程序示例 例1-1:已知三个整数8、12、6,按公式s=a+b×c计算 已知三个整数8 12、 按公式s=a+b× s=a+b 并显示结果。 并显示结果。 #include<stdio.h> /*标准输入输出头文件*/ /*标准输入输出头文件* 标准输入输出头文件 main() /*定义四个整型变量 定义四个整型变量* { int a,b,c,s; /*定义四个整型变量*/ a=8 b=12 c=6 12; /*变量赋值 变量赋值* a=8;b=12;c=6; /*变量赋值*/ s=a+b*c; /*算术运算并赋值 算术运算并赋值* s=a+b*c; /*算术运算并赋值*/ printf(“s= s=% 输出结果* printf( s=%d\n”,s); /*输出结果*/ ,s); /*输出结果 }
3、程序设计语言: 、程序设计语言: 算法最终要用程序设计语言来描述, 算法最终要用程序设计语言来描述,计算机才能 保存、翻译和执行。如用C语言来描述从a 保存、翻译和执行。如用C语言来描述从a和b中找 大数的问题。 大数的问题。 常用的算法有:迭代法、枚举法、递归法、 常用的算法有:迭代法、枚举法、递归法、递推 法等。 法等。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
10
如用N 图来描述从a 如用N-S图来描述从a和b中找大数的问题。 中找大数的问题。 输入a和b a>b max⇐a max⇐b 输出max max scanf(“%d,%d”,&a,&b); if(a>b) max=a; else max=b; printf(“%d,%d”,a,b);
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
4
1.1 程序与程序设计
一、程序 实际上是一个用计算机语言描述的某一问题的解决步骤。 实际上是一个用计算机语言描述的某一问题的解决步骤。 二、程序设计 人们常把编写程序的过程称为程序设计。 人们常把编写程序的过程称为程序设计。在进行程序设 计时离不开程序设计语言。程序设计语言的种类很多, 计时离不开程序设计语言。程序设计语言的种类很多,从其 发展历史以及功能情况来划分可以大致划分成五个阶段: 发展历史以及功能情况来划分可以大致划分成五个阶段: 1、机器语言: 、机器语言: 计算机可以直接识别和执行的二进制语言。 计算机可以直接识别和执行的二进制语言。 加法指令: 0 0 1 0 0 0 0 特点:计算机可以直接识别和执行,效率高, 特点:计算机可以直接识别和执行,效率高, 节省内存;但难以阅读和记忆。 节省内存;但难以阅读和记忆。
2011/3/28
C语言程序设计教程
6
• 机器语言与高级语言的关系: 机器语言与高级语言的关系: 机器语言 目标程序 编译方式 低级语言) 汇编语言 (低级语言) 编译 解释方式 高级语言 源程序
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
7
4、面向任务的程序设计语言: 、面向任务的程序设计语言: 是非过程化的语言,不需要知道问题是如何求解的。 是非过程化的语言,不需要知道问题是如何求解的。 例如:要从某学生表SS用数据库(SQL) SS用数据库 例如:要从某学生表SS用数据库(SQL)查询语言 获取表中记录的信息,采用SELECT语句,描述如下: SELECT语句 获取表中记录的信息,采用SELECT语句,描述如下: SELECT SSNO,SSNAME,SSAGE,SSSEX FROM SS 5、面向对象的程序设计语言: 面向对象的程序设计语言: 认为系统是由许多对象组成的, 认为系统是由许多对象组成的,对象通过消息相互 联系和相互作用,从而完成系统的功能。 C++, 联系和相互作用,从而完成系统的功能。如C++, 设计的程序更易懂, 更适合更大规模的程序开发。 设计的程序更易懂, 更适合更大规模的程序开发。 程 序 数据的确定:确定数据的类型和数据的存放方式。 数据的确定:确定数据的类型和数据的存放方式。 设 高级语言中用变量定义来实现。 变量定义来实现 高级语言中用变量定义来实现。 计 操作步骤(也即算法)的确定: 语句来实现 来实现。 操作步骤(也即算法)的确定:用语句来实现。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
14
一个完整的C程序由若干个函数组成 程序由若干个函数组成, ⑴ 一个完整的 程序由若干个函数组成,至少有一 main函数 每个函数包括: 函数, 个main函数,每个函数包括: 函数说明部分 变量定义 函数体 语句部分 语句必须以分号 分号( 作结束标志; ⑵ 语句必须以分号(;)作结束标志; 之间的内容构成C ⑶ 由 “ /*”与“* /”之间的内容构成C 语言程序的注 /* 与 之间的内容构成 释 部分; 部分; #include可以包含有关文件的信息 用预处理命令#include可以包含有关文件的信息。 ⑷ 用预处理命令#include可以包含有关文件的信息。 语言中区分大小写, Main、MAIN、main、 区分大小写 ⑸ 在C语言中区分大小写,如Main、MAIN、main、 maiN是不相同的 maiN是不相同的。
C语言程序设计教程
2011/3/28
13
例1-2 从键盘接收2个变量,输出较大的。 从键盘接收2个变量,输出较大的。 stdio. #include “stdio.h” stdio main() a,b,c; { int a,b,c; scanf(“%d,% ,&a,&b) ,&a,&b); scanf( %d,%d”,&a,&b); c=max(a,b); c=max(a,b); printf(“max= max=% ,c) ,c); printf( max=%d”,c); } int max(int x,int y) { int z; (x<y)z=x; if (x<y)z=x; else z=y; z=y; (z); return (z);}
陈 刚 改 编
数 计 学 院
江 汉 大 学
2
教学要求
• 掌握C语言的基础知识,包括数据类型、 输入输出的基本操作以及简单程序设计; • 掌握顺序、选择、循环三大结构的编程; • 掌握函数的定义与调用; • 掌握数组、指针的应用; • 掌握文件的操作; • 会进行综合程序设计。
C语言程序设计教程
2011/3/28
第1章 C语言程序设计概述
3
第 1 章 C语言程序设计概述
1.1 1.2 1.3 1.4 1.5 1.6 程序与程序设计 算法及其描述 C语言的发展及特点 C语言的发展及特点 C语言程序的基本结构 C语言程序的基本结构 C语言字符集、 C语言字符集、标识符和关键字 语言字符集 C语言程序的开发环境 C语言程序的开发环境
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
8
1.2 算法及其描述
瑞士计算机科学家N•沃思教授提出了程序 瑞士计算机科学家N 沃思教授提出了程序 定义的著名公式: 程序=数据结构+ 定义的著名公式: 程序=数据结构+算法 一、算法的概念 算法是由一套规则组成的一个过程, 算法是由一套规则组成的一个过程,算法是对某一特 定问题的求解步骤的一种描述。 定问题的求解步骤的一种描述。算法应当具备以下几个方 面的特点: 面的特点: 一个算法必须保证执行有限步之后结束; 1、一个算法必须保证执行有限步之后结束; 算法的每一个步骤必须具有确切的定义; 2、算法的每一个步骤必须具有确切的定义; 应对算法给出初始量; 3、应对算法给出初始量; 算法具有一个或多个输出; 4、算法具有一个或多个输出; 算法的每一步都必须是计算机能进行的有效操作。 5、算法的每一步都必须是计算机能进行的有效操作。
2011/3/28
C语言程序设计教程
第1章 C语言程序设计概述
5
2、汇编语言: 、汇编语言: 助记符”来表示机器指令。 用“助记符”来表示机器指令。 如: ADD A, B SUB A, B 计算机不能直接识别和执行用汇编语言编写的源程 序,它必须经过一个叫汇编程序的系统软件翻译成 机器语言程序(即目标程序)后才能执行。 机器语言程序(即目标程序)后才能执行。 3、高级语言: 、高级语言: 即算法语言,不依赖于机器,降低了编程的难度。 即算法语言,不依赖于机器,降低了编程的难度。 PASCAL、FORTRAN等 +’和 如:C、PASCAL、FORTRAN等,用‘+’和‘-’来 表示加减运算。 表示加减运算。 计算机也不能直接执行算法语言描述的源程序, 计算机也不能直接执行算法语言描述的源程序,必 须先经过编译程序或解释程序翻译成目标程序后, 须先经过编译程序或解释程序翻译成目标程序后, 才能由计算机执行。 才能由计算机执行。