C语言课件--第2章 C语言程序设计基础.pptVIP

C语言课件--第2章 C语言程序设计基础.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
例1 求两数之和 #include stdio.h void main( ) /*求两数之和*/ { int a,b,sum; /*声明,定义变量为整型*/ /*以下3行为C语句 */ a=123; b=456; sum=a+b; printf(“sum is %d\n”,sum); } 例2 求3个数中较大者 #include stdio.h void main( ) /* 主函数*/ { int max(int x,int y); / 对被调用函数max的声明 */ int a, b, c; /*定义变量a、b、c */ scanf(″%d,%d″,a,b); /*输入变量a和b的值*/ c=max(a,b); /*调用max函数,将得到的值赋给c */ printf(″max=%d\\n″,c); /*输出c的值*/ } (2)类型转换 如果赋值运算符两侧的类型不一致,但都是数值型或字符型时,在赋值时要进行类型转换。 ① 将浮点型数据(包括单、双精度)赋给整型变量时,舍弃浮点数的小数部分。 如:i为整型变量,执行“i=3.56”的结果是使i的值为3,以整数形式存储在整型变量中。 2.5 运算符和表达式 ② 将整型数据赋给单、双精度变量时,数值不变, 但以浮点数形式存储到变量中。 如:将23赋给float变量f,即执行f=23,先将23转换成23.00000,再存储在f中。 将23赋给double型变量d,即执行d=23,则将23补足有效位数字为23.00000000000000,然后以双精度浮点数形式存储到变量d中。 2.5 运算符和表达式 ③ 将一个double型数据赋给float变量时,截取其前 面7位有效数字,存放到float变量的存储单元(4个 字节)中。但应注意数值范围不能溢出。 如:float f; double d=123.456789e100; f=d; 就出现溢出的错误。 如果将一个float型数据赋给double变量时,数值不 变,有效位数扩展到16位,在内存中以8个字节存储。 2.5 运算符和表达式 ④ 字符型数据赋给整型变量时,由于字符只占1个字 节,而整型变量为2个字节,因此将字符数据(8个 二进位)放到整型变量存储单元的低8位中。 第一种情况: 如果所用系统将字符处理为无符号的字符类型,或程 序已将字符变量定义为unsigned char型,则将字符的8位放到整型变量低8位,高8位补零 例如:将字符‘\376’赋给int型变量i 2.5 运算符和表达式 第二种情况: 如果所用系统(如Turbo C++)将字符处理为带符号 的(即signed char),若字符最高位为0,则整型 变量高8位补0;若字符最高位为1,则高8位全补 1。这称为“符号扩展”,这样做的目的是使数值保持 不变,如变量c(字符‘\376’)以整数形式输出为-2,i的值也是-2。 376对应的二进制最高位为1,高8位补1,11111110 由于数据在计算机中是以补码形式存储的,换成原码,则00000010 对应的十进制数为-2。 2.5 运算符和表达式 ⑤ 将一个int、short、long型数据赋给一个char型变 量时,只将其低8位原封不动地送到char型变量(即 截断)。 例如:int i=289; char c=‘a’; c=i; 赋值情况:c的值为33, 如果用“%c”输出c,将得到字符“!” (其ASCII码为33)。 2.5 运算符和表达式 ⑥ 将带符号的整型数据(int型)赋给long型变量时,要进行符号扩展,将整型数的16位送到long型低16位中: 如果int型数据为正值(符号位为0),则long型变量的高16位补0; 如果int型变量为负值(符号位为1),则long型变量的高16位补1,以保持数值不改变。 反之,若将一个long型数据赋给一个int型变量,只将long型数据中低16位原封不动地送到整型变量(即截断)。 2.5 运算符和表达式 例如:int a; long b=8; a=b 如果b=65536(八进制数0200000),则赋值后a值为0。 2.5 运算符和表达式 ⑦ 将unsigned int型数据赋给long int型变量时,不 存在符号扩展问题,只需将高位补0即可。将一个unsigned类型数据赋给一个占字节数相同的非 unsigned型整型变量(例如:unsi

文档评论(0)

好文精选 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档