上机实验二 数据类型
实验2 C语言基本数据类型
实验2 C语言基本数据类型一、实验目的:1.掌握C语言的基本数据类型(整型、字符型和实型)。
2.掌握C语言变量的定义和赋值方法。
3.进一步熟悉C程序的编辑、编译、连接和运行的过程。
二、实验内容:1.验证性实验(1) 分析下面程序结果,并上机验证(整型、字符型数据表示和输出)。
#include<stdio.h>void main(){int x=010,y=10,z=0x10; /*前导中的'0'是数字0而不是字母o*/char c1='M',c2='\x4d',c3='\115',c4=77,c; /*字符型数据表示*//* 整型数据的输出*/printf("x=%o,y=%d,z=%x\n",x,y,z);/* 数据以原进制输出,注意是否有前导0或0x */printf("x=%d,y=%d,z=%d\n",x,y,z);/* 数据以10进制输出,换算到10进制,结果对吗?*//* 字符型数据的输出*/printf("c1=%c,c2=%x,c3=%o,c4=%d\n",c1,c2,c3,c4);/* 数据以原进制输出,注意是否有前导0或0x */printf("c1=%c,c2=%c,c3=%c,c4=%c\n",c1,c2,c3,c4);/*结果都是什么字符?,也就是说字符可以自由的表示成几种形式?*/printf("c1=%d,c2=%d,c3=%d,c4=%d\n",c1,c2,c3,c4);/*看看这些字符的10进制ASCII码,哦,ASCII码一样,同一种字符*/ /* 字符型数据参与算术运算*/c=c1+32; /* 字符怎么参加了数学运算,哦,是字符对应的ASCII码-整数/*参与数学运算;结果还是一个整数-另外一个字符的ASCII码*/printf("c=%c,c=%d\n",c,c);/*看看这个字符是什么?'M'+32就变为'm'了字母的大小写转换原来如此!*/ }(2)分析下面程序结果,并上机验证(整型、实型数据的表示、输入和输出)。
实验二 基本数据类型
实验二基本数据类型、运算符及表达式1. 分析以下程序,判断输出结果,然后上机运行程序验证结果。
(1)# include <stdio.h>main( ){ int sum = 1 ;sum = sum +100 ;printf("SUM = %d\n", sum);}输出结果为:101(2)改正后的程序为:# include <stdio.h>main( ){ char ch1 , ch2 ;ch1 = 'b' ;//不能把字符串"b"赋给字符变量ch2 = ch1 - 32 ;printf("%c %d %c %d\n", ch2,ch2,ch1,ch1);}(3)# include <stdio.h>main( ){ int a = 10 , b =3 ;printf("%d\n", (a = a - 1 , b + a , b + 2));}输出结果为5,(a = a - 1 , b + a , b + 2)作为一个逗号表达式。
(4)# include <stdio.h>main( ){int a = 5 , b = 3 , c = 4 ;a *= a += 3;b = ++c ;c = b++ ;a =b +++c ;printf("\n%d,%d,%d", a , b , c);}输出结果为:11,7,5(5)程序改正为:# include <stdio.h>main( ){int a = 1 , b = 2 , c = 3 , logic ;logic = a + b > c && b <= c ;printf("logic = %d\n", logic);logic = a >= b + c || b == c;printf("logic = %d\n", logic);logic =!(a < c) +b!=1 && (a + c)/2 ;printf("logic = %d\n", logic);}输出结果为:logic = 0logic = 0logic = 12. 以下程序可能有多处错误,请改正并调试运行程序。
实验报告_实验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 基本数据类型、表达式和基本语句
实验2 基本数据类型、表达式和基本语句实验内容(1 )测试基本数字类型char、int和short之间的转换。
(2 )测试有自增自减运算符号的表达式的结果和运行次序。
(3 )Ex –Prime?输出1 ~100的素字(用for语句编写).(4 )程序Ex -CircleAndBall?设圆半径r?2.5,圆柱h=4,求圆的周长、圆面积?圆球体积圆柱体积。
用cin输入要计算的项目,然后输出计算结果,输入、输出时要有文字提示。
实验准备和说明(1)在学习完第1章的“基本语句”内容之后进行本次实验。
(2)编写本次上机所需要的程序。
实验步骤1.创建工作文件夹打开计算机上,在“D\VisualC??程序\LiMing”文件夹中创建一个新的子文件夹“实验2”。
2.创建应用程序项目Ex –Simple创建应用程序项目Exx–Simple的具体步骤如下。
(1 )启动D\VisualC + +6.0。
(2 )选择“文件” →“新建”菜单命令。
显示出“新建”对话框,切换到“工程”标签页面,在列表框中选定Wiin32ConsoleApplication项。
(3 )在“工程”编辑框中输入控制台应用程序项目名称Ex –Simple,并将项目文件夹定位到“D\VisualC??程序\LiMing实验1”。
(4 )单击“确定”按钮,显示“Win32应用程序向导”对话框。
选中A“H ello,World!”application项。
单击“完成”按钮,系统将显示向导创建的信息,单击“确定”按钮将自动创建此应用程序。
3.修改并添加类型转换的测试代码(1 )展开工作区窗口的ClassView页面的所有结点,单击main结点,在文档窗口中显示main 函数的源代码。
(2)将main函数修改成下列的代码?#include <iostream.h>void main(){char c1,c2,c3;c1=97; c2=98; c3=99;cout<<c1<<”,”<c2<”,”<<c3 <<endl ;}(3)编译运行,看看出现的结果与理解的是否一样?那么,怎样将输出的结果变成数值而不是字符呢?有2种办法?一种是将c1、c 2和c3的变量类型由char变为int或short;另一种是变量类型保持不变,在输出语句中加入类型的强制转换,如?cont<<(short)cl<<”,”<<(short)c2<<”,”<<(short)c3<<endl;想一想除了上述2种办法外,使用数据类型的“自动转化”也可使上述结果显示为数值,那么应如何修改上述代码呢?4.修改并添加复杂表达式的测试代码修改并添加复杂表达式的测试代码的具体步骤如下。
实验二+基本数据类型、数组
实验二基本数据类型、数组一、.数据类型及相互转化1. .数据类型将该程序代码在机器上运行,并修改相应错误。
2. 数据类型转化按下列要求写出Java语言的语句。
✓定义一个double类型的变量d,并赋初值为2.5。
✓在屏幕上输出显示上面所定义的变量d的值。
✓定义一个字符型一维数组ch,大小为10。
✓定义一个字符串常量s1,赋值‘abc’。
✓定义一个布尔型变量b,赋初值true。
✓在屏幕上输出显示26个大写字母。
✓将代数式s=a2+2ab+b2写成一个赋值表达语句。
✓a,b和c是3个int型变量,用条件表达式写出a>b,c值为a,否则c值为b。
✓用for循环语句实现下述循环:循环变量m为100,每次循环m减10;当m等于50时退出循环,循环体输出m值。
参考答案:3. 思考下列各题的输出情况并上机调试。
问题一、问题二//public class Operators {public static void main (String [] args){ int a = 2;int b = 3;int c = 4;int d = 5;String s ="a";String s2 = "1";prt(""+'a'+a);prt('a'+a+"");prt(a+b+s+c+d);// prt(Integer.parseInt(s)+"");// prt(Integer.parseInt(s2)+"");// prt(String.valueOf(c));}字符串强制转换为整型三部可以的注释掉二、数组1、一维数组的创建、声明、初始化(同教材P23例1-5)将下面代码在机器上调试。
提高:尝试自己给该数组赋初值,并将结果重新输出。
2、二位数组引用(教材P25 例1-6)23、数组操作测试下面程序段查看api 文档http://10.10.25.101/java/docs/api/学习使用arraycopy方法复制数组。
12级实验二上机题总结
二、上机内容
1. 教材P54页习题3中第三题编程题中第(2)小题。 输入三 角形的三条边长,求三角形的面积。(若三角形的三边为a、b、 c ,则面积=sqrt( s(s-a)(s-b)(s-c) ),而s=(a+b+c)/2 ) 源程序: 运行结果(至少有一组调试、运行结果) 2. 实践教程P36页中第6题编程题中第(1)小题。 (实验报告要求抄题) 源程序 运行结果(至少有一组调试、运行结果) 3. 实践教程P36页中第6题编程题中第(2)小题。 (实验报告要求抄题) 源程序 运行结果(至少有一组调试、运行结果) 4. 实践教程P35~36页中第5题程序填空题中第(1)、(2)、 (3)小题。
4-1.实践教程P35页中第5题程序填空题中第(1)小题。下面 的程序是将从键盘输入的大写字母转换为小写,将小写字母转 换为大写字母。在C程序中补充完整以下程序,并观察运行结 果。 #include <stdio.h> void main() { char c; scanf("%c",&c);
c=(c>=65&&c<=90)
//printf("%d/%d=%d\t%d%%%d=%d\n",x,y,x/y,x,y,x%y);
}
4-3 实践教程P36页中第5题程序填空题中第(3)小题。 下面程序是不用第三个变量,实现将两个数进行对调的操 作。请选择填空。
#include<stdio.h> void main( ) { int a,b; printf("Enter a and b:"); scanf("%d%d",&a,&b); printf("a=%d b=%d\n",a,b); a= ① ;b= ② ;a= ③ ; printf("a=%d b=%d\n",a,b); }
C++ 实验二 基本数据类型与输入输出
实验二基本数据类型与输入输出2.1 实验目的1.掌握C语言基本数据类型以及常量的表示方法、变量的定义与使用规则。
2.掌握C语言的算束运算、逗号运算的运算规则与表达式的书写方法。
3.掌握各种输入输出函数的使用方法。
2.2 实验内容1.上机调试(需作出必要的注释!)(1)请说明以下程序的功能,然后上机验证。
#include<stdio.h>void main(){printf("\t*\n");printf("\t\b***\n");printf("\t\b\b*****\n");}该程序主要功能是以给定形式输出几个简单的字符。
(2)请说明以下程序的功能,然后上机验证。
# include<stdio.h>void mian(){int x=010,y=10,z=0x10;char c1='M',c2='\x4d',c3='\115',c4=77 ,c;printf("x=%o,y=%d,z=%x\n",x,y,z);printf("x=%d,y=%d,z=%d\n",x,y,z);printf("c1=%c,c2=%c,c3=%c,c4=%c\n",c1,c2,c3,c4);printf("c1=%d,c2=%d,c3=%d,c4=%d\n",c1,c2,c3,c4);c=c1+32;print("c=%c,c=%d\n",c,);}c:\documents and settings\vm272\sy3.cpp(5) : error C2018: unknown character '0xa3' c:\documents and settings\vm272\sy3.cpp(5) : error C2065: 'c' : undeclared identifierc:\documents and settings\vm272\sy3.cpp(11) : error C2065: 'print' : undeclared identifierc:\documents and settings\vm272\sy3.cpp(11) : error C2059: syntax error : ')'第一:void mian()中“mian”书写错误,应为“main”.第二:char c1='M',c2='\x4d',c3='\115',c4=77 ,c;中最后一个“c”前面的“,”为中文符号,应用英文符号“,”第三:在print("c=%c,c=%d\n",c,);中“print”应为“printf”第四:在print("c=%c,c=%d\n",c,);中最后只有一个“c”,本应由两个,所以应该改为“c,c”。
实验二 Visual FoxPro数据类型
实验二Visual FoxPro数据类型、常量、变量和数组一、实验目的1.熟悉Visual FoxPro的基本数据类型和常量。
2.掌握内存变量的基本操作。
3.了解数组的定义和赋值。
二、实验内容及上机步骤【上机题1】Visual FoxPro的基本数据类型和常量的定义。
【上机步骤】本题考查的知识点是Visual FoxPro的基本数据类型和常量,操作步骤如下:(1)在命令窗口中分别执行如下命令,并观察屏幕显示结果:? [3*5],"常量"? 3*5? 常量(2)在命令窗口中分别执行如下命令,并观察屏幕显示结果:? "2005/11/17"? {^2005/11/17}? 2005/11/17(3)在命令窗口中分别执行如下命令,并观察屏幕显示结果:? .T.,.F.,.N.,.Y.? T,F,N,Y【上机题2】内存变量的基本操作。
【上机步骤】本题考查的知识点是内存变量的基本操作,操作步骤如下:(1)内存变量的赋值, 分别执行如下命令:A1=3A2=.F.A3={^2005/11/17}STORE " abg" TO B1,B2,B3,B4C1=A1+3*5(2)内存变量的显示, 分别执行如下命令,并观察屏幕显示结果,了解DISPLAY与LIST 命令动词的区别:DISPLAY MEMORY &&分屏方式显示LIST MEMORY &&滚动方式显示DISPLAY MEMORY LIKE A* &&显示变量名以A开头的内存变量信息,显示结果如图2-1所示图2-1 显示以字母‘A’开头的变量信息LIST MEMORY LIKE ?1 &&显示变量名第二个字符为‘1’的变量信息,显示结果如图2-2所示图2-2 显示第二个字符为‘1’的变量信息(3)内存变量的保存, 分别执行如下命令:SA VE TO AL1 &&将所有内存变量保存在内存变量文件AL1中SA VE TO AL2 ALL LIKE A* &&将‘A’开头的内存变量保存在内存变量文件AL2中SA VE TO AL3 ALL EXCEPT ?1 && 除了第二个字符为‘1’的内存变量保存在内存变量文件AL3中(4)内存变量的删除与显示, 分别执行如下命令:RELEASE B4 &&删除指定内存变量B4DISPLAY MEMORY &&显示后的结果如图2-3所示图2-3 删除了变量B4后的显示RELEASE ALL LIKE ?2 &&将所有第二个字符为‘2’的内存变量删除DISPLAY MEMORY &&显示后的结果如图2-4所示图2-4 第二次删除变量后的显示RELEASE ALL EXCEPT A* &&删除不以“A”开头的变量DISPLAY MEMORY &&显示后的结果如图2-5所示图2-5 第三次删除变量后的显示CLEAR MEMORY &&删除所有内存变量DISPLAY MEMORY &&显示后的结果如图2-6所示图2-6 删除全部变量后的显示(5)内存变量的恢复与显示, 分别执行如下命令:RESTORE FROM AL2 &&恢复内存变量文件AL2中保存的变量DISPLAY MEMORY &&显示结果如图2-1所示RESTORE FROM AL3 &&恢复内存变量AL3中保存的变量DISPLAY MEMORY &&显示结果如图2-7所示图2-7 恢复了内存变量文件AL3后的显示RESTORE FROM AL1 ADDITIVE &&恢复内存变量文件AL1中保存的变量DISPLAY MEMO &&显示结果如图2-8所示图2-8 全部变量被恢复【上机题3】Visual FoxPro数组变量的定义和赋值。
实验二 基本数据类型
实验二基本数据类型1.实验目的1、掌握char 型数据和int型数据之间的互相转换,同时了解Unicode字符表;2、掌握从键盘为简单型变量输入数据;3、学习掌握使用数组处理大整型数据的加法。
2.实验内容1、根据附录里的源代码,按照注释要求,完成代码填空,使程序能够运行得出结果。
1)实验1 输出特殊偏旁的汉字2)实验2 输入、输出学生的基本信息3)实验3 超大整数的加法4)实验4 输出希腊字母表2、根据要求完成下列任务。
1)下列哪些变量名是合法的?Ab?1, @abc , lname, _int, $25, private, ab*5, #abc2)写出以下表达式的值:知识点:运算符, 表达式, 运算符的优先级(1)int a = 2, b = 3, c;c = a / b * 8;(2)float a = 3.0F, b;b = a / 0;(3)double a = 3.0, k;Int b = 3, c = 2;k = a / c + b / c;(4)int a = 3, b = 6, c;c = (a++) + (++b) + a * 2 + b * 4;(5)int a = 10, b=3, c;c = ((a % b) == 0) ? ++a * 2:++b * 2;(6)int a = 5,b ;b = 5 << 2;(7)int a = 0, b = 12345, c = 0xffffffff, d, e, f;d = a & b;e = a | b;f = b & c;3)写出以下程序的运行结果:public class Test {public static void main (String args[]) {float a = 3.25F, b= -2.5F;int c , d;c = (int) (a * b);d = (byte) 386;System.out.println(“c=c” + c);System.out.println(“d=” +d);}}3、按要求编写程序:1)编写一个Java应用程序,在主类的main方法中声明用于存放矩形的宽和高的2个double型变量:width、height以及存放矩形面积的double 型变量area。
实验报告实验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值的语句。
实验2基本数据类型、运算符与表达式
实验2:基本数据类型、运算符与表达式实验名称:基本数据类型、运算符与表达式成绩:实验日期:年月日实验报告日期:年月日一、实验目的1、掌握C语言的各种基本数据类型及其定义、赋值方法。
2、掌握不同基本数据类型之间赋值的规律。
3、熟练掌握各种算术运算符的使用。
4、进一步掌握C程序的编辑、编译、连接和运行的过程。
二、实验环境安装了Visual C++ 6.0的计算机系统。
三、实验内容(或实验任务)1、变量定义及赋值,编写程序实现下列功能:(要求文件名:2_1.c)(1)定义三个整型变量,变量名自定。
(2)定义一个单精度浮点型变量和一个双精度浮点型变量,变量名自定。
(3)定义一个字符型变量,变量名自定。
(4)给上述变量赋相应的值。
(5)输出各个变量的值。
注意:变量名要符合C语言标识符的定义规则。
2、编写程序,熟悉整型数据的输入与输出。
(要求文件名:2_2.c)程序功能:从键盘上接收三个整型数据,并按以下方式输出到屏幕上:(1)将三个整数在一行上输出。
(2)将三个整数分三行输出。
3、编写程序,用三种不同的格式来输出一个实型数据。
(要求文件名:2_3.c)。
请认真观察程序的输出结果,仔细体会三种格式输出的不同。
#include <stdio.h>void main(){float a=1234567890.1234567890123456789;double b=1234567890.1234567890123456789;printf(" %f %lf %e\n", a, b, b);}4、编写程序,熟悉实型数据的输入与输出。
从键盘接收一个float型数据和一个double型数据,并分别输出。
(要求文件名:2_4.c)5、编写一个程序,熟悉符号常量的使用。
程序实现的功能为:根据从键盘输入一个数值,求以该值为半径的球的体积。
(要求文件名:2_5.c)评分标准:是否能正确编写C程序以实现各题要求(60分);项目报告中,知识点描述(20分),难点及解决办法或体会(20分)。
实验报告_实验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值的语句。
实验2 数据类型、运算符和表达式
实验2 数据类型、运算符和表达式一、实验目的和要求1.掌握常量的表示法【字符和字符串常量、短整型、整型和长整型、实数(float)和双精度实数(double)】。
2.掌握各种类型变量的说明及初始化。
3.掌握各种运算符和各类表达式(1)算术运算、逻辑运算、关系运算、++和――运算、三目条件运算符;(2)运算符的优先级、结合规则和目数的概念;(3)类型的自动转换和强制类型转换;(4)表达式的组成、左值和赋值,逻辑表达式的求值优化。
二、实验准备知识点:1.数据类型C++提供了十分丰富的数据类型,除基本类型外,还提供了。
基本数据类型中包括字符型,可用表示,占用字节;整型,可用表示,占用字节;实型,可用表示,占用字节;双精度型,可用表示,占用字节;无值型,可用表示,占用字节。
2.标识符的命名规则标识符命名应以开始,由组成,长度。
3.常量(1)常量可分为、、、和。
(2)十进制整数常量以开头;八进制整数常量以开头,由组成;十六进制整数常量以开头,由组成;长整型数以结尾;无符号整型数以结尾;无符号长整型数以结尾。
(3)指数形式的实型常量要求在E或e前,且在E或e之后的指数部分。
(4)字符常量是以括起来的个字符。
转义序列以开始,后跟一个或一个的办法来表示一个字符。
若转义字符后是一个整型常量,它必须是和进制,且其对应的十进制取值范围必须在之间,该八进制数以开头,也可以不以开头,而进制数必须以开头。
‘\t’表示;‘\n’表示;‘\\’表示;(5)字符串常量是以括起来的个字符;字符串常量与字符常量的存放格式的区别是。
(6)标识符常量可用两种方法定义标识符常量:一种是使用,另一种是利用常量说明语句。
4.变量变量要求在前,在后;变量说明语句可以出现,同一变量只能作次定义性说明;首次引用变量时,变量必须有一个;对变量赋初值的三种方法:、和通过输入流cin对变量赋初值。
5.运算符与表达式(1)算术运算C++中的算术运算符有两个单目运算符(只有一个操作数的运算符):和;五个双目运算符(有两个操作数的运算符):+(加)、―(减)、*(乘)、/(除)和。
实验二_数据类型、运算符及表达式
实验二数据类型、运算符及表达式(4学时)【实验前做的操作】在本人所用计算机的逻辑盘(如D:盘或E:盘)上建立一个以本人姓名为名称的文件夹,然后在此父文件夹下建立子文件夹,名称为“实验二”,用来零时存放实验二需要上交的有关文件。
【实验目的】1、进一步熟悉C程序的集成开发环境 Visual C++。
2、掌握C语言数据类型的概念,熟悉如何定义整型、字符型、实型变量。
3、学会使用C语言的有关算术运算符,能正确地运用它们构成表达式。
4、掌握不同类型数据运算时数据类型的转换规则。
5、了解表达式语句,尤其是赋值语句。
6、熟练掌握利用VC++运行C程序的基本步骤,包括编辑、编译、连接和运行。
7、进一步了解C语言程序的基本框架及结构特点。
8、掌握简单C程序的查错方法。
9、尝试编写简单的C程序。
【实验内容】编程及调试实例2-1:求华氏温度100°F对应的摄氏温度。
计算公式:C=(5/9)(F-32),式中:C表示摄氏温度,F表示华氏温度。
源程序(有错误的程序)#include <stdoi.h>void main( ){intcelsius; fahr;fahr = 100;celsius = 5 * (fahr - 32) / 9;printf("fahr = d, celsius = %d\n", fahr, celsius);}运行结果(改正错误后程序的运行结果)f ahr = 100, celsius = 37(1)按照实验一中介绍的步骤,输入源程序并保存。
(2)实验一中我们使用菜单完成编译、连接和运行,现在介绍工具栏的使用方法。
在工具栏或菜单栏上单击鼠标右键,出现如图2.1所示的整个工具箱,在编译工具条前打上一个“√”,该工具条就显示出来了(如图2.2所示)。
图2.2中,第一个按钮“Compile ”或“Ctrl+F7”表示编译,第二个按钮“Build ”或“F7”表示构件,第四个按钮“Build Execute ”或“Ctrl+F5”表示运行。
实验二数据类型、变量与表达式
C语言程序设计实验指导与习题解答三、注意事项及小结(1)通过本次实验,大家应该初步掌握 Visual C++ 6.0 集成开发环境的使用,包括集成 开发环境的进入、设置、退出,源程序的打开、编辑、保存、编译、运行等内容,能够读懂系 统提示的信息。
这样在今后的学习中,就可以把主要精力放到程序的调试上,提高上机效率。
(2)初学 C 语言程序,容易出错的地方是:①C 语言程序中的标点符号都需是英文输入法下的,如分号、逗号、引号等。
②语句后漏加分号。
如图 219 中编译出错,因为语句 printf("我们一起学习写 C 语言程 序!\n")的最后未加分号。
③使用标识符时,混淆了变量中字母的大小写。
如初学者可能会认为 abc 与 Abc 是同一 个变量,实际 C 编译系统会把它们看作两个不同的变量。
④程序语句中括号不匹配。
C 程序中的括号(如{}和()),引号(如""和''),都必须匹配, 即成对出现,如:例 211 中的源程序,若变为:#include <stdio.h>int main(){printf("我们一起学习写C语言程序!\n";return 0;}则会出现如下错误提示:G:\C例题\例211.c(4) : error C2143: syntax error : missing ')' before ';'即提示在语句“printf("我们一起学习写 C 语言程序!\n";”中分号';'之前少了括号')'。
实验二 数据类型、变量与表达式一、实验目的与要求1.理解数据类型的基本概念。
2.熟练掌握变量的使用方法。
3.熟练掌握运算符与表达式的使用方法。
二、实验内容1.写出下列程序的运行结果,并上机验证。
实验2 数据类型与表达式
实验2 数据类型与表达式1.实验目的(1)掌握C++语言数据类型,熟悉如何定义变量,以及对它们赋值的方法。
(2)学会使用C++有关算术运算符,以及包含这些运算符的表达式。
(3)进一步熟悉C++程序的结构。
(4)进一步熟悉C++程序的编辑、编译、连接和运行的过程。
2.实验内容和步骤(1)输入并运行下面的程序:#include <iostream.h>void main(){int a,b;char c1,c2;cin>>a>>b;c1=++a;c2=b++;cout<<“c1=”<<c1<<“,”<<“c2=”<<c2<<end1;}在运行时先后分别输入① 97 97 ↙② 97 353 ↙③40 64 ↙④-212 -216 ↙分析所得到的结果,进一步掌握不同类型数据间赋值的规律。
(2)输入并运行下面的程序:#include <iostream.h>void main(){char c1=’C’,c2=’+’, c3=’+’;cout<<”I say:\””<<c1<<c2<<c3<<“'\’” ;cout<<”\t\t”<<”He says:\”C++ is very interesting!\””<<“\n” ;}在上机前先用人工分析程序,写出应得结果,上机后将两者对照分析。
(3)输入以下程序:#include <iostream.h>void main(){int i,j,m,n;i=8;j=10;m=++i+j++;n=(++i)+(++j)+m;cout<<i<<’\t’<<j<<'\t’<<m <<’\t’<<n<<end1;}①运行程序,注意 i,j,m,n各变量的值。
实验二数据类型
实验二数据类型、运算符和表达式一、实验目的(1)了解C 语言数据类型的意义,掌握基本数据类型变量的特点和定义方法。
(2)学会使用C 的算术运算符,以及包含这些运算符的算术表达式。
(3)掌握自加(++)和自减(--)运算符的使用。
(4)进一步熟悉C 程序的编辑、编译、连接和运行的过程。
二、实验要点基本数据类型包括整型、字符型、实型。
三、实验要求(1)上机前先阅读和编写以下要调试的程序。
(2)上机输入和调试程序并存在磁盘上。
(3)检查实验结果是否正确。
四、实验内容(以下内容在实验报告中的实验预习报告内容中完成)1. 调试程序,分析输出结果(1)输入并运行以下程序。
main(){ float a,b;a=123456.789e5;b=a+20;printf("a=%f,b=%f\n",a,b);}将第二行改为:double a,b;重新运行该程序,分析运行结果。
说明:由于实型变量的值是用有限的存储单元存储的,因此其有效数字的位数是有限的。
float型变量最多只能保证7 位有效数字,后面的数字是无意义的,不能准确表示该数。
(2)输入并运行以下程序。
main(){ char c1,c2;c1=97;c2=98;printf("%c %c\n",c1,c2);printf("%d %d\n",c1,c2);}①将第二行改为:int c1,c2;再运行。
②再将第三行改为:c1=300;c2=400;再运行,分析运行结果。
说明:字符型数据可作为整型数据处理,整型数据也可以作为字符型数据处理,但应注意字符数据只占一个字节,它只能存放0-255 范围的整数。
2.完成以下填空,并把程序调通,写出运行结果。
下面的程序计算由键盘输入的任意两个整数的平均值:main(){ int x,y ;;scanf(“%d,%d”,&x,&y);;printf("The average is :%f ",a);}3. 指出以下程序的错误并改正,上机把程序调通main();{ int a;a=5;printf(“a=%d, a)}4. 编写程序并上机运行要将“China”译成密码,译码规律是:用原来字母后面的第3 个字母代替原来的字母。
实验二 数据类型描述
实验二数据类型描述一、实验目的1、了解c语言的数据类型的种类。
1、熟悉c语言的变量与常量的定义与使用;符号常量的使用及合法标识符的命名原则。
3、掌握数据类型的定义与使用。
4、掌握相关的算术运算符及相应表达式5、熟悉不同数据类型间的相互转换。
二、实验内容1、预测结果并上机验证(1) main(){int a,b;a=b=3;printf(“a=%d,b=%d”,a,b);}预测的结果是:上机验证的结果是:若将以上程序进行改写,编辑如下:main(){int a,b;a=3;b=3.1;printf(“a=%d,b=%d”,a,b);}则程序运行的结果是:由此知,若赋值号左右数据类型不一致时,c语言将(2)现有程序如下:1 main()2 {3 int a=1,b=2;4 printf(“%d”,(a=a+b,b=b+a));5 }程序运行的结果是:若将以上程序第四行进行改写,编辑如下:printf(“%d”,a=a+b,b=b+a);则程序运行的结果是:对比以上两程序,结果不同的原因在于(3) 若有以下程序段:int c1=2,c2=4,c3;c3=1.0/c2*c1;则执行后,c3中的值是 ;若将程序段改为:int c1=1,c2=2,c3;c3=1/c2*c1;则执行后,c3中的值是分析c3所得结果,其中的关键在于2、填空题(1) main(){ int a=7, b=10;a=a+b; b=a-b; a=a-b;printf(“%d,%d\n”, a, b );}程序运行的功能是:(2) main(){ int a=0;a+=(a=8);printf("%d\n",a);}程序运行的结果是:(3) main(){int x,y,z;x=y=z=1;z+=y;x=z++;y=++x;printf(“x=%d,y=%d,z=%d”,x,y,z);}运行该程序的输出结果是3、改错题#include <math.h>#define STA 30main(){int a,b=3;A=3*PI*SIN(b);STA=3*STA;printf(“%d\n”,2a);printf(“%d”,STA);}正确的程序应改为:4、编程题(1)P35页1 将输入的摄氏温度转换为华氏温度和绝对温度输出。
实验2 数据类型
实验二数据类型、运算符与函数的应用一、实验目的1、熟悉VB的基本数据类型2、熟练掌握常量和变量的基本应用3、掌握运算符与表达式的灵活应用4、掌握函数的灵活应用二、实验内容1、课本60页5、6、7、8题先计算,然后上机验证。
(可在立即窗口中计算结果)2、验证实验一;3、验证实验二;三、实验指导1、将课本第5题改写成VB表达式,6、7、8题先计算出结果,然后上机验证。
2、验证实验一。
(1)在窗体的Click()事件中输入下列程序,观察运行结果。
a = "考试Visual Basic Programming"b = "计算机"c$ = b & "等级" & UCase( Mid( a, 10, 5 ))Print c(2)在窗体的Click()事件中输入下列程序,观察运行结果。
Dim x As Integerx% = 19x = 2.23Print x%; x(3)在窗体的Click()事件中输入下列程序,观察运行结果。
a = "HAPPY"b = "new year"c = LCase(a)d = UCase(b)Print c + d(4)在窗体的Click()事件中输入下列程序,观察运行结果x = 2: y = 4: z = 6x = y: y = z: z = xPrint x; y; z(5)在窗体的Click()事件中输入下列程序,观察运行结果a= "0123456789 "Print "V al(Left(a, 5) + Mid(a, 5, 3))= "; V al(Left(a, 5) + Mid(a, 5, 3))Print "Len(a & "函数应用")= "; Len(a & "函数应用")Print format (2543.634,”00,00.0”)2、验证实验二。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上机实验二数据类型、运算符与表达式
学号: 姓名:
一.实验目的
1.掌握C基本数据类型,学会如何定义一个整形、字符型和实型的常量和变量,以及对变量赋值;
2.掌握不同的类型数据之间赋值的规律;
3.掌握C算术运算符,以及包含这些运算符的表达式,特别是++和--运算符的使用;
4.掌握C算术运算符的基本概念、基本属性、运算规则。
5.掌握表达式的求值规则。
6.记录运行结果,回答问题。
二.实验内容
思考问题:数据类型、运算符、表达式等在C语句中充当什么成分?什么是标识符?整型、实型、字符型常量的书写法是怎样的?整型、实型、字符型变量怎样创建?字符串怎样表示?如何求表达式的值?混合表达式的求值规则是怎样的?
1.输入下列源程序,进行修改、编译、连接和运行。
程序:main ( )
{ char c1,c2;
c1=97; //1
c2=98; //2
printf("%c,%c\n",c1,c2);
printf("%d,%d\n",c1,c2);
}
运行结果是:
两行结果的不同是由什么引起的:
把注释1和注释2(即//1和//2)两行的赋值语句中,c1和c2分别赋值为400、500会产生什么结果,分析为什么。
2.输入下列源程序,进行修改、编译、连接和运行。
分析++运算符。
程序:main ( )
{ int i,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d \n", i, j, m, n);
}
运行结果是:
分析前++和后++的不同:
3.输入下列源程序,进行修改、编译、连接和运行。
分析++和--运算符。
程序:main ( )
{ int i,j;
i=8;
j=10;
printf("%d,%d \n", i, j);
printf("%d,%d \n", i++, j--);
printf("%d,%d \n", i, j);
printf("%d,%d \n", ++ i, -- j);
}
运行结果是:
想一想i++和++i,j--和--j之间的不同之处?
4.求下列表达式的值,并编写程序,上机进行验证。
① x + a%3*(int)(x+y)%2/4 设x=2.5, a=7, y=4.7
程序:
②(float)(a+b)/2+(int)x%(int)y 设a=7,b=3,x=3.5,y=2.5
程序:
5.求下列表达式的值,并编写程序,上机进行验证。
设a=12, n=5。
①a+=a ②a-=2
③a*=2+3 ④a/=a+a
程序:
6.输入并运行下段程序:
main()
{
int x,y;
printf("Enter x=,y=? ");
scanf("%d%d",&x,&y);
x+=y;
y=x-y;
x-=y ;
printf("x=%d, y= %d ",x,y,);
}
在运行时向程序变量输入任意两个整数。
查看输出结果,分析程序的功能。
7.输入并运行下段程序:
main()
{
int k, g;
k = 017; // k为八进制数
g = 111; // g 为十进制数
printf(“%d\t”, ++k); // 以十进制数输出k
printf(“%d\t”, -(k++)); // 以十进制数输出k
printf(“%d\t”, -k++); // 以十进制数输出k
printf(“%x\t“, g++); // 以16进制数输出g
printf(“%d\n“, -g--); // 以8进制数输出g
}
运行结果为:
如果将++分别改为--,结果为:
8.编一个程序,输入一个三位数据,在窗体打印输出其个位数,十位数和百数。
9.编写程序,从键盘输入梯形的上下底边长度和高,计算梯形的面积。
要求:输入不同的数值,查看程序运行结果是否正确。
例如,输入3,4,5 或输入4.5,5.5,6。
提示: scanf(“%f”, &a)表示读取一个实数到变量a中。