C语言程序设计【基础入门教程】

上传人:文*** 文档编号:118855840 上传时间:2019-12-27 格式:PPT 页数:435 大小:1.24MB
返回 下载 相关 举报
C语言程序设计【基础入门教程】_第1页
第1页 / 共435页
C语言程序设计【基础入门教程】_第2页
第2页 / 共435页
C语言程序设计【基础入门教程】_第3页
第3页 / 共435页
C语言程序设计【基础入门教程】_第4页
第4页 / 共435页
C语言程序设计【基础入门教程】_第5页
第5页 / 共435页
点击查看更多>>
资源描述

《C语言程序设计【基础入门教程】》由会员分享,可在线阅读,更多相关《C语言程序设计【基础入门教程】(435页珍藏版)》请在金锄头文库上搜索。

1、C C 语言程序设计语言程序设计 Copyer:VigikingCopyer:Vigiking 第一章 计算机语言与C语言概述 1.1 计算机语言概念 计算机语言定义 计算机能够识别和接受的语言。 要使计算机按自己的意图工作,必 须使用计算机所能接受、理解和执 行的指令指挥计算机工作。 计算机语言的种类 机器语言 低级语言 汇编语言 (面向计算机) BASIC 入门语言 F77 科学计算 高级语言 Foxpro 数据库管理 (面向问题 ) C 多用途 计算机语言 机器语言 最早问世,用二进制代码构成指令。 如: 100000 (+) 110000 (-) 用机器语言编程的缺点: 繁琐、不直观、

2、不易调试。 如计算y=2x2+3x-1需要七八条指令。 移植性差。 依赖于计算机。 汇编语言 用符号构成指令,如:MOV、ADD 用汇编语言编程: 相对直观,但仍繁琐,仍是面向计算 机的语言。 汇编语言是计算机间接接受的语言 高级语言 与低级语言相比,有根本性的区别: 是面向问题的语言。 高级语言的一条指令(语句): y=2*x*x+3*x-1; 对应于:y=2x2+3x-1 y=sin(x); 对应于:y=sinx 用高级语言编程: 直观、易懂、移植性好(不依赖于具体计 算机) 上机运行高级语言程序需经过编译: 编译 执行 要上机完成一个计算问题,主要的任务就是 用高级语言编写出相应的源程序

3、。即至少要 学会一种计算机语言。 高级语言源程序 机器指令 目的程序 结果 编译程序 1.2 C语言的特点 集高级语言和低级语言的优点于一身: 能实现低级语言的大部分功能(如直接 访问内存物理地址、进行位操作等)。 图形功能强。 运算符和数据结构丰富。 语法限制不太严格,程序设计自由度大 。 生成目标代码质量高,程序执行效率高 。 1.3 简单的C程序介绍 例1: main() 主函数说明 程序框架 printf(“abcdef”); 函数体 语句 程序的功能是输出字符串:abcdef 例2:求两数之和。 main() int a,b,c; a a=100; b=50; b c=a+b; c

4、printf(“n c=%d”,c); 程序运行结果:c=150 例3:求两数中的最大值。 函数类型 函数名 形参 main() int max (int x,int y) int a,b,c; int z; scanf(“%d,%d”, if(xy) z=x; c=max(a,b); else z=y; printf(“nmax is:%d”,c); return(z); a x b y c z (两个函数组成) 3 5 3 5 55 总结上例可知: (1) C程序由函数构成。 (2) 函数由两部分组成: 函数说明部分:函数名、函数类型、形 参名、形参类型。 函数体:实现函数的具体操作;由语

5、句 构成。 (3) 程序总是从main函数开始执行。 (4) 书写格式自由。 (5)语句必须有分号。 : 第二章 算法 2.1 算法的概念 要利用计算机处理问题,光学习语言 的语法规则还不够,最重要的是要学会 针对各类型的问题,拟定出有效的解题 方法和步骤。解题方法和步骤就是算法 。 算法: 为了解决一个问题而采取的有限步骤。 计算机算法: 如何使计算机一步一步地工作的具体过程。 利用计算机处理问题的步骤: 1)设计好算法算法设计; 2)用计算机语言实现算法程序设计。 算法必须是“有效”的。 算法设计还要充分考虑算法的好坏。 衡量算法好坏的主要标准: 程序简练。 执行速度快。 占空间少。 例:

