网站大量收购独家精品文档,联系QQ:2885784924

实验02 数据型、运算符和表达式.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验02 数据型、运算符和表达式

实验2 数据类型、运算符和表达式 实验目的: 1.C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法; 2.; 3.C语言的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用; 4.进一步熟悉C程序的编辑、编译、连接和运行的过程。 实验内容: 1.输入下面的程序: #include stdio.h void main( ) { char c1, c2; c1 = a; c2 = ‘b’; printf (“%c %c\n”, c1, c2); } (1)运行此程序; 运行的结果如下 (2)在程序的最后增加语句“printf(“%d%d\n”,c1,c2);”再运行,并分析结果; 加printf(“%d%d\n”,c1,c2);后 分析 结果:加printf(“%d%d\n”,c1,c2);后对应的小写字母的ASCII代码,放在对应的字符变量中 (3)将程序的第4行“char c1, c2;”改为“int c1, c2;”后再运行,并分析结果; 将第4行“char c1,c2,”改为”intc1,c2;”后运行的结果 分析结果定义为整型后结果运行不变 (4)将程序的第5、6行改为: c1 = a; /* 不用单撇号*/ c2 = b; 再运行,并分析结果; 运行的结果的结果如下 分析结果:因为a,b,是字符,定义要加单撇号才会执行。 (5)再将程序的第5、6行改为: c1 =” a”; /*用双撇号*/ c2 =” b”; 再运行,并分析结果; (6)再将程序的第5、6行改为: c1 =300; /*用大于255的整数*/ c2 =400; 再运行,并分析结果。 2.输入以下程序: #include stdio.h void main( ) { char c1 = ‘a’, c2 = ‘b’, c3 = ‘c’, c4 = ‘\101’, c5 = ‘\116’; printf (“a%c b%c\tc%c\tabc\n”,c1, c2, c3); printf(“\t\b%c%c”, c4, c5); } 分析结果:因为c是单一字符,所以输出的是%c???是占位符,输出的时候三个%c分别会填入后面列出的变量c1,c2,c3代表的值。即??a,b,c \t????是制表符。它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。 因为前面???a%c?b%c???会输出aa?bb占了5个字符(注意aa和bb之间有个空格) 所以遇到/t的时候会跳到第8个字符处(即多出3个空格)开始输出cc 然后又是\t,于是再跳到第2*8=16个字符处(多出6个空格)再输出后面的abc, ??结果是?????aa?bb???cc??????abc #include stdio.h void main() { int a,b; unsigned c,d; long e,f; a = 100; b = -100; e = 50000; f = 32767; c = a; d = b; printf(“%d,%d\n”, a, b); printf(“%u,%u\n”, a, b); printf(“%u,%u\n”, c, b); c = a = e; d = b = f; printf(“%d,%d\n”, a, b); printf(“%u,%u\n”, c, d); } 请对照程序和运行结果分析: (1)将一个负整数赋给一个无符号的变量,会得到什么结果; 答:会将这个负整数对应的补码的这二进制形式存入这个无符号的变量中,因为在数据存储时,只要不溢出就都是以二进制形式储存,只有当使用的指令区分无符号数才还是带符号数时,才会对就不同的含义。 (2)将一个大于32767的长整数赋给整型变量,会得到什么结果; 答:大将一个大于32767的长整数赋给整型变量 就会发生溢出现象,因为int的范围是-327678-32767 如果输入的数据大于32767,那么输出的结果就为-32768+(i-32767)(3)将一个长整型数赋给无符号变量,会得到什么结果(分别考虑该长整数的值大于或等于65535 以及小于65535 的情况)。 答:一般情况,如果超出存储范围,就会溢出,结果得到的是溢出的那一部分。 同学们可以改变程序中各变量的值,以便比较。 例如: a = 65580, b = -40000, e = 65535, f = 65580。 更改值后的结果 4.输入以下程序: #include stdio.h void m

文档评论(0)

lwv089 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档