实验二 运算符和表达式

合集下载

实验2 运算符和表达式

实验2  运算符和表达式

实验2 运算符和表达式实验目标编写简单程序完成数学公式的程序表达方法。

实验目的验证C/C++语言的常用运算符、表达式的作用。

实验内容按照上次实验课的做法,创建一个空的Win32控制台项目(给它起一个有意义的名字),添加一个源文件(cpp文件)。

分别将下面的代码输入到cpp文件中,中编译运行以验证各种运算符的作用。

(1)算术运算符:加:+ 减:- 乘:* 除:/ 模:%(2)关系与逻辑运算符。

关系运算符:小于‘<’大于‘>’小于等于‘<=’大于等于‘>=’不等于‘!=’逻辑运算符:与‘&&’(条件同时成立)或‘||’(任一条件成立)非‘!’(取相反条件)。

main函数代码如下:练习1填空题:在下划线处补充完整if语句的条件表达式,要求条件表达式能与对应的输出相符。

/*****代码1 比较运算符*****/#include <iostream>using namespace std;int main(){int x=9;if ( )cout << "x小于10" << endl;if ( )cout << "x不小于5" << endl;if ( )cout << "x小于10并且x不小于5";return 0;}/*****代码2 加一与减一运算符*****/#include <iostream>using namespace std;int main(int argc, char* argv[]){int i,j;cout << "请输入一个整数i=";cin >> i;cout << endl;cout << "原来i = " << i << endl;cout << " j = i++ = " << (________) << ",\t 要求:j为i 加之前的值。

实验报告_实验2 数据类型与表达式

实验报告_实验2 数据类型与表达式

实验报告_实验 2 数据类型与表达式(学生学号__姓名)一、实验目的:1、熟悉基本数据类型(int、char、float、double)占用的字节数和存储形式,能够定义基本数据类型的变量,使用这些类型的数据;2、掌握字符数据的存储形式及其与整数的运算,能正确理解“字符数据”与“字符串”的区别与联系,熟悉常用转义字符的使用;3、熟悉字符常量与一般常量的定义、使用;4、掌握算术运算符(重点是/和%)、自增(++)和自减(--)运算符的使用,能够构建正确的表达式,并输出其结果;5、理解不同类型数据之间运算时的类型转换规则,掌握强制类型转换的方法。

二、实验内容1、(基础题)用sizeof运算符可以得到各种类型数据占用存储单元长度,利用数据间的关系和不同控制符,可以得到查看数据的存储形式。

回答下列问题:(1)sizeof运算符如何使用?它的操作数可以是类型关键字吗?答:可用sizeof(类型名或数据) 来获取该类型数据所占字节数。

可以。

(2)整数的占用长度与其数值大小有关吗?答:有。

(3)字符串中’\’’、’\n’、’\t’的功能各是什么?答:单引号,换行,水平制表。

(4)字符串的一个英文字母占几个字节?一个汉字占几个字节?尾部还有什么字符?答:1个字节;4个字节;结束符‘\0’。

(5)整数的存储形式是什么?答:二进制补码。

2、(基础题)字符数据以整数方式(ASCII)存储的,可以与整数进行+、-运算,既可以用“字符”方式输出,也可以用“整数”方式输出。

回答下列问题:(1)字符数据在内存中是以什么方式存储的?答: ASCII码。

(2)字符数据与整型数据能相互赋值、运算吗?如何以“整数”方式和“字符”方式输出字符?答:能,整数:”%d”,字符:”%c”。

(3)大小写字母的ASCII有什么关系?(如:’G’与’g’)答:ASCII码相差32。

(4)如何由’A’、’a’分别得到后续的大写字母、小写字母?答:’A+1’,’a+1.’(5)字符间的距离如何计算?由一字符能分别得到ASCII比它小5、大10的两个字符吗?若能,如何得到?答:两个ASCII码绝对值相减,’a’-5,’a’+10.(6)说明“C”与’c’的联系与区别,能否写成”dog”、’boy’?答:”C”字符串,’c’字符,能.3、(基础题)符号常量与常变量(即用const关键字定义)的使用:回答问题:(1)写出用符号常量定义PI的格式;#define PI(2)写出用“常变量”方式定义PI值的语句。

实验2-1数据类型、运算符与表达式

实验2-1数据类型、运算符与表达式

