资源描述:
《lab2 数据类型和表达式》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验2数据类型和表达式姓名学号班级说明:1.将本Word文档改名为“学号_姓名_班级_Lab2.doc”,完成以下实验内容后;2.4月2日之前通过课程中心提交本文档。实验2数据类型和表达式(p120)一.实验目的(1)了解C语言数据类型的意义。(2)掌握C语言的基本数据类型。(3)初步掌握常量和变量的使用。(4)掌握转义字符的使用方法。二.实验内容和实验要求1.练习一输入并运行练习册上的练习一程序,分析程序的运行结果。程序代码:#include"stdio.h"voidmain(){intx=0165,a=322,b=-1;charc;c=a;printf("x1=%d,
2、x2=%x,",x,x);printf("c=%c",c);printf("a:%d,%o,%x",a,a,a);printf("b:%d,%u,%x,%X",b,b,b,b);实验2数据类型和表达式}运行结果:1.给变量x赋初值使用八进制;2.输出变量想,使用了十进制和十六进制;3.将变量a的值赋给c,因为两个变量的类型不一样,分配的存储空间的长度也不同,int长度4字节,char长度为1字节,故只把a的最低字节11000010B(66D)赋值给c,根据ASC2码结果为B;4.输出变量a,分别用了十进制、八进制和十六进制。5.输出变量b,分别用了十进制、无符
3、号十进制和十六进制(注意小写x与大写X的区别)。1.练习题二输入并运行练习册上的练习二程序,分析程序的运行结果。程序代码:实验2数据类型和表达式#include"stdio.h"voidmain(){inta=12,b=5;printf("a/b=%d,b/a=%d",a/b,b/a);printf("%f,%f",(float)a/b,(float)(a/b));printf("a%%b=%d,b%%a=%d",a%b,b%a);}运行结果:1.在进行除法运算时,若运算符两边的分量均是int时,自动取整;2.在进行强制类型转换时,注意括号的使用;3.在输出时
4、,若要输出百分号(%),则要写%%;4.取余运算实际做的是除法;5.C语言规定,取余运算符两边的分量必须是整型。1.练习题三输入并运行练习册上的练习三程序,分析程序的运行结果。程序代码:实验2数据类型和表达式#include"stdio.h"voidmain(){unsignedm;m=-238;printf("m=%d",m);printf("m=%u",m);}运行结果:1.虽然把变量m定义成无符号整型,但给该变量赋给一个负数也是正确的,此时是把符号位的1也看做是数值;2.虽然把变量m定义成无符号整型,但在输出时可以用有符号的格式输出(%d),也可以用无符
5、号的格式输出(%u);3.把m=-238;一行改为:m=4294967058;再进行编译、连接、运行,看结果如何?答:同样的运行结果,因为计算机内部的运算使用二进制补码,-238与4294967058具有相同的补码。1.练习题四输入并运行练习册上的练习四程序,分析程序的运行结果。程序代码:实验2数据类型和表达式#include"stdio.h"#defineLEN5.5voidmain(){floata,b;a=2*3.14*LEN;b=3.14*LEN*LEN;printf("圆周长=%f,圆面积=%f",a,b);}运行结果:1.例子中使用了符号常量的概念,相当于
6、所有LEN都用5.5代替;思考题:1.思考题一在编译之前将所有LEN的地方用5.5代替,再进行编译、连接、运行,看结果如何?程序代码:实验2数据类型和表达式#include"stdio.h"#defineLEN5.5voidmain(){floata,b;a=2*3.14*5.5;b=3.14*5.5*5.5;printf("圆周长=%f,圆面积=%f",a,b);}运行结果:同源程序运行结果相同2.思考题二将#definedLEN5.5一行中的5.5改为7.9,在进行编译、连接、运行,看结果如何?实验2数据类型和表达式一.自测练习1.自测练习一输入并运行自测练习一的
7、程序,分析程序的运行结果。程序代码:#include"stdio.h"#defineLEN7.9voidmain(){inta=5;doublex;printf("%d%d",sizeof(int),sizeof(a));printf("%d%d",sizeof(double),sizeof(x));printf("%d%d",sizeof(float),sizeof(char));}运行结果:实验2数据类型和表达式sizeof函数功能是返回指定数据类型占用的内存空间字节数,a属于int类型,x属于double类型;在VC