c语言使用求余方式的转化为二进制程序,C语言第三讲 程序结构 (下).ppt

《C语言第三讲 程序结构 (下).ppt》由会员分享,可在线阅读,更多相关《C语言第三讲 程序结构 (下).ppt(24页珍藏版)》请在人人文库网上搜索。

1、1,第三讲 程序的结构(下),在函数间传递数据,2,主要内容,在函数间传递数据 讨论整数类型 整数变量的定义 整数的运算 整数的输入和输出 整数数据在函数之间传递,整数类型 int,存储特点:直接二进制存储 存储字节: TC:2字节 32767 -32768 VC :4字节 2147483647 - 2147483648,3,整数变量的定义,分配内存空间,按名存取操作,不同的定义形式 int x,y; int x; int y;,4,整数运算,/ 整数除整数,得整数; 其中一个是实数结果也是实数 如:1/2 0,9/4 2 , 3/2 = 1 , 3.0/2 = 1.5 ?5 * (fahr 。

2、- 32) / 9 和 5 / 9 * (fahr - 32) 等价吗 % 针对整型数据除取余数 如: 565,941,10040,5,混合运算,双目运算符两侧操作数的类型要相同,不然要按混合运算原则转换 混合运算原则: 数据类型自动转换为相同类型 自动转换原则:取值范围小的转换为取值范围大的数据类型,6,整数的输入和输出,%d scanf(“%d”,7,8,示例sample01_06.cpp,void main(void) int x,y,q,c; x=230; y=107; q=x/y; c=x%y; printf(“quotient=%d, remainder=%d”,q,c); ,整数。

3、变量声明 赋值语句 整数运算:/ ,% 输出变量d的值,9,整数运算特性的运用,取位算法 一个三位数abc a=abc/100 c=abc%10 b=?,求余运算取末几位 整除运算取头几位,10,示例sample01_07.cpp,void main(void) int x,y,q,c; printf(“input x:”); scanf(“%d”, ,输入语句 变量值的输入加强程序通用性,11,函数之间的传送数据,主调函数 主调函数需要传送数据(实参值)到子函数 调用时安排接收子函数的返回值,子函数 子函数安排存储单元(形参变量)接收主调函数传送来的数值。 求解的结果需要返回到主调函数。(r。

4、eturn语句),12,函数之间的传送数据示例,#include main() int x; scanf(“%d”, ,求绝对值函数 库文件:math.h 绝对值函数原型(函数头) int abs( int s);,接收返回值的变量,实参,形参,13,示例sample01_08.cpp,#include int div(int x,int y); /整除运算函数 int mod(int x,int y); /求余运算函数 int div(int x,int y) return x/y; int mod(int x,int y) return x%y; ,void main(void) int 。

5、x,y,q,c; printf(input x:); scanf(%d, ,函数声明,函数定义,函数调用,14,整数数据通过参数传入到子函数,q=div(x,y);,int div(int x,int y) ,q=div(10,3);,q=div(x-10,y+3);,值,参数变量,整数数据值通过return 返回到主调函数 ,是函数运算的结果,15,q=div(x,y);,int div(int x,int y) return x/y; ,函数的几个重要的概念,调用方,函数声明 函数定义的头部加分号 参数变量可省略,只写参数变量的数据类型 函数调用 实际参数的值传递 接收返回值,被调方,函数。

6、定义 函数类型 形式参数 return语句 return 表达式; -有返回值, -返回值类型与函数类型一致 return; -无返回值,16,17,编写有返回值的带参函数,思路 已知什么-参数 求什么返回值的数据类型决定函数类型,一般格式 函数类型 函数名(数据类型 形参变量1,数据类型 形参变量2) return 返回值; ,示例sample01-09.cpp地下深度(单位为千米)与温度的关系满足公式celsius=10(depth)+20,编写函数celsius_at_depth计算并返回以千米为单位的某深度对应的温度。,思路 已知(参数) 地下深度depth 求(返回值) 对应的温度c。

7、elsius,int celsius_at_depth(int depth) int c; c= 10*depth+20; return c; ,18,形参变量,函数(返回值)类型,返回值,19,调用有返回值的带参函数的形式-可接收返回值的位置,赋值语句 q=div(x,y); 运算表达式 n=div(x,10)*10+mod(x,10); 函数的参数 printf(“quotient=%d, remainder=%d”, div(x,y), mod(x,10);,示例:使用函数celsius_at_depth,完成功能运算。,IPO结构,#include int celsius_at_dep。

8、th(int depth); void main() int depth, celsius; printf(depth=); scanf(%d, ,最简验证,#include int celsius_at_depth(int depth); void main() printf(“%d千米深处的温度是%d度”,5, celsius_at_depth( 5 ) ) ; ,20,21,实践,1、改错error1-7.cpp :华氏温度转化为摄氏温度 2、打开程序ex01_06.cpp,编写函数实现功能:将华氏温度转化为摄氏温度 3、打开程序文件ex01_07.cpp,编写取末位函数和主函数 4、补。

9、充: (1)键盘输入3个整数计算算术平均值并输出,要求计算平均值用自定义函数完成 (2)输入一个三位整数,对其进行倒置构成一个新的整数并输出,要求倒序数构成操作用自定义函数实现。 (如:输入整数123,输出整数321) *(3)对学有余力的同学自学循环,完成任意位数的整数倒置,22,改错:华氏温度转化为摄氏温度 error1_7.cpp,#include int main(void) int celsius; fahr; printf(input fahr:) scanf(%d,fahr); celsius = 5/9 * (fahr - 32) ; printf(fahr = d, celsius = %dn, fahr, celsius); return 0; ,23,编写函数完成华氏温度转化为摄氏温度,完整程序main函数中通过调用getCelsius函数求摄氏温度。,24,编程,编写取末位函数: int getLastBit(int number),返回正整数number的最后一位 在main函数中设计步骤,验证函数getLastBit的正确性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值