实验2-1 数据类型、运算符与表达式1【实验目的】(1)掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法(2)掌握不同类型数据之间赋值的规律(3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(- -)运算符的使用(4)进一步熟悉C程序的编辑、编译、连接和运行的过程【实验要求】(1)熟练掌握C程序的调试方法(2)熟练掌握常量和变量的定义及使用(3)熟练掌握算术运算符和逗号运算符的使用方法【实验环境】(1) Microsoft XP操作系统(2) Microsoft VC++ 6.0【实验内容】1、程序改错题目描述:阅读下面程序段,编译调试程序,并改正错误语句。

#include <stdio.h>#define PI 3.14159;int main(){float r;PI=3.14159;scanf("%.2f",r);float area;area=PI*r*r;printf("%.2f",area);return 0;}输入:输入半径输出:修改程序段,输出园的面积样例输入:1样例输出:3.142、常量变量练习/sdutoj/problem.php?action=showproblem&problemid=1111题目描述:用c语言的基本输出格式打印下列内容:100A3.140000输入:本题目没有输入数据输出:输出三行数据:100A3.140000示例输入:无示例输出:100A3.1400003、整数求和/acmhome/problemdetail.do?&method=showdetail&id=1001题目描述:求两个整数之和。

输入:输入数据只包括两个整数A和B。

输出:两个整数的和。

样例输入:1 2样例输出:34、交换两个整数的值/sdutoj/problem.php?action=showproblem&problemid=1115题目描述:输入两个变量的值,由终端输入两个整数给变量x、y,然后交换x和y的值后,输出x和y。

实验2-转义字符、类型转换、运算符

实验2-转义字符、类型转换、运算符

实验2 Java符号与表达式2.1 实验目的(1)熟悉基本数据类型及其占用空间大小,熟悉标识符的定义特点;(2)熟悉常见转义字符的含义;(3)掌握不同类型数据的赋值转换原则,熟悉自动转换与强制转换的含义;(4)掌握常用运算符的使用。

2.2 知识要点2.2.1 基本数据类型、变量(1)标识符的命名原则:以字母,下划线(_),美元符($)开始的一个字符序列,后面可以跟字母,下划线,美元符,数字。

(2)基本数据类型(见表2-1)表2-1 基本数据类型●八进制表示形式:以0(零)开头,如:012;●十六进指表示形式:以0x开头,如:0xa1;●整数默认int型,长整数可在后面加L;●实数默认双精度型,要明确表示为float型在数据后加F。

●布尔型数据只有true和false两个值;●字符型数据是用单引号括起来。

2.2.2 特殊字符—转义符Java字符采用Unicode编码。

“\”(反斜杠)在字符表示或字符串中有特殊作用,它和之后的字符合并解释,用于表示一些特殊字符。

见表2-2。

表2-2 常见转义符2.2.3 自动类型转换与强制类型转换(1)自动转换次序byte-->short→char→int→long→float→double按照箭头所示方向,处于左边的数据类型的数据可以自动转换赋值给右边的数据类型的变量,但反之,将处于右边的数据类型的数据赋值给处于左边的数据类型的变量必须经过强制转换。

(2)布尔类型不能与其他类型进行转换;(3)赋值时强制转换可能导致数据丢失精度。

2.2.4 输出语句的使用(1)print()方法与println()的差异是前者输出后不换行,而后者换行。

(2)输出时可以通过“+”号将任何数据与字符串拼接。

如果拼接的是基本类型变量,则在其位置输出变量值,如果是对象,则在其位置输出对象的toString()方法的返回结果。

2.2.5 容易用错的运算符(1)++或--的位置相关性。

不妨假设原来a值为4,则使用++或--运算符后的结果如表2-3所示。

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

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

实验三--运算符和表达式-实验报告计算机科学与工程学院天津理工大学计算机科学与工程学院实验报告20__至20__学年第一学期课程名称程序设计(C 语言)学号学生姓名班级级专业计算机科学与技术(合作)实验地点 7-215 实验项目运算符与表达式实验时间批改意见成绩教师签字:实验(一))实验名称运算符与表达式开发环境 PC 机,windows7 操作系统开发工具 VC6.0 实验目的(1 1 )掌握 C C 语言中常用运算符的基本功能,以及优先级与结合性;(2 2 )正确使用运算符和数据实体构建表达式,并表达式的计算过程;(3 3 )进一步熟悉 0 Visual C++6.0 开发环境下调试程序的基本步骤。

实验要求认真完成实验内容,编写程序代码;要求程序正确无误,并输出合理的实验结果;书写并提交实验报告。

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

))(2)建立项目文件,运行下列程序,并记录程序执行的结果:#include<stdio.h> void main {int a,b,c,d;printf(“Input a, 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)建立项目文件,并在源文件中正确书写下列表达式,同时在屏幕上打印出表达式的运算结果。

