数据类型运算符和简单的输入输出实验报告_第1页
数据类型运算符和简单的输入输出实验报告_第2页
数据类型运算符和简单的输入输出实验报告_第3页
数据类型运算符和简单的输入输出实验报告_第4页
数据类型运算符和简单的输入输出实验报告_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

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

文档简介

嘉应学院计算机学院实验报告课程名称程序设计基础实验名称实验地点指导老师实验时间提交时间班级姓名座号一、实验目的和要求(1)掌握C语言数据类型,了解字符型数据和整型数据的内在关系。(2)掌握对各种数值型数据的正确输入方法。(3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。(4)学会编写和运行简单的应用程序。(5)进一步熟悉C程序的编辑、编译、连接和运行的过程二、实验环境和方法实验方法:(一)综合运用课本所学的知识,用不同的算法实现在不同的程序功能。(二)结合指导老师的指导,解决程序中的问题,正确解决实际中存在的异常情况,逐步改善功能。(三)根据实验内容,编译程序。实验环境:WindowsxpVisualC++6.0三、实验内容及过程描述实验步骤:进入VisualC++6.0集成环境。输入自己编好的程序。检查一遍已输入的程序是否有错(包括输入时输错的和编程中的错误),如发现有错,及时改正。进行编译和连接。如果在编译和连接过程中发现错误,频幕上会出现“报错信息”,根据提示找到出错位置和原因,加以改正。再进行编译,如此反复直到不出错为止。运行程序并分析运行结果是否合理。在运行是要注意当输入不同的数据时所得结果是否正确,应运行多次,分别检查在不同情况下结果是否正确。实验内容:编译以下题目的程序并调试运行。实验①(一)在VisualC++6.0中输入教材第3章第4提给出的程序:#include<stdio.h>#include<stdio.h>intmain(){charc1,c2;c1=97;c2=98;printf(“%c,%c\n”,c1,c2);printf(“%d%d\n”,c1,c2);return0;}(1)对程序进行编译,将该程序进行连接,运行该程序。(2)如果将程序第4,5行改为C1=197;C2=198;再次进行编译并连接运行。(3)将程序第三行改为intc1,c2;对程序进行编译、连接和运行。实验②(二)输入第3章第5题的程序。即:用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=`A`,c2=`a`。#include<stdio.h>#include<stdio.h>intmain(){inta,b;floatx,y;charc1,c2;scanf("a=%db=%d",&a,&b);scanf("%f%e",&x,&y);scanf("%c%c",&c1,&c2);printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n",a,b,x,y,c1,c2);return0;}运行时分别按以下方式输入数据,观察输出结果,分析原因。a=3,b=7,x=8.5,y=71.82,A,a↙a=3b=7x=8.5y=71.82Aaa=3b=78.571.82Aaa=3b=78.571.82Aa↙378.571.82Aa↙a=3b=7↙8.571.82↙A↙a↙a=3b=7↙8.571.82↙Aa↙a=3b=7↙8.571.82Aa↙实验③输入以下程序:#include<stdio.h>#include<stdio.h>intmain(){inti,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d\n",i,j,m,n);return0;}编译和运行程序,注意i,j,m,n各变量的值。将第6,7行改为m=i++;n=++j;再编译和运行,分析结果。#include<stdio.h>intmain()#include<stdio.h>intmain(){inti,j;i=8;j=10;printf("%d,%d\n",i++,j++);}再编译和运行,分析结果。在③的基础上,将printf语句改为Printf(“%d,%d\n”,++i,++j);再编译和运行。再将printf语句改为Printf(“%d,%d,%d,%d\n”,I,j,i++,j++);再编译和运行,分析结果。#include<stdio.h>intmain(){inti,j,m=0,n=0;#include<stdio.h>intmain(){inti,j,m=0,n=0;i=8;j=10;m+=i++;n-=--j;printf("i=%d,j=%d,m=%d,n=%d\n",i,j,m,n);return0;}再编译和运行,分析结果。实验④假如我国国民生产总值的年增长率为10%,计算10年后我国国民生产总值与现在相比增长多少百分比。编写程序。计算公式为:#include<stdio.h>#include<math.h>intmain()#include<stdio.h>#include<math.h>intmain(){ floatp,r,n; r=0.1; n=10; p=pow(1+r,n); printf("p=%f\n",p); return0;}①输入自己编好的程序,编译并运行,分析运行结果。#include<stdio.h>#include<math.h>intmain()#include<stdio.h>#include<math.h>intmain(){ floatp,r; intn; printf("请输入增长率为:"); scanf("%f",&r); printf("请输入年数:"); scanf("%i",&n); p=pow(1+r,n); printf("%i年后我国国民生产总值与现在相比增长了p=%f\n",n,p); return0;}四、结果分析实验①(1)运行结果如图:第1行是将c1,c2按%c的格式输出,97是字符a的ASCII代码,98是字符b的ASCII代码。第2行是将c1,c2按%d的格式输出,所以输出两个十进制整数。(2)运行结果如图:由于VisualC++6.0字符型数据是作为signedchar类型处理的,它存字符的有效范围为0~127,超过此范围的处理方法,不同的系统得到的结果不同,因而用“%c”格式输出时,结果是不可预料的。用“%d”格式输出时,输出c1=-59,c2=—58.这是按补码形式输出的,内在字节中第一位为1时,作为负数。所以用char类型变量时,给它赋的值应该在0~127范围内。(3)运行结果如图:输出结果与(1)相同,因为赋的值在int类型的有效范围内。实验②:运行结果如图:①②③④⑤⑥⑦⑧分析:在输入8.5和71.82两个实数给x和y后,应紧接着输入字符A,中间不要有空格,由于A是字母而不是数字,系统在遇到字母A时就确定输入给y的数值已经结束。字符A就送到下一个scanf语句中的字符变量c1(如图④⑧是正确的)。如果在输入8.5和71.82两个实数后输入空格符,则71.82后面输入的空格符就被c1读入,c2读入了字符A。输出c1时就输出空格,输出c2的值为A(如图③⑥)。如果在输入8.5和71.82两个实数后按回车键,这时“回车”被作为一个字符送到内存输入缓冲区,被c1读入,字符A被

温馨提示

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

评论

0/150

提交评论