基本数据类型(2).doc_第1页
基本数据类型(2).doc_第2页
基本数据类型(2).doc_第3页
基本数据类型(2).doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

3b553f6bf95245b71056298c880d1f3f.pdf实验二 基本数据类型首先根据“新建文件夹操作提示”操作提示,在自己对应的计算机上建立一个文件夹,即文件夹的名字为“XX106X学号的后两位姓名”,如“水养106302匡珍春”,然后在新建好的文件夹里面再建一个文件夹,文件夹名字为“第2次”,而后依次按下面要求完成作业,同时将要存盘的作业按规定的文件名保存在刚才新建好的文件夹里。提示:因为新建的文件夹名中包含有中文字,所以存盘时建议先保存在k:盘中,然后再将相应的.c程序从k:盘复制到刚才新建好的文件夹里。实例分析1 分析以下程序的运行结果,输入、运行下面的程序并验证结果。(无需存盘)#include void main() char c1, c2; /*定义了两个字符型变量c1,c2*/c1 = a;c2 = b;printf (“%c %cn”, c1, c2);(1) 运行此程序,查看运行结果。 (2) 在此基础上,即在printf(“%c %cn”,c1,c2);后面增加一条语句:printf(“%d %dn”,c1,c2);再运行,并分析结果。(3) 将第2行的内容即char c1, c2改为:int c1,c2; 再使之运行,并观察结果。(4) 将第 3、4行改为:c1 =a; /* 不用单撇号 */c2 =b;再使之运行,分析其运行结果。 (5) 将第 3、4行改为:c1 = “a”; /* 用双撇号*/ c2 = “b”;再使之运行,分析其运行结果。(6) 再将第 3、4行改为:c1 = 300; /* 用大于255的整数 */c2 = 400; 再使之运行,分析其运行结果。 说明:字符是以ASCII码的形式存放在计算机内存中,而且字符是占一个字节,整数占两个字节。整数300所对应的二进制形式为0000000100101100,所以转换成字符时只取该字符的低八位,即蓝色部分的00101100,它所对应的十进制为44,而ASCII码为十进制44所对应的字符为逗号“,”。实例分析2 分析以下程序的运行结果;重新输入、运行下面的程序并验证结果。(无需存盘)main() char c1,c2; c1=a; c2=g; printf(c1=%c,c2=%cn,c1,c2); printf(%d, %dn,c1+c2, c2%c1); /*存在输出转化,将字符型按整型输出*/ 实例分析3 分析以下程序的运行结果重新输入、运行下面的程序并验证结果。分析数据输出转化的规则。(无需存盘)#include void main() int a,b;unsigned c,d;long e,f;a = 100; b = 1;e = 50000; f = 32767;c = a; d = b;printf(%d,%dn, a, b);printf(%u,%un, a, b);printf(%u,%un, c, d);c = a = e;d = b = f;printf(%d,%dn, a, b);printf(%u,%un, c, d);请对照程序和运行结果分析:(1) 将一个负整数赋给一个无符号的变量,会得到什么结果? 画出它们在内存中的表示形式。(2) 将一个大于32767的长整数赋给整形变量,会得到什么结果?画出它们在内存中的表示形式。(3) 将一个长整数赋给无符号的变量,会得到什么结果(分别考虑该长整数的值大于或等于65535 以及小于65535 的情况)。画出它们在内存中的表示形式。上机时可以改变程序中各变量的值,再运行比较。例如: a = 65580, b = 40000, e = 65535, f = 65580。实验1 结合文件“chapter 2 算法(补充)”中的例2-3提供的系统流程图及程序maximum.c, 编程求解三个整数中的最小数。文件名保存为minimum.c。(需要存盘)说明: 例2-3提供的系统流程图描述如下: maximum.c的源程序如下所示:#include stdio.hvoid main( ) int a, b, c, max; printf(please input three integer numbers:n); scanf(%d%d%d, &a, &b, &c); if (ab) if(bc) max=c; else max=b; else if(ac) max=c; else max=a; printf(the maximum number of %d, %d and %d is: %dn, a, b, c, max); 实验2 编程实现水与醋的交换。(文件名保存为exchange.c)(需要存盘)提示:水与醋的交换是一个非数值模型,我们可以将它抽象成一个数值模型,即用两个不同的整数分别代表水与醋,例如可用10代表水,20代表醋。联想现实生活中水与醋的交换过程需要用到三个杯子,且杯子里装的东西可以发生变化,对应到C语言程序中就是三个变量,这也就是说我们在编写此程序时需要定义三个变量如int a, b, c;假设交换前a杯里装的是水,b杯里装的是醋,那么交换后应变成a杯里装醋,b杯里装水。因为我们是用任意的两个整数(这两个整数是从键盘上键入的)来分别代表水与醋的,所以应该用语句scanf(“%d%d”, &a, &b);现实生活中水与醋的交换需要经过以下三步:step1 将a杯里的水倒入c空杯子里,此时a杯子就变为空;step2 将b杯里的醋倒入a空杯子里,此时b杯子就变为空;step3 将c杯里的水倒入b空杯子里。现实生活中倒水的过程对应到C语言程序中就是赋值语句,而且现实生活中大多数人都是右撇

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论