6、考虑 的算法。 算法:直接表达。 直接用语句 s=1+2+3+4+5+6+7+8+9+10 当项数较多时该算法不适用 s=i 1 10 算法:迭代法(累加求和法) s=1+2+3+4+5+6+7+8+9+10 算法步骤: s i 使s=0 + 使i=1 累加器 记数器 s+is i+1i 若i10转,否则转 输出s 01123364105 该算法通用,是好算法 2.2 算法的表示 算法需要有统一的表示方法 常用的表示方法有: 自然语言 流程图 结构化流程图 N-S流程图. 1、自然语言 对于计算 s=1+2+3+4+5+6+7+8+9+10 用自然语言表示为: 使s=0 (s为累加器) 使i=

7、1 (i为计数器) s+is (累加求和公式) i+1i (计数器加1) 若i10转,否则转 输出s的值 特点:通俗易懂、文字冗长、含义不大严格 。 2、流程图 用流程图符号表示算法。 常用的流程图符号 起止框 输入输出框 处理框 流程线 判断框 对于计算 s=1+2+3+4+5+6+7+8+9+10 用流程图表示为: s+i s i+1 i S+i s S+i s i10 输出s 0 s 1 i 直观形象,易于理解,次序清楚 Y N 3、结构化流程图 传统的流程图有一个弊端:对流程线没 有严格的限制,对于较复杂的算法可能会 变成乱麻一般(BS型算法)。 为克服这一弊端,提出了由三个基本结构

8、组成算法流程图的思想: 结构化流程图 三个基本结构: 顺序结构 按固定顺序(从上到下或从左到右)执行 的结构。 A B a b 选择结构 根据条件P选择执行哪一个分支。 成立 不成立 p AB a b 成立不成立 例:计算 y= 1/x 当x0时 y= 10000 当x=0时 的算法流程图图: 选择结构 输入x X=0? 10000y 1/xy 输出y YN 循环结构 重复执行某些操作的结构。 分为两种: 当型循环和直到型循环。 当型循环 直到型循环 P1 A A P2 a a b b Y Y N N 可以看出,每个基本结构都只有 一个入口和一个出口,因此,用三 个基本结构构成的流程图不会象乱

9、 麻一般,用三个基本结构构成的流 程图就成为结构化流程图,用结构 化流程图描述的算法称为结构化算 法,相应的程序设计就称为结构化 程序设计。 观察前例: 0 s 1 i S+i s i+1 i i10 输出s 顺序结构 循环结构 y n 4 N-S流程图 N-S流程图的三个基本结构: A B P成立不成立 AB A B 当P1 直到P2 顺序结构 选择结构 循环结构 例:计算 y= 1/x 当x0时 y= 10000 当x=0时 的N-S流程图: 输入x X=0?是否 10000y 1/xy 输出y 例: 计算 s=1+2+3+4+5+6+7+8+9+10 的N-S流程图: i10 直到i10

10、 直到型 当型 0 s 1 i 输出s 1 i 0 s s+i s i+1 i s+i s i+1 i 输出s 第三章 数据类型、运算符 与 表达式 3.1 C 的数据类型 基本类型 (整型、实型、字符型、枚举型) 构造类型 (略) 指针类型 (略) 空类型 各类型包含常量与变量 3.2 常量与变量 常量与符号常量 常量 在程序运行过程中其值保持不变的量。 符号常量 用来代表一个常量的标识符。 #define PI 3.1415926 例: #define PI 3.1415926 main() float r=2,c; c=2*PI*r; printf(“%f”,c); 变量 其值可以改变的量。 变量的三要素: 变量名 每个变量有一个名字,作为识别该变量的标 识符。 变量的值 每个变量有一个值,变量的值是随时可 以改变的。 变量的存储单元 每个变量占据一个内存单元,用于存放变量 的值。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号