版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验2 数据类型、运算符和表达式实验目的: 1掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法;2掌握不同类型数据之间赋值的规律;3学会使用C语言的有关算术运算符,以及包含这些运算符的表达式,特别是自加(+)和自减(-)运算符的使用;4进一步熟悉C程序的编辑、编译、连接和运行的过程。实验内容:1输入下面的程序:#include void main( ) char c1, c2; c1 = a; c2 = b; printf (“%c %cn”, c1, c2); (1)运行此程序;运行的结果如下(2)在程序的最后增加语句“printf(“%d%dn”,c1,c
2、2);”再运行,并分析结果;加printf(“%d%dn”,c1,c2);后分析 结果:加printf(“%d%dn”,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行改为:c
3、1 =” a”; /*用双撇号*/c2 =” b”;再运行,并分析结果;(6)再将程序的第5、6行改为:c1 =300; /*用大于255的整数*/c2 =400;再运行,并分析结果。2输入以下程序:#include void main( ) char c1 = a, c2 = b, c3 = c, c4 = 101, c5 = 116; printf (“a%c b%ctc%ctabcn”,c1, c2, c3); printf(“tb%c%c”, c4, c5);分析结果:因为c是单一字符,所以输出的是%c是占位符,输出的时候三个%c分别会填入后面列出的变量c1,c2,c3代表的值。即a,
4、b,ct是制表符。它的作用是将光标移到最接近8的倍数的位置,使得后面的输入从此开始。因为前面a%cb%c会输出aabb占了5个字符(注意aa和bb之间有个空格)所以遇到/t的时候会跳到第8个字符处(即多出3个空格)开始输出cc然后又是t,于是再跳到第2*8=16个字符处(多出6个空格)再输出后面的abc,结果是aabbccabc先用人工分析程序,写出应得结果,再与运行结果比较。3输入并运行下面的程序#include void main() int a,b;unsigned c,d;long e,f;a = 100;b = -100;e = 50000;f = 32767;c = a;d = b
5、;printf(“%d,%dn”, a, b);printf(“%u,%un”, a, b);printf(“%u,%un”, c, b);c = a = e;d = b = f;printf(“%d,%dn”, a, b);printf(“%u,%un”, c, d);请对照程序和运行结果分析:(1)将一个负整数赋给一个无符号的变量,会得到什么结果;答:会将这个负整数对应的补码的这二进制形式存入这个无符号的变量中,因为在数据存储时,只要不溢出就都是以二进制形式储存,只有当使用的指令区分无符号数才还是带符号数时,才会对就不同的含义。(2)将一个大于32767的长整数赋给整型变量,会得到什么结果
6、;答:大将一个大于32767的长整数赋给整型变量 就会发生溢出现象,因为int的范围是-32767 如果输入的数据大于32767,那么输出的结果就为-32768+(i-32767)(3)将一个长整型数赋给无符号变量,会得到什么结果(分别考虑该长整数的值大于或等于65535 以及小于65535 的情况)。答:一般情况,如果超出存储范围,就会溢出,结果得到的是溢出的那一部分。同学们可以改变程序中各变量的值,以便比较。例如: a = 65580, b = -40000, e = 65535, f = 65580。更改值后的结果4输入以下程序:#include void main() int i,j,
7、m,n;i = 8;j = 10;m = +i;n = j+;printf(“%d,%d,%d,%dn”, i, j, m, n);(1) 运行程序,分析变量:i、j、m、n 的值;分析结果如下:对于m=+i,先执行i+1=9,再执行i的值所以m=9,对于n=j+,先把j的值赋给n,再执行j+1,所以n=10,j=11.i=9(2)将第7、8行改为:m = i+;n = +j;再运行并分析结果;把第7、8行改为m=i+;n=+j后运行的结果如下分析结果:对于m=i+,先把i赋值给m,所以m=8,再执行i+1,所以i=9,对于n=+j,先执行j+1,再把值赋给n.所以j=11,n=11.(3)将
8、程序改为:#include void main() int i,j;i = 8;j = 10;printf(“%d,%dn”, i+, j+);运行并分析结果;分析结果:对于i+与j+,先执行i与j,再执行i+1与j+1,所以i与j输出的值不变。(4)在(3)的基础上,将printf 语句改为:printf(“%d,%d”, +i, +j);运行并分析结果;分析结果:对于+i与+j,先执行i+1与j+1,再执行i与j的值,所以i=9,j=10.(5)再将printf 语句改为:printf(“%d,%d,%d,%d”, i, j, i+, j+);运行并分析结果;分析结果:对于i+与j+,先执
9、行i与j,再执行i+1与j+1,所以i与j输出的值不变。(6)将程序改为:#include void main() int i, j, m=0, n=0;i = 8;j = 10;m+= i+; n-= -j;printf(“i=%d,j=%d,m=%d,n=%dn”, i, j, m, n);分析结果:对于运算符优先+,-,大于赋值运算符+=,-=,对于m+=i+,先执行i+,所以i先把值赋给m,再执行i+1,就是自加,最后执行“+=”,所以m=8,i=9;同理n-=-j,先执行j-1,在执行j的值,把值赋给n,最后执行“-=”,赋给n,所以j=9,n=-9。5按要求编写程序并上机运行(1)
10、要将”China”译成密码,译码规律是:用原来字母后面的第4个字母代替原来的字母。例如,字母”A”后面第4个字母是”E”,用”E”代替”A”。因此,”China”应译为”Glmre”。请编一程序,用赋初值的方法使c1、c2、c3、c4、c5 五个变量的值分别为C、h、i、n、a,经过运算,使c1、c2、c3、c4、c5分别变为G、l、m、r、e并输出。输入事先已编好的程序,并运行该程序。分析是否符合要求。编写程序如下:字符与ASCII代码对照 C=67,G=71,h=104,l=108,i=105,m=109,n=110,r=114,a=97,e=101。 #include int main( ) Char c1,c2,c3,c4,C,h,I,n,a; c 1=C; c2=h; c3=i; c4=n; c5=a; c1=c1+4; c2=c2+4; c3=c3+4; c4=c4+4; c5=c5+4; printf(“%c %c %c %c %cn”,c1,c2,c3,c4,c5);改变c1、c2、c3、c4、c5的初值为:T、o、d、a、y,对译码规律作如下补充:W用A 代替,X用B代替,Y用C代替,Z用D代替。修改程序并运行。改变c1、
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 春季风疹预防护理课
- 湖南省邵阳市2027年高考仿真模拟物理试卷(含答案解析)
- 半导体高端真空装备总部及研发生产项目可行性研究报告模板-立项拿地
- 2026 年秋季开学初中军训考核评价标准课件
- 停产检修安全作业规范
- 冷库作业防寒安全
- 校园暑假网络反诈安全
- 地舒单抗治疗骨质疏松症
- 脑梗肢体康复训练
- 急性肺栓塞与其他胸痛的鉴别诊断
- 2026年福建省中考英语试卷(带答案)
- 公建工程交付指南(第三册)
- GJB939A-2022外购器材的质量管理
- 工厂安全生产环保操作规程
- 2025年金川集团审计风控法务部招聘笔试历年参考题库附带答案详解
- 钻井队用电安全培训
- JG/T 3055-1999基桩动测仪
- 人教版数学九年级上册第一单元测试卷(附答案)
- 民事诉讼法戴鹏讲义
- 1.一的法则(第一二三卷-第1-79场)
- 【赛迪】实体经济和数字经济深度融合发展报告(2024)-赛迪研究院
评论
0/150
提交评论