C语言程序设计:1 引言_第1页
C语言程序设计:1 引言_第2页
C语言程序设计:1 引言_第3页
C语言程序设计:1 引言_第4页
C语言程序设计:1 引言_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第第1章章 引言引言主要内容主要内容程序与程序设计语言程序与程序设计语言C语言的发展历史与特点语言的发展历史与特点实际问题的求解过程实际问题的求解过程计算机的工作原理(补充)计算机的工作原理(补充)教学目标、重点和难点教学目标、重点和难点n教学目标教学目标q掌握掌握 C 程序的基本结构程序的基本结构q熟悉熟悉DEV C+(或(或VC+ 6.0)集成开发环境,集成开发环境,掌握掌握在集成开发环境在集成开发环境中编辑、编译、连接中编辑、编译、连接和运行和运行C程序的程序的过程,初步认识程序调试的方法过程,初步认识程序调试的方法q了解程序、算法和流程图的概念了解程序、算法和流程图的概念n教学重点教学

2、重点qC语言程序的基本结构语言程序的基本结构qC程序执行过程程序执行过程n教学难点教学难点q程序流程图程序流程图qC程序的运行调试程序的运行调试程序程序:为了让计算机解决某个问题而编写的一系列:为了让计算机解决某个问题而编写的一系列有序有序 的计算机指令的集合的计算机指令的集合。什么是程序?什么是程序?n问题:输入问题:输入3个数个数A、B、C,求,求A+B-C的值。的值。 Input A; /输入第输入第1个数据到存储单元个数据到存储单元A中中 Input B; /输入第输入第2个数据到存储单元个数据到存储单元B中中 Input C; /输入第输入第3个数据到存储单元个数据到存储单元C中中

3、Add A B D; /将将A、B中的数据相加,结果存到中的数据相加,结果存到D中中 Sub D C D; /将将D、C中的数据相减,结果存到中的数据相减,结果存到D中中 Output D; /输出输出D中的数据中的数据实质:用于编制程序的计算机实质:用于编制程序的计算机指令集合指令集合。问题:输入问题:输入3个数个数A、B、C,求,求A+B-C的值。的值。汇编语言汇编语言 机器语言机器语言 高级语言高级语言10111000000100101011100000010011101110000001010011000000什么是程序设计语言?什么是程序设计语言?种类:机器语言、汇编语言、高级语言种

4、类:机器语言、汇编语言、高级语言Input A; Input B; Input C; Add A B D; Sub D C D; Output D;以以C语言为例语言为例#include void main() int a,b,c,d; scanf(“%d%d%d”,&a,&b,&c); d=a+b-c; printf(%dn, d); 汇编汇编编译编译n表示数据表示数据q数据类型数据类型n存储数据存储数据q常量常量/变量变量n处理数据处理数据q运算符运算符/表达式表达式q数据处理的流程控制数据处理的流程控制n顺序结构n选择 (分支)结构n循环结构程序设计语言的功能程序

5、设计语言的功能n例题:在屏幕上显示例题:在屏幕上显示: :C 语言语法语言语法编译预处理命令编译预处理命令主函数主函数块注释块注释行行(尾尾)注释注释#include int main( ) /返回值为整型返回值为整型 int a,b,sum; /* 变量定义变量定义*/ a = 3; /* 变量使用变量使用*/ b = 2; sum = a+b; printf(“The sum is %d n”, sum ); /输出结果输出结果 return 0; /返回返回0 = 赋值运算符赋值运算符例题:计算并显示两个数的和例题:计算并显示两个数的和%d 输入输出函数中的输入输出函数中的“格式字符串格

6、式字符串”,表示以十进制整数的,表示以十进制整数的 形式形式在在%d的位置输出的位置输出sum的值。的值。#include int main() int a,b,sum; /* 变量定义变量定义*/ a=3; b=2; /* 变量使用变量使用*/ sum=a+b; printf( ); /*输出结果输出结果*/ return 0;“%d+%d=%dn”,a,b,sum例题:计算两个数的和例题:计算两个数的和,以算式形式显示以算式形式显示能否为:能否为:printf(“a+b=sumn”);NO例题:输入两个数,显示它们的和值。例题:输入两个数,显示它们的和值。a,b的地址的地址小结:小结:C语

7、言程序的语言程序的语法成分语法成分n关键字关键字(保留字保留字)qC语言规定的具有特殊意义的词汇语言规定的具有特殊意义的词汇n运算符运算符n常量常量n注释注释n分隔符分隔符q逗号和空格逗号和空格n标识符标识符不是关键字不是关键字标识符标识符n概念概念q由程序员自由命名的由程序员自由命名的字符序列字符序列。类似。类似变量名变量名、函数名函数名等。等。q说明:说明:C语言要求语言要求“先定义、后使用先定义、后使用”。n命名规则命名规则q字母字母、数字数字、下划线下划线组成,且组成,且首首字字符不能为数字符不能为数字符号。符号。q不能使用不能使用关键字关键字,严格区分严格区分大小写大小写。例例如如:

8、 :试指出试指出下列标识符下列标识符中不中不合法合法的哪些?的哪些?sum Sum M.D.John Int Date 3days student_name #33 lotus_1_2_3 char M.D.John3days#33char例例题题1-1:输入:输入n,显示,显示n!#include /* 编译预处理命令编译预处理命令 */int fact(int n); /*计算计算n的阶乘的函数声明的阶乘的函数声明*/void main(void) /* 主函数主函数 */ int n; /* 变量定义变量定义 */scanf(%d, &n); /* 输入一个整数输入一个整数 */

9、printf(%dn, fact(n); /* 调用计算阶乘的函数调用计算阶乘的函数*/n程序如下:程序如下:int fact(int n) /* 定义一个求定义一个求 n! 的自定义函数的自定义函数 fact*/ int i, result = 1; /* 定义计算定义计算 n! 的函数的函数 */ for(i = 1; i = n; i+) /* 循环循环 */ result = result * i; return result; /* 返回函数的计算结果返回函数的计算结果 */函数函数定义:两部分构成定义:两部分构成n第一部分:第一部分:函数首部函数首部 int fact ( int

10、n )函数的第函数的第1 1行行返回值返回值类型类型函数名函数名参数类型参数类型参数参数名名 说明说明:若若函数函数无返回值,则使用无返回值,则使用void表示;表示; 例如:例如:int main(void) 或或 void main()例如:例如:void main( )若若函数函数无无参参数数,在括弧中写,在括弧中写voidvoid或或空括弧空括弧函数函数定义定义n第二部分:第二部分:函数函数体体q由由 括起的括起的0到多条语句构成,到多条语句构成, 不能省略不能省略;q语句以语句以;作为结束标志作为结束标志,标点符号为标点符号为英文半角英文半角形式。形式。q一一条条语句可以语句可以分写

11、在多行分写在多行,一行内一行内也也可写可写0到多条到多条语语句句;q若函数返回值类型若函数返回值类型不为不为void,则函数内需使用则函数内需使用return语句语句返回指定类型的运算结果。返回指定类型的运算结果。int fact(int n) int i, result = 1; for(i = 1; i = n; i+) result = result * i; return result;int fact(int n) int i,result=1;for(i=1;i=n; i+) result=result*i;return result;小结:小结:C语言程序的结构语言程序的结构特点

12、特点n函数是函数是构成构成C语言程序的语言程序的基本单位基本单位,一个,一个C程序由程序由一到多个函数组成(一到多个函数组成(C语言也称为语言也称为函数式的语言函数式的语言););n每个函数都每个函数都可可实现一个特定功能实现一个特定功能,一个函数内可以一个函数内可以调调用另一个函数用另一个函数(函数之间通过相互调用建立联系)(函数之间通过相互调用建立联系);n被调用函数可以是被调用函数可以是自定义自定义函数函数,也可以也可以是是库函数库函数;n在在一个一个C语言语言程序程序中中有且只有有且只有一个一个main函数函数(又称主又称主函数函数),程序总是程序总是从从main函数开始执行函数开始执

13、行,最终,最终在在main函数函数中结束中结束,main函数在程序中的函数在程序中的位置任意位置任意;#include int main( ) int i , j , sum; sum=0; for(i=1; i10;i+) for(j=1;j10;j+) sum+=i*j ; printf(“%dn”,sum); return 0;采用锯齿形书写格式采用锯齿形书写格式使用使用TABTAB缩进缩进 对齐对齐有足够的注释有足够的注释有合适的空行有合适的空行形成良好的程序设计风格形成良好的程序设计风格第第1章章 引言引言主要内容主要内容程序与程序设计语言程序与程序设计语言C语言的发展历史与特点语言

14、的发展历史与特点实际问题的求解过程实际问题的求解过程计算机的工作原理(补充)计算机的工作原理(补充)编程语言低级高级C 语言是贝尔实验室的 Dennis Ritchie 在1973 年设计的。主要版本:ANSI C(1983)、 ANSI C(1989)、ISO C(1999)C语言的历史(语言的历史(自学自学)在微机上,有许多性能良好的C语言系统可用。包括Turbo C、Borland C/C+;Microsoft Visual C/C+;Dev C+ 等。 C语言的特点(语言的特点(自学自学)n语言语言简洁简洁、紧凑,使用方便、灵活。、紧凑,使用方便、灵活。37(32:C89)个关键字,个

15、关键字,9种控制语句种控制语句n运算符运算符丰富丰富。 34种运算符种运算符(将括号、赋值、强制类型转换等作将括号、赋值、强制类型转换等作为运算符为运算符)。n数据结构数据结构丰富丰富,具有现代化语言的各种数据结构。标准类型、,具有现代化语言的各种数据结构。标准类型、构造类型、指针类型。构造类型、指针类型。n语法限制不太严格,程序设计语法限制不太严格,程序设计自由自由度大。例如:整型数据与度大。例如:整型数据与字符型数据可以通用。字符型数据可以通用。nC语言可以直接访问物理地址。能实现汇编语言的大部分功能,语言可以直接访问物理地址。能实现汇编语言的大部分功能,可以直接对硬件进行操作可以直接对硬

16、件进行操作-功能功能强大强大。n目标代码质量高,程序执行效率高目标代码质量高,程序执行效率高-高效高效。n程序可移植性好程序可移植性好-易移植易移植。第第1章章 引言引言主要内容主要内容程序与程序设计语言程序与程序设计语言C语言的发展历史与特点语言的发展历史与特点实际问题的求解过程实际问题的求解过程计算机的工作原理(补充)计算机的工作原理(补充)n问题分析与算法设计问题分析与算法设计q算法算法:解决某一问题的具体方法与步骤。解决某一问题的具体方法与步骤。实际问题的求解过程实际问题的求解过程定义累加变量定义累加变量i,和变量,和变量sum=0;i=1当当i=100时转,否则转时转,否则转若若i是

17、偶数则转,否则转是偶数则转,否则转 sum=sum+ii=i+1,转,转输出输出sum的值的值问题问题:求:求1到到100之间所有偶数的和。之间所有偶数的和。自然语言描述自然语言描述的算法的算法n自然语言自然语言n流程图流程图算法的描述方法算法的描述方法假标准流程图标准流程图结构化流程图结构化流程图顺序顺序结构结构分支分支结构结构循环循环结构结构AB真真假假PAB真真假假A条件P P真真假假当为当为“真真”求求1到到100之间所有偶数的和的流程图之间所有偶数的和的流程图显示显示sumsum=0;i=1i=100真真假假sum=sum+i;i=i+1P真真假假sum=0 ;i=1;i=100 输

18、出输出sumsum的值的值sum=sum+i; i=i+1;P真真假假标准流程图标准流程图结构化流程图结构化流程图P:i是偶数?是偶数?n编辑程序编辑程序实际问题的求解过程实际问题的求解过程sum=0 ;i=1;i=100 输出输出sumsum的值的值sum=sum+i; i=i+1;P真真假假q程序如下程序如下#include int main( ) int i=1,sum=0; while( imax?真真假假cmax?max=c真真假假输出输出max的值的值绘制绘制NS算法流程图算法流程图-课堂练习课堂练习nC语言实现的程序:语言实现的程序:#include int main( ) in

19、t a,b,c,max; scanf(%d%d%d,&a,&b,&c); max=a; if ( bmax ) max=b; if ( cmax ) max=c; printf(%d,%d,%d,max=%dn,a,b,c,max); return 0; if (maxb) max=b; if (maxc) max=c; 绘制绘制NS算法流程图算法流程图-课堂练习课堂练习n问题:输入问题:输入10个数,求其中的最大值。个数,求其中的最大值。输入数输入数m mmax=mk max真真假假输出输出 maxmaxk=k+1k=1max=mk max真真假假输出输出 maxmaxk=k+1k=0max=mk= =0真真假假max=m第第1章章 引言引言主要内容主要内容程序与程序设计语言程序与程序设计语言C语言的发展历史与特点语言的发展历史与特点实际问题的求解过程实际问题的求解过程计算机的工作原理计算机的工作原理实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论