欢迎来到专业的万有范文网平台! 工作总结 工作计划 心得体会 思想汇报 述职报告 教案设计 整改报告 事迹材料
当前位置:首页 > 范文大全 > 公文范文 > 正文

运算符和表达式实验报告实验结果及分析(4篇)

时间:2023-05-02 13:05:09 浏览量:

篇一:运算符和表达式实验报告实验结果及分析

  

  《高级语言程序设计》实验报告

  中山大学南方学院

  电子通信与软件工程系

  课程名称:

  高级语言程序设计实践

  实验题目:

  运算符和表达式

  年

  月

  日

  《高级语言程序设计》实验报告

  附:实验报告

  专业:

  年级:

  完成日期:

  学号:

  姓名:

  成

  绩:

  一、实验目的1、能够使用C语言进行简单的算术运算、关系运算和逻辑运算。

  2、掌握不同的类型数据之间赋值的规律。

  3、进一步熟悉C语言程序的编辑、编译和运行的过程。

  二、实验原理

  1、用int定义整型变量来存放整数;

  2、用float定义浮点数变量来存放小数;

  3、使用scanf()函数从键盘输入两个整型数据,并赋值给两个变量。

  三、实验过程

  1、算术运算

  实验代码如下:

  #include

  

  #include

  

  intmain()

  《高级语言程序设计》实验报告

  {

  inta=2,b=3;

  floatx=3.9,y=2.3;

  floatresult;

  result=(float)(a+b)/2+(int)x%(int)y;

  returnresult

  }

  输出结果如图:

  2、算术运算

  实验代码如下:

  #include

  

  #include

  

  intmain()

  {

  intnumber;

  inta1,a2,a3;

  printf("请输入一个三位数:");

  scanf("%d",&number);

  a1=number%10;

  《高级语言程序设计》实验报告

  number=number/10;

  a2=number%10;

  a3=number/10;

  printf("三位数%d的个位数字是%d,十位数字是%d,百位数字

  是%d\n",number,a1,a2,a3);

  return0;

  }

  输出结果如图:

  3、关系运算与逻辑运算

  实验代码如下:

  #include

  

  #include

  

  intmain()

  {

  intx;

  printf("输入x的值:");

  scanf("%d",&x);

  printf("表达式(x>0)的值:%d\n",x>0);

  printf("表达式(x>=-20&&x<=-10)的值:%d\n",x>=-20&&x<=-10);

  《高级语言程序设计》实验报告

  printf("表达式(x>=100||x<10)的值:%d\n",x>=-20&&x<=-10);

  printf("表达式(x>20&&x%3==0的值:%d\n",x>20&&x%3==0);

  if(x%5==0&&x%3==0)

  printf("yes\n");

  else

  printf("no\n");

  return0;

  }

  输出结果如图:

  4、综合任务

  实验代码如下:

  #include

  

  #include

  

  intmain()

  {

  intgrad1,grad2;

  scanf("%d%d",&grad1,&grad2);

  printf("表达式(grad1>=0&&grad1<=100)值:%d\n",grad1>=0&&grad1<=100);

  《高级语言程序设计》实验报告

  printf("表达式(grad2>=0&&grad2<=100)值:%d\n",grad2>=0&&grad2<=100);

  printf("%d",grad1>grad2?grad1:grad2);

  return0;

  }

  输出结果如图:

  四、思考并回答以下问题

  1、举例说明逻辑运算符的短路特性。

  答:条件1&&条件2,条件1为假时不会执行条件2;

  条件1||条件2,条件1为真时不会执行条件2。

  上述即为逻辑运算符的短路特性。

  2、举例说明复合赋值运算符的运算顺序?

  答:i++:表示先赋值给i在自增;++i表示先增在赋值。

  单独使用两者没有差别,但如果前面有赋值的话那就有差别了。

  比如:前者打印的是6和5,后者则是6和6,因为前者先给i自增,后者则是先赋值在自增。

  3、编写程序:使用条件运算符计算两个数的最大值。

  答:代码如下:

  #include#include

  《高级语言程序设计》实验报告

  intmain(){inta,b,max;printf("请输入两个整数(以空格键分隔):");scanf("%d%d",&a,&b);if(a>b)max=a;if(a<=b)max=b;printf("max=%d\n",max);return0;}4、通过课下实践,掌握其他各种运算符的使用方法。

  答:+,加;-,减;*,乘;/,除;>,大于;

  <,小于;==,等于;>=,大于等于;<=,小于等于;

  !=,不等于;&&,与;||,或;!五、实验总结和体会

  总结和体会:

  1、printf语句输出整型变量的值时,使用的是“%d”,输出实型变量的值时要用“%f”。

  2、从键盘读入两个数有两种写法:

  第一种:scanf("%d",&a);scanf("%d",&b);

  《高级语言程序设计》实验报告

  第二种:scanf("%d%d",&a,&b);其中第二种的写法较为简便。

  3、通过本次实验了解到了C语言的许多运算符,有算术运算符、关系运算符和逻辑运算符。

  4、体会到C语言的学习需要不断的实践和操作,不单单是书本上的理论知识,只有实操才能知道自己还有哪些不足。

篇二:运算符和表达式实验报告实验结果及分析

  

篇三:运算符和表达式实验报告实验结果及分析

  

  《c语?程序设计》实验报告(实验-2)《C语?程序设计》实验报告2013~2014学年第?学期班级姓名学号指导教师实验?实验项?名称:C程序的运?环境和运?C程序的?法所使?的?具软件及环境:VisualC++6.0?、实验?的:1.了解在VisualC++6.0环境下如何编辑、编译、连接和运??个C程序;2.通过运?简单的C程序,初步了解C源程序的特点。?、预习内容:教材《C语?程序设计教程》第1章。三、实验内容:1.在VisualC++6.0环境下输?并运?下?的程序:#includeintmain(){printf("ThisisaCprogram.\n");return0;}2.在VisualC++6.0环境下输?下?的程序(有语法错误),编译、连接、调试该程序,直?程序?语法错误,然后运?程序,并观察分析运?结果。#includeintmain(){inta,b,suma=3;b=4;sun=a+b;print(“%d+%d=%d\n”,a,b,sum);return0;

  }四、实验结果:1.运?结果(或截图):ThisisaCprogram.Pressanykeytocontinue2.(1)改正后的源程序:#includeintmain(){inta,b,sum;a=3;b=4;sum=a+b;printf("%d+%d=%d\n",a,b,sum);return0;}(2)运?结果(或截图):3+4=7五、思考题:1.?个C程序上机的步骤有哪些?答:上级输?与编辑源程序—对原程序进?编译–与库函数链接–运?可执?的?标程序。2.组成C程序的基本单位是函数,?个函数包括哪?个部分?答:?个函数包括两部分:分别为函数头或函数?部和函数体。成绩指导教师签名实验?实验项?名称:数据类型、运算符和表达式所使?的?具软件及环境:VisualC++6.0?、实验?的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使??法;3.掌握基本算术运算符及其表达式的使??法;4.掌握++、--运算符、赋值运算符及其表达式的使??法。?、预习内容:教材《C语?程序设计教程》第2章。三、实验内容:

  1.在VisualC++6.0环境下输?下?的程序,编译、连接、调试该程序。main(){charm,n;m=280;n=320;printf(“%d\t%d\n”,m,n);printf(“%c\t%c\n”,m,n);}2.在VisualC++6.0环境下输?并运?下?的程序,观察分析运?结果。#includeintmain(){inta=3,b=4,c=8;floatd,e;d=a+b/c;e=a+(float)b/c;//请将此处d改为bprintf("d=%f,e=%f\n",d,e);}3.在VisualC++6.0环境下输?并运?下?的程序,观察分析运?结果。#includemain(){inta,b,c,d,i,j,m,n;a=b=c=d=3;i=a++;j=++b;m=c--;n=--d;printf("a=%d,b=%d,c=%d,d=%d,i=%d,j=%d,m=%d,n=%d\n",a,b,c,d,i,j,m,n);}4.在VisualC++6.0环境下输?并运?下?的程序,观察分析运?结果。#includemain(){

  inta=4;a+=a-=a*a+a;printf("a=%d\n",a);}四、实验结果:1.运?结果(或截图):2464@2.运?结果(或截图):d=3.000000,e=3.500000d=3.000000,e=3.3750003.运?结果(或截图):a=4,b=4,c=2,d=2,i=3,j=4,m=3,n=24.运?结果(或截图):a=-32五、思考题:1.给变量命名应该注意哪些问题?答:每个变量必须进?数据类型说明;2.程序2的运?结果中,d和e的值为什么不同?答:d的赋值语句中,除法是两个整型数字的运算,其结果没有?数位;?e中对b进?了强制转换为实型,所以其除法运算结果有?数位。3.程序3的运?结果中,i和j的值为什么不同?m和n的值为什么不同?//改为程序3答:i(m)是通过后?增(后?减)实现的,?后?增(后?减)是先参与其他运算,后对变量递增(递减);?j(n)是通过前?增(前?减)实现的,其是先对变量递增(递减),后再参与其他运算。4.请分析表达式a+=a-=a*a+a的运算过程(写出运算步骤)。答:先将a-(a*a+a)赋值给a,再将a+a赋值给a。成绩指导教师签名实验三实验项?名称:简单的输?输出及顺序程序设计所使?的?具软件及环境:VisualC++6.0?、实验?的:1.掌握整型、实型与字符型数据的正确输??法(scanf函数的使?);2.掌握整型、实型与字符型数据的正确输出?法(printf函数的使?);3.掌握编写顺序程序的?法。?、预习内容:

  教材《C语?程序设计教程》第3章。三、实验内容:1.编写C程序,按下列公式计算并输出S的值,其中a和b的值有键盘输?。main(){inta,b;floats;scanf(“%d,%d”,&a,&b);s=2.0*a*b/(a+b)/(a+b);printf(“s=%f\n”,s);}①输?并调试。②将scanf函数改为scanf(“%d%d”,&a,&b);再编译,运?。③观察结果。2.在VisualC++6.0环境下输?并运?下?的程序,观察分析程序运?过程及结果。#includeintmain(){inta,b,sum;printf("请输?第?个整数:");scanf("%d",&a);printf("请输?第?个整数:");scanf("%d",&b);sum=a+b;printf("%d+%d=%d\n",a,b,sum);}3.设圆半径r=1.5,编写程序求圆周长、圆?积和圆球的体积。要求?scanf语句输?半径,输出时取?数点后两位。四、实验结果:1.

  2.运?结果(或截图):请输?第?个整数:1请输?第?个整数:21+2=33.(1)程序中?到的变量(类型)单精度浮点数(2)算法(?伪代码描述或?然语?)c=2*pi*r;s=pi*r*r;v=4*(pi*r*r*r)/3;(3)源程序清单#includeintmain()#definepi3.14{floatr,c,s,v;printf("请输?圆的半径:");scanf("%f",&r);c=2*pi*r;s=pi*r*r;

  v=4*(pi*r*r*r)/3.0;printf("c=%.2f,s=%.2f,v=%.2f\n",c,s,v);}(4)运?结果(或截图)请输?圆的半径:1.5c=9.42,s=7.07,v=14.13五、思考题:scanf(“%d,%d”,&a,&b)与scanf(“%d%d”,&a,&b)输?数据的?式有什么不同?从两种输??式的对?中你得到什么启发?答:第?种输??式?户必须以“,”分隔,?第?者可?空格、回车分隔,?户在不知情的情况下,很难知道?“,”分隔输?的数据。所以编程?员可以在scanf()语句前?printf()语句进?注释,让?户知道?什么来分隔输?的数据。成绩指导教师签名实验四实验项?名称:选择结构程序设计所使?的?具软件及环境:VisualC++6.0?、实验?的:1.正确使?关系运算符和关系表达式;2.正确使?逻辑运算符和逻辑表达式;3.熟练使?if语句实现选择结构程序;2.熟练使?switch语句实现多分?选择结构程序。?、预习内容:教材《C语?程序设计教程》第4章。三、实验内容:1.下?程序的功能是:输?学?成绩,若成绩在90分以上,输出“Excellent!”;若成绩在60—89分之间,输出“Pass!”;若成绩在60分以下,输出“Fail!”。请将程序补充完整,并上机运?程序。#includeintmain(){intscore;printf("请输?分数(0--100):");scanf("%d",&score);if(score>100||score<0)printf("InputError!\n");elseif(score>=90)printf("Excellent!\n");elseif(score>=60)printf("Pass!\n");elseprintf("Fail!\n");

  }运?该程序4次,分别输?4个不同的数据,对应4种不同的情况,记录运?结果:2.有如下分段函数:请输?x的值,求解对应的y值。3.给出?个百分制成绩,要求输出成绩等级’A’、’B’、’C’、’D’、’E’。90-100为’A’,80-89为’B’,70-79为’C’,60-69为’D’,60分以下为’E’。?switch语句写。四、程序中所?的变量及其类型:2.变量:x、y;3.变量:score数据类型:整型五、算法(?伪代码或?然语?描述):2.if(x>=10)printf("y=%f\n",3*x-11);elseif(x>=1)printf("y=%f\n",2*x-1);elseprintf("y=%f\n",x);3.switch(score/10){case10:printf("A\n");break;case9:printf("A\n");break;

  case8:printf("B\n");break;case7:printf("C\n");break;case6:printf("D\n");break;default:printf("E\n");}六、源程序清单:2.#includeintmain(void){floatx,y;printf("请输??个x:");scanf("%f",&x);if(x>=10)printf("y=%f\n",3*x-11);elseif(x>=1)printf("y=%f\n",2*x-1);elseprintf("y=%f\n",x);return0;}3.#includeintmain(void){intscore;printf("请输??个成绩:");scanf("%d",&score);

  switch(score/10){case10:printf("A\n");break;case9:printf("A\n");break;case8:printf("B\n");break;case7:printf("C\n");break;case6:printf("D\n");break;default:printf("E\n");}return0;}七、实验结果:2.运?结果(执?程序3次,分别输?不同的3个数,对应3种不同的情况):3.运?结果(执?程序5次,分别输?5组不同的数据,对应5种不同的情况):成绩指导教师签名实验五实验项?名称:简单循环程序设计所使?的?具软件及环境:VisualC++6.?、实验?的:1.掌握循环程序的基本结构;2.熟练掌握while、do—while及for语句,并会?来编写循环结构程序。?、预习内容:教材《C语?程序设计教程》第4章。三、实验内容:1.编写?个程序,计算并输出数列:1,3,5,…,2n-1,…的前?项之和,其中n由键盘输?。要求分别?3种循环语句实现。?法1:?for语句实现。main(){longs,n,k,i;scanf(“%ld“,&n);k=2*n-1;s=0;for(i=1;i<=k;i+=2)s+=i;printf(“1+3+…+%ld=%ld\n”,k,s);}?法2:?while语句实现。main(){longs=0,n,i=1;scanf(“%ld”,&n);while(i<=(2*n-1)){s+=i;i+=2;}printf(“1+3+…+%ld=%ld\n”,2*n-1,s);}

