




已阅读5页,还剩40页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言基础 顺序结构程序设计 TheCProgramming 2020 1 1 2 程序的三种基本结构 顺序结构 N S结构图 流程图 选择结构 2020 1 1 3 程序的三种基本结构 循环结构 直到型循环 当型循环 N S结构图 流程图 2020 1 1 4 Overview C语言的语句类型数据输出数据输入顺序结构程序设计 2020 1 1 5 2 1C语言的语句类型 主要内容 说明性语句表达式语句控制语句复合语句 2020 1 1 6 2 1 1说明性语句 对程序中使用的变量 数组 函数等操作对象进行定义 声明的描述语句只起说明作用 不产生可执行的机器指令代码 例如 inta b floatfunction int int C程序由函数组成 函数的格式 函数名 参数表 说明部分 执行部分 数据类型说明语句 可执行语句 2020 1 1 7 函数 形式参数和实际参数函数定义中的参数是形式参数函数的调用者提供给函数的参数叫实际参数形参和实参可能不只一个 如果多于一个时 函数声明 调用 定义的形式都要一一对应 不仅个数要对应 参数的数据类型也要对应好的函数要对函数的参数进行有效性判断函数的参数个数的控制 voidfunDemo int main intnum scanf d 2020 1 1 8 函数 续 函数的调用函数调用相当于一个表达式 除了void类型的函数C 2 max a b 函数在被调用前 必须在调用函数之前说明类型函数的嵌套调用所有函数的定义都是平行的在函数中可以调用其他函数函数的嵌套层数有要求 2020 1 1 9 函数的嵌套调用 2005年3月 main函数 调用函数A 函数A 调用函数B 函数B 2020 1 1 10 函数的递归调用 递归调用 一个函数直接或间接地调用了它本身 就称为函数的递归调用 递归函数 在函数体内调用该函数本身 intsub intx inty z if z sub y else return 例如 直接调用sub函数本身 2020 1 1 11 函数 续 函数值的返回可以把函数当作一个变量 和变量一样是有类型的声明函数类型return语句返回值 return语句执行后 函数中的其他语句不再被执行 一个函数只能返回一个值 如果想返回一组数值 就要使用数组或者结构或者指针 2020 1 1 12 2 1 3控制语句 1 选择分支控制语句if else switch 2 循环控制语句for while do while 3 其他控制语句break continue gotoreturn 2020 1 1 13 2 1 4复合语句 用一对花括号 括起来的若干条语句花括号中可以是说明语句 表达式语句 控制语句 也可以是复合语句例如 if a b max a min b for n 1 n 100 printf d n p break 2020 1 1 14 2 1 4复合语句 续 复合语句中如果有说明性语句 应该写在可执行语句的前面 例如 main inta b a b 100 floatc 10 23 printf f n c printf d d n a b 要特别注意 花括号的配对花括号的位置 C语言学习的难点之一 2020 1 1 15 2 2数据输出 主要内容 字符输出函数格式输出函数 2020 1 1 16 2 2 1字符输出函数 函数调用的一般形式putchar ch 功能 在标准输出设备 即显示器屏幕 上输出一个字符 例如 putchar b putchar n putchar 101 putchar st 2020 1 1 17 说明 putchar是C语言的标准库函数 使用时必须加编译预处理命令 include stdio h 或 include 例2 1 利用putchar函数输出字符 include stdio h main charc1 c2 c1 a c2 b putchar c1 putchar c2 putchar n putchar c1 32 putchar c2 32 putchar n 输出结果 abAB 2020 1 1 18 预处理 预处理 预处理指令是以 号开头的代码行 号必须是该行除了任何空白字符外的第一个字符 后是指令关键字 在关键字和 号之间允许存在任意个数的空白字符 include包含一个源代码文件整行语句构成了一条预处理指令 该指令将在编译器进行编译之前对源代码做某些转换 include 2020 1 1 19 预处理 续 文件包含 include预处理指令的作用是在指令处展开被包含的文件 包含可以是多重的 也就是说一个被包含的文件中还可以包含其他文件 标准C编译器至少支持八重嵌套包含 包含头文件有两种格式 include include ftl h 第一种方法是用尖括号把头文件括起来 这种格式告诉预处理程序在编译器自带的或外部库的头文件中搜索被包含的头文件 第二种方法是用双引号把头文件括起来 这种格式告诉预处理程序在当前被编译的应用程序的源代码文件中搜索被包含的头文件 如果找不到 再搜索编译器自带的头文件 2020 1 1 20 2 3 2格式输出函数 函数调用的一般形式printf 格式控制 参数2 参数n 功能 按格式控制所指定的格式 在标准输出设备上输出参数2 参数n的值 例如有程序段 inta 123 b 100 printf d d d n a b a b printf c d d d n a b a b 2020 1 1 21 格式控制 用双引号括起的字符串 用于指定输出数据的类型 格式 个数包括 普通字符和格式说明符 照原样输出 printf c d d d n a b a b 格式说明符 指定输出3个十进制整型数 分别为变量a b a b的值 2020 1 1 22 输出格式说明符 在 和格式符之间可以使用附加说明符 2020 1 1 23 附加格式说明符 例如 ld 输出十进制长整型数 m nf 右对齐 m位域宽 n位小数或n个字符 m nf 左对齐 2020 1 1 24 例2 2整型数据的输出 main inta 11 b 22 intm 1 longn 123456789 printf d d n a b printf a d b d n a b printf m d o x u n m m m m printf n d n n printf n ld n n 程序输出 1122a 11 b 22m 1 177777 ffff 65535n 13035n 123456789 2020 1 1 25 例2 3实型数据的输出 main floatx 1234 56 y 1 23456789 doublez 1234567 123456789 printf x f y f n x y printf z f n z printf z e n z printf z 18 8f n z printf x 10 3f n x printf x 10 3f n x printf x 4 3f n n x 程序输出 x 1234 560059 y 1 234568z 1234567 123457z 1 23457e 06z 1234567 12345679x 1234 560 x 1234 560 x 1234 560 2020 1 1 26 例2 4字符型数据的输出 main intm 97 charch B printf m d c n m m printf ch d c n ch ch printf s n student printf 10s n student printf 10s n student printf 10 3s n student printf 3s n n student 程序输出 m 97ach 66Bstudentstudentstudentstustu 2020 1 1 27 注意 printf函数格式控制中的格式说明符与输出参数的个数和类型必须一一对应 格式说明符的 和后面的描述符之间不能有空格 除 X E G外类型描述符必须是小写字母 长整型数应该用 ld 或 lo lx lu 格式输出 否则会出现输出错误 printf函数的参数可以是常量 变量或表达式 在计算各参数值时 VC采用从左至右的顺序求值 2020 1 1 28 2 3数据输入 主要内容 字符输入函数格式输入函数 2020 1 1 29 2 3 1字符输入函数 函数调用的一般形式getchar 功能 从标准输入设备 即键盘 上交互输入一个字符 例如 getchar c getchar printf c n getchar 2020 1 1 30 例如 例2 8 getchar函数的应用 include stdio h main charch ch getchar printf c d n ch ch printf c d n n ch 32 ch 32 程序运行时输入 m并按回车键后输出结果是 m109M77 2020 1 1 31 说明 getchar是C语言的标准库函数 使用时必须加编译预处理命令 include stdio h 或 includegetchar函数需要交互输入 接收到输入字符之后才继续执行程序 连续使用getchar函数时 要注意字符的输入形式 例如执行如下程序段 charch1 ch2 ch1 getchar ch2 getchar 必须连续输入两个字符 中间不能有其他字符 2020 1 1 32 2 3 2格式输入函数 函数调用的一般形式scanf 格式控制 地址参数2 地址参数n 功能 按格式控制指定的格式 从标准输入设备 即键盘 交互输入数据 并依次存放到对应地址参数指定的变量中 即将输入值赋给变量 例如 scanf d f 2020 1 1 33 格式控制 用双引号括起的字符串 用于指定输入数据的类型 格式 个数以及输入的形式包括 普通字符和格式说明符 照原样输入 scanf a d b d 格式说明符 指定输入2个十进制整型数赋给变量a和b 2020 1 1 34 输入格式说明符 在 和格式符之间可以使用附加说明符 2020 1 1 35 附加格式说明符 例如 ld lo 输入十进制 八进制长整型数 lf le 输入双精度实型数 mf 输入m位数 域宽 d 忽略输入的一个整型数 对float和double型指整数位数 小数点 小数位数 2020 1 1 36 例如 scanf d d d 输入的形式是 a 32 b 28 普通字符要照原样输入 2020 1 1 37 程序 main inta b c longm floatx doubley charch string 20 printf inputa b c m scanf d o x ld 2020 1 1 38 使用scanf函数应注意 要求在程序运行中输入数据 输入的数据个数和类型必须与格式说明符一一对应 地址参数形式 变量名 除数组或指针变量 格式控制中有普通字符时 必须照原样输入 格式控制中无普通字符时 输入的数值型数据和字符串用空白符分隔 字符型数据不必分隔 double型数据输入时 必须用 lf或 le格式实型数输入时域宽不能用m n形式的附加说明为了减少不必要的输入量 除了逗号 分号 空格符以外 格式控制中尽量不要出现普通字符 也不要使用 n t 等转义字符 2020 1 1 39 scanf c c c 要输入 abc 不能输入 a b c 注意数值型数据与char型数据的混合输入 注意 续 格式符之间若无普通字符 则 输入的数值型数据用空白符分隔输入的char型数据不必分隔 例如 scanf d d 错误输入 32 28 a 正确输入 32 28a 2020 1 1 40 2 4顺序结构程序设计 2 4 1顺序结构程序的一般算法描述 可用 变量初始化赋值语句输入函数调用语句 注意各个语句的顺序 2020 1 1 41 2 4 2顺序结构程序设计举例 例2 15 数据交换 从键盘输入a b的值 输出交换以后的值 思路 在计算机中交换变量a和b的值 不能只写下面两个赋值语句a b b a 正确的交换方法 c a a b b c 2020 1 1 42 程序 main inta b c printf nInputa b scanf d d 程序运行情况如下 Inputa b 32 57 Beforeexcha
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 泰山医学院护理复试题库及答案
- 业务外包委托协议书要求
- 大专药师考试题及答案
- 人力资源管理中员工培训体系构建工具
- 美丽的自然我们的责任写景作文8篇
- 企业文件分类与管理标准
- 医疗设备采购申请与审批流程管理工具
- 医疗安全教育培训课件
- 公司会议策划及活动执行手册
- 家乡的秋天写景散文(11篇)
- GB/T 18690.2-2017农业灌溉设备微灌用过滤器第2部分:网式过滤器和叠片式过滤器
- 粤教花城版小学音乐歌曲《哈哩噜》课件
- 河北省特种设备检验收费标准
- 集成电路技术导论课件
- 交管12123学法减分试题库带答案
- 培育和践行社会主义核心价值观的课件
- 交通标志牌工程施工组织设计(标准版)
- 第二章药物转运及转运体
- 全区建设工程质量检测人员岗位考试考核实施细则
- 【课件】《红烛》课件24张统编版高中语文必修上册
- 交通事故认定书复核申请书模板
评论
0/150
提交评论