




已阅读5页,还剩59页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章用C语言编写程序 2 1在屏幕上显示HelloWorld 2 2求华氏温度100 F对应的摄氏温度2 3计算分段函数2 4输出华氏 摄氏温度转换表2 5生成乘方表与阶乘表 例2 1在屏幕上显示一个短句 HelloWorld 显示 HelloWorld includeintmain void printf HelloWorld n return0 注释文本 编译预处理命令 主函数 输出文字 换行符 输出函数 1 任何程序都有主函数2 程序由若干语句组成3 语句由 结束 例子 例2 2在屏幕上显示一个短句 Programmingisfun AndProgramminginCisevenmorefun includeintmain void printf Programmingisfun n printf AndProgramminginCisevenmorefun n return0 例子 includeintmain void intcelsius fahr fahr 100 celsius 5 fahr 32 9 printf fahr d celsius d n fahr celsius return0 例2 3求华氏温度100 F对应的摄氏温度 摄氏温度C 5 9 F 32 fahr 100 celsius 37 例子 A 字面常量 直接常量 要区分不同的类型整型常量1 2 3实型常量1 5 3 2字符常量 a b 注意 字面常量不需定义 可直接使用 1 常量 程序运行过程中其值不能改变的量 B 符号常量 用一个标识符代表一个常量 符号常量的使用 宏定义书写习惯 符号常量名采用大写字符 宏定义 include intmain void floatr area r 5 area PI r r printf Theareais f area return0 definePI3 1415926 2 变量 程序运行中其值改变的量 可以用标识符对变量命名 在c语言中变量必须 先定义 后使用 书写习惯 变量名常用小写字符 形式 a sum st count boy1 string 3 区分变量的三个属性 变量名 变量值 存储单元 读取 变量名实际代表一个确定的存储单元 程序编译完成后 变量就与数据存储单元一一对应 对变量读取操作 就是到对应的存储单元中读取数据 而且取之不尽 改写 就是给变量赋与新值 原值被覆盖 注意 1 变量的定义方法与符号常量不同 符号常量 define标识符常量变量定义 数据类型标识符 4 变量数据的读取与改写 2 变量在内存中占据一定的存储单元 关键字 标识符 1 关键字 C语言中的一些保留字 在程序中表示固定的意义 不能被重新定义用作它用 C的关键字有32个 2 标识符 由程序员定义的一些名字 通常是一些字符序列 命名规则 1 有效字符 只能由字母 数字和下划线组成 且以字母或下划线开头 2 有效长度 随系统而异 但至少前 个字符有效 如果超长 则超长部分被舍弃 3 C语言中的关键字不能用作标识符 4 选择标识符时 应做到 见名知意 注意 C语言是区分大小写的语言 运算 对数据进行计算处理的过程例 y x x y cos x 运算符 表示不同运算的符号 它代表各种运算的含义 例 b 几个基本概念 算术运算 名称运算符运算规则加 加法减 减法乘 乘法除 除法注意 两个整数相除的结果取整数模 整除取余 两侧均为整数 而且分子 分母 结果 余数 分子 分母 结果 分子 基本的算术运算符 赋值运算 格式 变量 表达式 运算规则 先计算等号右边的表达式 然后将其值赋给等号左边的变量 注意 C语言赋值运算符与数学中的等号其含义有着本质的不同 例 x 10 y x x x x x 1 赋值运算符 赋值运算 由赋值运算符连接一个变量和一个表达式构成 格式 表达式 例1 intx y x 5 y 10 y 5 x 10 y 5 例2 charc1 c1 a 赋值表达式 赋值表达式 格式 printf 格式控制 输出表列 说明 输出格式控制部分用于规定相应输出项的格式 由一系列格式转换说明符 简称格式符 和普通字符组成 输出表列是指定要输出的数据 可以是变量 常量或表达式 注意 a 多个变量 常量或表达式时 用逗号 分隔 b 输出变量 常量或表达式的个数要与格式符个数相同 举例 例2 4分段计算水费 要解决的问题 输入计算分段函数输出 并保留2位小数 例子 includeintmain void doublex y printf Enterx x 0 n 输入提示 scanf lf Enterx x 0 15 f 15 000000 20 00 Enterx x 0 21 3 f 21 300000 42 75 关系运算符 名称运算符小于大于等于 等于 不等于 优先次序前四种高于后两种 低于算术运算符 高于赋值运算符 格式 功能 if e S1 elseS2 e的结果为真 非0 则执行S1 e的结果为假 0 则执行S2 Pleaseinputa b 100 99max 100 例 输入两个整数 将较大的数输出 intmain void inta b printf nPleaseinputa b scanf d d 一般格式 scanf 格式控制 地址表列 scanf d f 格式符 变量地址 地址运算符 格式 地址表达式 a 5 8000H 内存 关于scanf 函数的注意事项 格式控制 后面必须是变量地址 2 输入数据时 必须与前面 格式控制 字符串完全对应 3 用 c 格式输入字符时 空格和 转义字符 都是有效字符 includeintmain void intcelsius fahr printf Enterfahr n scanf d Enterfahr 100fahr 100 celsius 37 例子 例2 3求华氏温度100 F对应的摄氏温度 摄氏温度C 5 9 F 32 include命令用户调用库函数时 将相应的头文件包含到源程序中 例如调用scanf printf 需要 include调用sqrt 需要 include 库函数C语言处理系统提供事先编好的函数 供用户在编程时调用 scanf printf exp 在相应的系统文件 头文件 中定义一些必需的信息 平方根函数sqrt x 绝对值函数fabs x fabs 3 56 的值为3 56幂函数pow x n xnpow 1 1 2 的值为1 21 即1 12 指数函数exp x exexp 2 3 的值为e2 3以e为底的对数函数log x lnxlog 123 45 的值为4 815836以10为底的对数函数log10 x log10 xlog10 123 45 的值为2 091491 例2 5计算存款的本息 输入存款金额money 存期year和年利率rate 根据公式计算存款到期时的本息合计sum 税前 输出时保留2位小数 sum money 1 rate year sum money pow 1 rate year 例子 include includeintmain void intmoney year doublerate sum printf Entermoney scanf d Entermoney 1000Enteryear 3Enterrate 0 025sum 1076 89 例2 6输入2个整数lower和upper 输出一张华氏 摄氏温度转换表 华氏温度的取值范围是 lower upper 每次增加1 F 例子 fahrcelsius30 1 131 0 6320 0330 6341 1351 7 includeintmain void intfahr lower upper doublecelsius printf Enterlower scanf d fahr fahr 1 Enterlower 30Enterupper 35fahrcelsius30 1 131 0 6320 0330 6341 1351 7 例2 8中for语句的流程 for fahr lower fahr upper fahr celsius 5 0 9 0 fahr 32 printf d 6 1f n fahr celsius fahr fahr 2输出 Enterlower 30Enterupper 35fahrcelsius30 1 131 0 6320 0330 6341 1351 7 格式 for 表达式1 表达式2 表达式3 循环体语句 举例 例1 用for循环语句计算1 3 5 2n 1 其中n 1 2 100 includeintmain void intn sum for sum 0 n 1 n 100 n sum 2 n 1 printf sum d n sum return0 例2 编一个程序求满足下列条件的四位数 该数是一个完全平方数 第一 三位数字之和为10 第二 四位数字之积为12 解题思路 根据题意 设j是要找的四位数 则j i i 而i只能在32 99之间变化 因为312 1000 322 1024 992 9801 1002 10000 设a为j的千位数 a j 1000 设b为j的百位数 b j 100 a 10 设c为j的十位数 c j 10 a 100 b 10 设d为j的个位数 d j a 1000 b 100 c 10 最终 j a 1000 b 100 c 10 d includeintmain void inti j a b c d for i 32 i 99 i j i i a j 1000 b j 100 a 10 c j 10 a 100 b 10 d j a 1000 b 100 c 10 if a c 10 例3 用for循环语句计算1 2 3 20 设 n为数列项变量和循环控制变量 s为累加和变量 t为阶乘变量 设i为循环变量 则 指定循环起点的表达式1 i 1给出循环条件的表达式2 i 100设置循环步长的表达式3 i 循环体语句 sum sum i for i 1 i 100 i sum sum i 求1 2 100抽取具有共性的算式 sum sum isum初值为0 该算式重复100次 i从1变到100 计算1 2 3 100 includeintmain void inti sum sum 0 置累加和sum的初值为0 for i 1 i 100 i 循环重复100次 sum sum i 反复累加 printf sum d n sum 输出累加和 return0 for i 1 i 100 i sum 0 sum sum i sum 5050 includeintmain void inti sum sum 0 for i 1 i 100 i sum sum i printf sum d n sum return0 求1 1 2 1 3 1 100 for i 1 i 100 i sum sum 1 0 i inti doublesum printf sum f n sum 一般包含四个部分 初始化 指定循环起点给循环变量赋初值 如i 1 进入循环之前 设置相关变量的初值 如sum 0 条件控制 只要i100 循环结束 例2 7求1 2 3 n for i 1 i n i sum sum i printf Entern scanf d Entern 100Sum 5050 例子 includeintmain void inti sum sum 0 for i 1 i 100 i sum sum i printf sum d n sum return0 includeintmain void inti sum printf Entern scanf d 求1 1 2 1 3 1 n includeintmain void inti doublesum printf Entern scanf d 例子 求前n项和 即循环n次 每次累加1项 for i 1 i n i sum sum item 第i项 item 1 0 2 i 1 求1 1 3 1 5 的前n项和 例子 includeintmain void inti n doubleitem sum printf Entern scanf d 例子 求前n项和 即循环n次 每次累加1项 for i 1 i n i sum sum item 第i项 item flag 1 0 denominatordenominator denominator 2flag flag 例2 8求1 1 3 1 5 的前n项和 item flag 1 0 2 i 1 例子 includeintmain void intdenominator flag i n doubleitem sum printf Entern scanf d n 1 2 nfor i 1 i n i product product item 第i项 item i 例2 9求n product 例子 includeintmain void inti n doubleproduct printf inputn n scanf d 例子 输入实数x和正整数n 计算xn x x xfor i 1 i n i power power item 第i项 item 求xn 例子 includeintmain void inti n doublex power printf Enterx n n scanf lf d 例子 例2 10 1 输入一个正整数n 生成一张2的乘方表 输出20到2n的值 可以调用幂函数计算2的乘方 for i 0 i n i power pow 2 i 调用幂函数pow 2 i 计算2的i次方 输出power的值 例子 include includeintmain void inti n doublepower printf Entern scanf d Entern 4pow 2 0 1pow 2 1 2pow 2 2 4pow 2 3 8pow 2 4 16 例子 例2 10 2 生成阶乘表 输入一个正整数n 生成一张阶乘表 输出0 到n 的值 要求定义和调用函数fact n 计算n 函数类型是double for i 0 i n i power pow 2 i 调用幂函数pow 2 i 计算2的i次方 输出power的值 for i 0 i n i product fact i 调用自定义函数fact i 计算i 输出product的值 例子 includedoublefact intn 自定义函数的声明 intmain void inti n doubleresult printf Entern scanf d Entern 30 11 12 23 6 doublefact intn 函数首部 inti doubleproduct product 1 for i 1 i n i product product i returnproduct 将结果回送主函数 例子 强调程序设计的风格和程序结构的规范化 提倡清晰的结构 其基本思路是将一个复杂问题的求解过程划分为若干阶段 每个阶段要处理的问题都容易被理解和处理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国美术史试题及答案
- 2025年飞行执照测试题及答案
- DB65T 4777.2-2024 社区视频信息结构化处理系统 第2部分:接口协议要求
- 幼资面试题库及答案
- 高速防护栏施工劳务合同(3篇)
- 2025公务员英雄面试题及答案
- 2025公务员天灾面试题及答案
- 餐饮连锁厨师团队合作协议
- 影像专业面试题目及答案
- 2025年中医基础理论试题及答案
- TCQFX001-2024四川省机动车维修工时定额标准
- 油脂脂肪酸组成的测定内标法58课件
- 光存储技术革新-洞察及研究
- 浙江科技大学《高等数学Ⅱ》2025-2026学年期末试卷(A卷)
- 电影鉴赏教学课件
- 跨境贸易背景下非遗工艺产业的机遇与挑战
- (高清版)DB11∕T 2456-2025 消防安全管理人员能力评价规范
- 2025至2030苯基吡唑类杀虫剂行业市场发展分析及发展前景报告
- 老年病贫血护理
- 第五单元晚清时期的内忧外患与救亡图存(单元复习课件)-高一历史(中外历史纲要上册)
- 眼科常见疾病及其用药
评论
0/150
提交评论