篇四:运算符和表达式实验报告实验结果及分析

  

  实验三--运算符和表达式-实验报告

  计算机科学与工程学院

  天津理工大学

  计算机

  科学

  与工程

  学院

  实验报告

  20__至

  20__学年

  时间)

  实验名称

  运算符与表达式

  开发

  环境PC机,windows7操作系统

  开发工具VC6.0实验目的(11)

  掌握CC语言中常用运算符的基本功能,以及优先级与结合性;

  (22)

  正确使用运算符和数据实体构建表达式,并表达式的计算过程;

  (33)

  进一步熟悉0VisualC++6.0开发环境下调试程序的基本步骤。

  实验

  要求

  认真完成实验内容,编写程序代码;

  要求程序正确无误,并输出合理的实验结果;

  书写并提交实验报告。

  实验

  内容

  (应包括实验

  题目、代码实现、编译、运行结果等,也可给出程序的算法描述、重点程序语句的注释

  等。

  。))

  (2)

  建立项目文件,运行下列程序,并记录程序执行的结果:

  #includevoidmain{inta,b,c,d;printf(“Inputa,b\n”);

  scanf(“%d,%d”,;a,;b);

  c=(a++)+(b++);printf(“c=%d\n”,c);

  d=(++a)+(++b);printf(“d=%d\n”,d);}○1如果从键盘输入3,5给变量a和b,记录程序执行结果为:

  c=10d=8○2如果仅将程序中语句“c=(a++)+(b++);”修改为“c=(a--)+(b--);”并从键盘输入3,5给变量a和b,则程序运行结果为:

  c=6d=8○3如果仅将程序中语句“c=(++a)+(++b);”修改为“c=(--a)+(--b);”并从键盘输入3,5给变量a和b,则程序运行结果为:

  c=8d=8(7)

  建立项目文件,并在源文件中正确书写下列表达式,同时在屏幕上打印出表达式的运算结果。

  (其中,_,y是浮点型变量,初值由键盘输入)

  ○1_2+y3○2222_y_y实验代码:

  #includevoidmain{double_,y,a,b;printf(“请输入_与y的初始值,中间用空格隔开\n”);

  scanf(“%lf%lf”,;_,;y);

  a=(___)+(y_y_y);b=(_-(y_y))/((___)+(y_y));printf(“经过计算,得一式的结果为%f,二式的结果为%f\n”,a,b);}编译结果:

  --------------------Configuration:计算题-Win32Debug--------------------Linking...计算题.e_e-0error(s),0warning(s)运行结果:

  以上为编写的程序,经过调试,没有错误。

  (10)

  编写一个程序,输入年份和月份,判断该年是否是闰年,并根据给出的月份判断是什么季节和该月有多少天?(闰年的条件是年份能被4整除但不能被100整除,或者能被400整除)。

  实验代码:

  #include

  voidmain{doublea,b,c,d,e,f,g,h;printf(“请输入你想了解的年份和月份,并且中间用空格隔开,如20__9即为

  20__年9月\n”);scanf(“%lf%lf”,;a,;b);

  c=a/4;f=c-(int)c;d=a/100;g=d-(int)d;e=a/400;h=e-(int)e;if(((f==0);;(g!=0))||(e==0)){printf(“这一年是闰年,”);

  switch((int)b){case1:printf(“这个月有31天,是冬天”);break;

  case3:printf(“这个月有31天,是春天”);break;

  case5:printf(“这个月有31天,是春天”);break;

  case7:printf(“这个月有31天,是夏天”);break;

  case8:printf(“这个月有31天,是夏天”);break;

  case2:printf(“这个月有29天,是冬天”);break;

  case4:printf(“这个月有30天,是春天”);break;

  case6:printf(“这个月有30天,是夏天”);break;

  case9:printf(“这个月有30天,是秋天”);break;

  case10:printf(“这个月有30天,是秋天”);break;case11:printf(“这个月有30天,是秋天”);break;case12:printf(“这个月有31天,是冬天”);break;}}else{printf(“这一年不是闰年,”);

  switch((int)b){case1:printf(“这个月有31天,是冬天”);break;

  case3:printf(“这个月有31天,是春天”);break;

  case5:printf(“这个月有31天,是春天”);break;

  case7:printf(“这个月有31天,是夏天”);break;

  case8:printf(“这个月有31天,是夏天”);break;

  case2:printf(“这个月有28天,是冬天”);break;

  case4:printf(“这个月有30天,是春天”);break;

  case6:printf(“这个月有30天,是夏天”);break;

  case9:printf(“这个月有30天,是秋天”);break;

  case10:printf(“这个月有30天,是秋天”);break;

  case11:printf(“这个月有30天,是秋天”);break;

  case12:printf(“这个月有31天,是冬天”);break;}}

  }编译结果:

  -------------------Configuration:闰年-Win32Debug--------------------Linking...闰年.e_e-0error(s),0warning(s)运行结果:

  经测试,该程序可以正常运行,且无错误,能够完成

  题目中的要求。

  实验心得:

  这次的实验我学到了很多东西,比如在代码编辑的时候,选择合适的变量类型,可以对整个程序的运行产生重要的影响;另外,我发现在使用不同的编辑软件时,输入的代码也不尽相同,需要注意;最后,经过这次的实验,我灵活地使用了课堂上老师教授的代码及其使用方法,感觉受益匪浅,代码编辑真是一件有意思的事情!

推荐访问:运算符和表达式实验报告实验结果及分析 实验 表达式 运算符