- 1、本文档共60页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 例3-3:找零钱问题 假定有伍角、壹角、伍分、贰分和壹分共五种硬币,在给顾客找硬币时,一般都会尽可能的选用硬币个数最少的方法。例如,当要给某顾客找七角二分钱时,会给他一个伍角,2个壹角和1个贰分的硬币。请编写一个程序,输入的是要找给顾客的零钱(以分为单位),输出的是应该找回的各种硬币数目,并保证找回的硬币数最少。 * 算法: int change; //定义存放零钱的变量 int wj,yj,wf,ef,yf; //定义存放5种硬币个数的变量 输入change wj=change/50;change%=50; //5角硬币数 yj=change/10;change%=10; //1角硬币数 wf=change/5;change%=5; //5分硬币数 ef=change/2; //2分硬币数 yf=change%2; //1分硬币数 输出:wj,yj,wf,ef,yf; * 输入一个5位正整数,按要求完成: (1)分别取出高端2位数、低端2位数以及中间1位数,并按照中、低、高次序输出,输出格式如下示例。 (2)以中间数作为最高位(万位),低端数作为千位和百位,高端数作为十位和个位,形成一个新的5位整数,并输出。 示例:输入:12345 输出:中间数:3,低端数:45,高端数:12 新的数:34512 例3-4:变换整数 * 例3.3 整型数据的溢出#include stdio.hvoid main(){ short int a,b; a=32767; b=a+1; printf(“%d,%d\n”,a,b);} 说明:数值是以补码表示的。一个整型变量只能容纳-32768~32767范围内的数,无法表示大于32767或小于-32768的数。遇此情况就发生“溢出”。 运行结果: 32767,-32768 * 3.4 浮点型数据 1. 浮点型常量的表示方法 两种表 示形式 小数 指数 0.123 3e-3 注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数: 1e3、1.8e-3、-123e-6、-.1e-3 e3、2.1e3.5、.e3、e ? ? * 3.4 浮点型数据(续) 2. 浮点型变量 (1)浮点型数据在内存中的存放形式 * 类型 位数 数的范围 有效数字 float 32 10-37 ~ 1038 6~7 位 double型 64 10-307~10308 15~16位 long double 128 10-4931~104932 18~19位 (2) 浮点型变量的分类 浮点型变量分为单精度(float型)、双精度(double型)和长双精度型(long double)三类形式。 3.4 浮点型数据(续) * 例3.4 浮点型数据的舍入误差 #include stdio.h void main() { float a,b; a = 123456.789e5; b = a + 20 ; printf(“%f\n”,b); } 说明:一个浮点型变量只能保证的有效数字是7位有效数字,后面的数字是无意义的,并不准确地表示该数。应当避免将一个很大的数和一个很小的数直接相加或相减,否则就会“丢失”小的数 运行结果: 12345678868.000000 * 3.5 字符型数据 1 . 字符常量 (1)用单引号包含的一个字符是字符型常量 (2)只能包含一个字符 ‘a’,’A’, ‘1’ ‘abc’、“a” ? * 字符型数据: 字符常量:用一对单引号括起来的单个字符 转义字符: 是以反斜杠“\ ”开头的。 字符变量: char,一般占用1字节内存单元。 C语言中的字符变量可以存储字符数据(实际为该字符的ASCII码值)和整型数据;字符数据也能进行整数运算;字符数据可以按字符输出也能按整数输出。 例:char ch=‘A’; printf(”%d,%c\n”,ch,ch); 结果:65,A * 转义
文档评论(0)