c语言程序设计实验指导答案

c语言程序设计实验指导答案

太原理工大学现代科技学院C语言程序设计课程实验报告专业班级学号姓名指导教师焦雄5.#include <stdio.h> void main(){int a=10,n=5;a+=a;printf("%d\n",a);a=10,a-=2;printf("%d\n",a);a=10,a*=2+3;printf("%d\n",a);a=10,a/=a+a;printf("%d\n",a);a=10,a%=(n%=2);printf("%d\n",a);a=10,a+=a-=a*=a;printf("%d\n",a); }遇到的问题和解决方法心得体会实验三简单程序、分支程序和循环程序设计实验名称实验目的和要求1.理解C语言程序的基本结构和实现基本结构的语句;2.熟练应用赋值、输入和输出语句;3.理解并掌握关系运算符、逻辑运算符及其表达式的使用;4.熟练掌握if语句、switch语句、while语句、do—while语句和for语句的用法;实验内容1.输入并运行第3章例3-3、例3-6中的程序,通过输出结果理解对应的格式说明。

2.输入并运行第3章例3-8、例3-10中的程序,注意输入数据的格式。

3.已知圆柱半径r=1.5,圆柱高h=3,编程求圆周长,圆面积和圆柱体积。

4.输入一百分制成绩,输出成绩等级A、B、C、D、E。

90分以上为A,80~89为B,70~79分为C,60~69分为D,60分以下为E。

要求程序能处理错误的输入数据。

5.利用公式:π/4=1-1/3+1/5-1/7+……,求π的近似值,直到最后一项的绝对值小于10-6为止。

(fabs(t)表示t的绝对值,1e-6=1*10-6)。

6.求100-200间所有素数。

7.输出三角形的九九乘法口诀表。

8.打印水仙花数。

水仙花数是指一个3位数,其各位数字立方和等于该数本身。

实验报告实验2 数据类型与表达式

实验报告实验2 数据类型与表达式

实验报告_实验 2 数据类型与表达式(学生学号__姓名)一、实验目的:1、熟悉基本数据类型(int、char、float、double)占用的字节数和存储形式,能够定义基本数据类型的变量,使用这些类型的数据;2、掌握字符数据的存储形式及其与整数的运算,能正确理解“字符数据”与“字符串”的区别与联系,熟悉常用转义字符的使用;3、熟悉字符常量与一般常量的定义、使用;4、掌握算术运算符(重点是/和%)、自增(++)和自减(--)运算符的使用,能够构建正确的表达式,并输出其结果;5、理解不同类型数据之间运算时的类型转换规则,掌握强制类型转换的方法。

二、实验内容1、(基础题)用sizeof运算符可以得到各种类型数据占用存储单元长度,利用数据间的关系和不同控制符,可以得到查看数据的存储形式。

回答下列问题:(1)sizeof运算符如何使用?它的操作数可以是类型关键字吗?答:可用sizeof(类型名或数据) 来获取该类型数据所占字节数。

可以。

(2)整数的占用长度与其数值大小有关吗?答:有。

(3)字符串中’\’’、’\n’、’\t’的功能各是什么?答:单引号,换行,水平制表。

(4)字符串的一个英文字母占几个字节?一个汉字占几个字节?尾部还有什么字符?答:1个字节;4个字节;结束符‘\0’。

(5)整数的存储形式是什么?答:二进制补码。

2、(基础题)字符数据以整数方式(ASCII)存储的,可以与整数进行+、-运算,既可以用“字符”方式输出,也可以用“整数”方式输出。

回答下列问题:(1)字符数据在内存中是以什么方式存储的?答: ASCII码。

(2)字符数据与整型数据能相互赋值、运算吗?如何以“整数”方式和“字符”方式输出字符?答:能,整数:”%d”,字符:”%c”。

(3)大小写字母的ASCII有什么关系?(如:’G’与’g’)答:ASCII码相差32。

(4)如何由’A’、’a’分别得到后续的大写字母、小写字母?答:’A+1’,’a+1.’(5)字符间的距离如何计算?由一字符能分别得到ASCII比它小5、大10的两个字符吗?若能,如何得到?答:两个ASCII码绝对值相减,’a’-5,’a’+10.(6)说明“C”与’c’的联系与区别,能否写成”dog”、’boy’?答:”C”字符串,’c’字符,能.3、(基础题)符号常量与常变量(即用const关键字定义)的使用:回答问题:(1)写出用符号常量定义PI的格式;#define PI 3.14(2)写出用“常变量”方式定义PI值的语句。

