篇一:运算符与表达式实验总结
篇二:运算符与表达式实验总结
计算机科学与工程学院
天津理工大学
计算机科学与工程学院
实验报告
201至
201学年
第
一
学期
课程名称
学号
专业
实验项目
实验时间
批改意见
程序设计(C语言)
学生姓名
班级
实验地点
7-215计算机科学与技术(合作)
运算符与表达式
成绩
教师签字:
计算机科学与工程学院
实验(一)
开发环境
开发工具
实验目的实验名称
运算符与表达式
PC机,windows7操作系统
VC6.0(1)
掌握C语言中常用运算符的基本功能,以及优先级与结合性;
(2)
正确使用运算符和数据实体构建表达式,并表达式的计算过程;
(3)
进一步熟悉VisualC++6.0开发环境下调试程序的基本步骤。
实验要求
认真完成实验内容,编写程序代码;
要求程序正确无误,并输出合理的实验结果;
书写并提交实验报告。
实验内容(应包括实验题目、代码实现、编译、运行结果等,也可给出程序的算法描述、重点程序语句的注释等。)
(2)
建立项目文件,运行下列程序,并记录程序执行的结果:
#include
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=1d=○2如果仅将程序中语句“c=(a++)+(b++);”
修改为“c=(a--)+(b--);”
并从键盘输入3,5给变量a和b,则程序运行结果为:
c=6d=○3如果仅将程序中语句“c=(++a)+(++b);”
修改为“c=(--a)+(--b);”
并从键盘输入3,5给变量a和b,则程序运行结果为:
c=计算机科学与工程学院
d=(7)
建立项目文件,并在源文件中正确书写下列表达式,同时在屏幕上打印出表达式的运算结果。(其中,x,y是浮点型变量,初值由键盘输入)
x?y222x?y23○1x+y
○2实验代码:
#include
voidmain(){
doublex,y,a,b;
printf("请输入x与y的初始值,中间用空格隔开\n");
scanf("%lf%lf",&x,&y);
a=(x*x)+(y*y*y);
b=(x-(y*y))/((x*x)+(y*y));
printf("经过计算,得一式的结果为%f,二式的结果为%f\n",a,b);}编译结果:
--------------------Configuration:计算题
-Win32Debug--------------------Linking...
计算题.exe-0error(s),0warning(s)运行结果:
以上为编写的程序,经过调试,没有错误。
(10)
编写一个程序,输入年份和月份,判断该年是否是闰年,并根据给出的月份判断是什么季节和该月有多少天?(闰年的条件是年份能被4整除但不能被100整除,或者能被400整除)。
计算机科学与工程学院
实验代码:
#include
voidmain(){doublea,b,c,d,e,f,g,h;printf("请输入你想了解的年份和月份,并且中间用空格隔开,如20189即为2018年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...
闰年.exe-0error(s),0warning(s)
运行结果:
经测试,该程序可以正常运行,且无错误,能够完成题目中的要求。
实验心得:
这次的实验我学到了很多东西,比如在代码编辑的时候,选择合适的变量类型,可以对整个程序的运行产生重要的影响;另外,我发现在使用不同的编辑软件时,输入的代码也不尽相同,需要注意;最后,经过这次的实验,我灵活地使用了课堂上老师教授的代码及其使用方法,感觉受益匪浅,代码编辑真是一件有意思的事情!
篇三:运算符与表达式实验总结
《高级语言程序设计》实验报告
中山大学南方学院
电子通信与软件工程系
课程名称:
高级语言程序设计实践
实验题目:
运算符和表达式
年
月
日
《高级语言程序设计》实验报告
附:实验报告
专业:
年级:
完成日期:
学号:
姓名:
成
绩:
一、实验目的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
《高级语言程序设计》实验报告
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语言程序设计
课
学号
姓名
实验日期
教师评定
实验名称:数据类型、运算符和表达式
实验目的:
(1)
掌握C语言数据类型,熟悉基本类型变量的定义、赋值和运算。
(2)
熟悉C程序的编辑、编译、链接和运行过程。
实验内容与总结:
1、运行下面程序,分析实验结果。
#include
floatx=2.5,y=4.7;
inta=7,b;
floatresult;
result=x+a%3*(int)(x+y)%2/4;
/*赋值语句1*/
printf("result1=%f\n",result);
a=2;b=3;x=3.5;y=2.5;
result=(float)(a+b)/2+(int)x%(int)y;
/*赋值语句2*/
printf("result2=%f\n",result);}分析:
(1)、result=x+a%3*(int)(x+y)%2/4;语句求值过程分析如下:
a%3=1;(int)(x+y)=7;result=x+a%3*(int)(x+y)%2/4=2.5+1*7%2/4=2.5+1/4=2.500000因为floatresult,所以输出结果有六位小数。
(2)、result=(float)(a+b)/2+(int)x%(int)y;语句求值过程分析如下:
(float)(a+b)/2=(2+3)/2=2.500000;(int)x%(int)y=3%2=1,所以result=3.500000.(3)、该实验中表达式求值所用到的知识点包括:
①单精度浮点型变量float,有效数学为6~7位;
②基本整型int;
③程序内printf函数中的“%f”是输出浮点数时指定的格式符,作用是指定该实数以小数形式输出;
④取商符号“/”,取余符号“%”;
⑤转义字符\n,作用是换行,将当前位置移到下一行开头。
2、译码:教材P67-3.7程序:
#include
charc1="C",c2="h",c3="i",c4="n",c5="a";
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
printf("Passwordis
%c%c%c%c%c\n",c1,c2,c3,c4,c5);}(1)、程序编制要点:
①指定字符变量,初值分别’C’,’h’,’i’,’n’,’a’;
②经过运算,使C变为G,h变为l,i变为m,n变为r,a变为e;
③输出结果:China译成
Glmre。
(2)该题目涉及的知识点和难点:
①字符变量char的使用;
②复合的赋值运算符“+=”,c+=4是表示c=c+4,③程序内printf函数中的“%c”是输出字符时指定的格式符,作用是指定该实数以字符形式输出;
④“;”的使用。
3、输入一个三位整数,然后构成其反向三位数,并将其输出。
程序:
#include
inta,b,c,x,y;
printf("请输入一个三位整数
x=");
scanf("%d",&x);a=x/100;b=(x-a*100)/10;c=x-a*100-b*10;
y=c*100+b*10+a;
printf(“%d\n",y);}(1)、程序编制要点:
①输入一个三位数x,取出它的个位数a,十位数b,百位数c;
②将反向三位数y等于个位数*100+十位数*10+百位数,则y=c*100+b*10+a
③x变成了y。
(2)、该题目涉及的知识点和难点:
①基本整型int,scanf函数的使用;
②一个三位数的个位数、十位数、百位数的取值方法。
程序代码和运行情况描述:
前两个程序我都写的都没问题,但有时忘记了“;”的输入,导致程序出错,根据编程工作区的最下面小窗口的出错提示改正后,程序就可行了。
推荐访问:运算符与表达式实验总结 表达式 运算符 实验