C语言实验报告数据类型、运算符和表达式

C语言实验报告数据类型、运算符和表达式
2.参考例题2-2完成题目:
设圆半径r=1.5圆柱高h=3求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积,输入结果要有文字说明,如The area is 7.06
(其中π定义;圆周长2πr、圆面积πr2、圆球表面积4πr2、圆球体积4/3πr3、圆柱体积πr2h)
四实验结果与数据处理四实验结果与数据处理四实验结果与数据处理五分析与讨论五分析与讨论五分析与讨论这次上机操作无实例可看一看题目毫无头绪经过同学的指点和自己的这次上机操作无实例可看一看题目毫无头绪经过同学的指点和自己的这次上机操作无实例可看一看题目毫无头绪经过同学的指点和自己的实践才得以完成任务需要多加练习
3.设计算法输入一个四位正整数,将它们倒排,例如输入1234,输出4321。(提示:分别应用/求整数部分,%求余数部分。例如7/5=1,7%5=2)。
4.参考例题2-10完成题目:
要将”CHINA”译成密码,密码规律是:用原来的字幕后面第4个字母代替原来的字母,例如字母’A’后面第4个字母是’E’,用’E’代替’A’。因此”CHINA”应该翻译成”GLMRE”。请编写一个程序将”CHINA”运算后变成”GLMRE”并输出。
《高级语言程序设计》实验报告
实验序号:2实验项目名称:数据类型、运算符和表达式
学 号
实验地点
一、实验目的及要求
1.学会使用基本数据类型
2.熟练使用C常量、变量和表达式
3.使用格式化输入输出函数
二、实验设备(环境)及要求
使用turbo c 2.0+windows系列操作系统的环境。
三、实验内容与步骤
1.看懂并上机验证例题2-1---2-24。
四、实验结果与数据处理
2.
3.
4.
五、分析与讨论
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
&按位与
|按位或
^按位异或
~取反
<<左移
>>右移
⑴按位与运算
按位与运算符“&”是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1,否则为0。参与运算的数以补码方式出现。
例如:9&5
可写算式如下:00001001 (9的二进制补码)&00000101 (5的二进制补码)00000001 (1的二进制补码)可见9&5=1。
long int e=45;
10+‘a’+i*f-d/e ;
②char st=‘a’ ;
printf(“%d”,st);
③int a;
double b=3.25 ;
a=(int)b+8;
printf(“%d, %f ”,a,b);
④main( )
{
int a=1,b=2,c=3,d=4;
int m, n=1;
m=a>b&&(n=c>d);
printf("m=%d,n=%d\n",m,n);
}
⑤int a , b ,c ;
c=( a=1 , b = 3 , a+b )
⑥x = ( a=3, 6*a )
x = a = 3, 6*a
⑦int x=5, y=2, z ;
z = sizeof( x > y? 1 : 1.5 );
实验二运算符和表达式
实验时间:2010年10月8日
【实验目的】
1、掌握C语言各种基本数据类型的定义和表示方法;
2、掌握变量的定义、赋值方法;
3、掌握基本运算符的功能及其应用;
4、掌握基本运算符的优先级和结合性;
5、掌握表达式的概念及运算规则;
6、掌握常用数据类型的转换规则。
【实验内容】
1、常用基本数据类型的存储长度,求字节运算符的使用;
【实验小结】
应知:
1、基本运算符的功能及其应用;
2、基本运算符的优先级和结合性;
3、基本数据类型及其转换。
应会:
1、各种运算符及其表达式的应用;
2、各种表达式的正确表示;
3、数据类型转换规则。
【实验思考】
1、请说明自增/自减运算符(++/--)前置运算和后置运算的区别。
2、试列出常用几种运算符的优先级别与结合方向。
例如9^5
可写成算式如下:00001001^00000101 00001100 (十进制为12)
/*ex2_5.c*/
#include <stdio.h>
main()
{
int a=9;
a=a^15;
printf("a=%d\n",a);
}
⑷求反运算
求反运算符~为单目运算符,具有右结合性。其功能是对参与运算的数的各二进位按位求反。
/*自增在操作数之前*/
m = ++i;
printf("i = %d\n", i);
printf("m = %d\n", m);
/*自减在操作数之后*/
n = j--;
printf("j = %d\n", j);
printf("n = %d\n", n);
/*自增、自减的混合运算*/
p = (++m)*(n++)+(--k);
例如~9
运算为:~(0000000000001001)结果为:1111111111110110
/*ex2_6.c*/
#include <stdio.h>
main()
{
int a=9;
a=~9;
printf(“b=%d\n",a);
}
⑸左移运算
左移运算符“<<”是双目运算符。其功能把“<<”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0。例如:a<<4指把a的各二进位向左移动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。
①b*=a+4*3%5;
printf("%d“,b );
②a=8;
a*=b=c=3;
printf("%d,%d“,a,b);
③a=5+(c+=3);
printf("%d,%d“,a,c);
并将编译运行后的程序,分别以ex2_8.c、ex2_9.c、ex2_10.c命名,保存在自己的文件内。
(3)已知:a=3,b=2, c =1,编程计算并输出下面各表达式的值,
5、程序调试与编程
(1)求圆锥体积,判定下列程序是否正确:
main( )
{
int r=5, h=15;
double v;
v=1/3*3.14*r*r*h;
printf(“v=%f ”,v);
}
并将修改后的程序,以ex2_7.c保存在自己的文件内。
(2)计算下面各程序段的输出结果
int a=3,b=2,c;
例如:9|5
可写算式如下:00001001|00000101
00001101 (十进制为13)可见9|5=13
main()
{
int a=9,b=5,c;
c=a|b;
printf("a=%d\nb=%d\nc=%d\n",a,b,c);
}
⑶按位异或运算
按位异或运算符“^”是双目运算符。其功能是参与运算的两数各对应的二进位相异或,当两对应的二进位相异时,结果为1。参与运算数仍以补码出现,
按位与运算通常用来对某些位清0或保留某些位。例如把a的高八位清0,保留低八位,可作a&255运算( 255的二进制数为0000000011111111)。
⑵按位或运算
按位或运算符“|”是双目运算符。其功能是参与运算的两数各对应的二进位相或。只要对应的二个二进位有一个为1时,结果位就为1。参与运算的两个数均以补码出现。
total=num*PRICE;
ch1=ch2-‘A’+‘a’;
printf(“total=%f,ch1=%c\n”,total,ch1);
}
⑵、/*ex2_3.c*/
# include <stdio.h>
main()
{
int i, j, k;
int m, n, p;
i = 8;
j = 10;
k = 12;
①c > a+b②a>b== c③a==b<c
④m=b> c⑤m=a>*2 != b⑧m=c==a%b
并将编译运行后的程序,以ex2_11.c命名,保存在自己的文件内。
(4)计算下面各程序段的输出结果
①int i=2 ; float f =3.6; double d=3.2;
⑹右移运算
右移运算符“>>”是双目运算符。其功能是把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。
例如:设a=15,a>>2
表示把000001111右移为00000011(十进制3)。应该说明的是,对于有符号数,在右移时,符号位将随同移动。当为正数时,最高位补0,而为负数时,符号位为1,最高位是补0或是补1取决于编译系统的规定。Turbo C和很多系统规定为补1。
printf("k = %d\n", k);
printf("p = %d\n", p);
}
3、运算符的优先级别和结合性:请写出下列程序运行的结果,并进行分析。
/*ex2_4.c*/
#include <stdio.h>
Main()
{
int x,y,z;
x=y=z=-1;
++x&&++y||++z;
printf(“x=%d\ty=%d\tz=%d\n”,x,y,z);
数据类型
长度(字节)
数据类型
长度(字节)
char
short
int
long
float
double
2、写出下列程序运行的结果
⑴、/*ex2_2.c*/
#include <stdio.h>
#define PRICE 12.5
main()
{ int num=3;
float total;
char ch1,ch2=‘D’;
/*”\t”为按横向跳格格式输出*/
x=y=z=-1;
++x||++y&&++z;
printf(“x=%d\ty=%d\tz=%d\n”,x,y,z);
x=y=z=-1;
++x&&++y&&++z;
printf(“x=%d\ty=%d\tz=%d\n”,x,y,z);
}
4、位运算符的使用
位运算符C语言提供了六种位运算符:
2、运算符及其表达式的应用;
3、数据类型的自动转换与强制转换。
【实验步骤】
一、在E或F盘上建立以自己的学号命名的文件夹。
二、内容与步骤
1、求字节运算符的使用
利用sizeof()函数,了解C语言各种数据类型所占用的存储空间大小,将编写的源程序以文件名ex2_1.c保存在自己的文件夹内,并将结果填在下表内。
相关文档
最新文档