简单数据类型和流程控制实验报告

上传人:仙*** 文档编号:33279412 上传时间:2021-10-16 格式:DOC 页数:15 大小:64.02KB
收藏 版权申诉 举报 下载
简单数据类型和流程控制实验报告_第1页
第1页 / 共15页
简单数据类型和流程控制实验报告_第2页
第2页 / 共15页
简单数据类型和流程控制实验报告_第3页
第3页 / 共15页
资源描述:

《简单数据类型和流程控制实验报告》由会员分享,可在线阅读,更多相关《简单数据类型和流程控制实验报告(15页珍藏版)》请在装配图网上搜索。

1、简单数据类型和流程控制实验报告实验日期:2018-10-15姓名:方红羽学号:1813151051一、实验目的和要求(1)Java的基本数据类型;(2)java 的运算符的使用;(3)常用的控制语句的使用;二、实验内容 实验教程的实验2(p52)、习题3(p3) 给定一3*4的矩阵,求出其中值最大的元素的值,及所在的行列号。 计算,直到最后一项的绝对值小于10-4为止。 输入一行字符,分别统计求出其中英文字母、空格、数字和其他字符的个数并输出结果。三、实验所涉及的Java知识1. 声明不同数据类型的变量变量定义数据类型 变量列表变量赋值变量名=表达式在定义变量的同时进行变量赋值,称为变量的初始

2、化数据类型:数值型,字符型,布尔型。数值型又分为整数类型和浮点型整数类型:byte,int,short,long浮点类型:float,double字符型:char布尔型的两个值:true,false.布尔型与整型无转换。2. 了解变量的使用范围类的成员变量和在方法中声明的局部变量不同,成员变量的作用是整个类,而局部变量的作用域只在方法内部。如果局部变量的名和类的成员变量的名相同,则类的成员变量被隐藏,如果要将该类成员变量显露出来,则需在该变量前加上修饰符this.3. 使用关系运算符和逻辑运算符关系运算符的组成:,=,=,=,!=关系运算的结果是一个布尔类型的值,成立为true,不成立为fal

3、se逻辑运算符与关系运算符关系密切,运算结果都是布尔型的值,而逻辑运算符的操作数也是布尔型的值逻辑运算符的组成:!,&,|,&,|,!关系运算符的优先级比逻辑运算符高4. 使用表达式语句和复合语句(1).建立包含表达式语句程序System.out.print(),可以向界面输出语句,在语句中可以包含表达式,表达式用+号衔接,可以直接输出运算结果并且被转化为字符串。(2).建立包含复合语句程序Java中的程序段用花括号开始以反花括号结束作为独立的程序段,其中一个程序段中可以包含另一个程序段,但是程序段之间不可以交错。其中在内层程序段中定义的局部变量到了外层程序段就不能使用。5.使用选择语句(1)

4、.使用ifelse语句If(Boolean-expression1)Statements1;else if(Boolean-expression2)Statements2;elsestatementsN;(2).使用switch语句Switch(expression)Case value1:statements1;Break;Case valueN:statementsN;Break;default:defaultstatements;Switch后面括号中表达式的值必须是符合Byte,char,short,int类型的常量表达式。6.使用循环语句(1).for循环语句练习For(表达式1;表

5、达式2;表达式3)循环体语句(2).while循环语句练习While(条件表达式)循环体语句;变更循环条件;(3).dowhile循环语句练习Do循环体语句;变更循环条件;While(条件表达式);(4).多重循环练习各种循环语句都可以通过花括号互相嵌套,同一种循环也可以互相多重嵌套,组成多种循环,其中可以加入跳转语句实行循环过程中的流程转移。Break用于退出当前循环,如果处于多重循环内层,则只能退出当前循环。Continue用于退出本次循环回到循环开始处再次判断。7.实验中使用的语句(1)产生100以内随机数i=(int)(Math.random()*100); (2)将字符串转化为整型数

6、据(int)变量 = Integer.parseInt(字符串);(3)从控制台输入字符串并接收BufferedReader buf = new BufferedReader(new InputStreamReader(System.in);String mystr = buf.readLine();(4)将字符串拆分成字符存入一个新的字符型数组变量char ch=mystr.toCharArray();(5)将字符型转化为整型int b = chi四、实验源程序实验教程的实验2(p52)1.声明不同数据类型的变量public class melodylook /声明不同数据类型变量publi

7、c static void main(String args) / TODO Auto-generated method stubbyte b = 0x55;/十六进制short s = 0x55ff;/十六进制int i = 1000000;long l = 0xffffL;/十六进制char c = a;float f = 0.23F;double d = 0.7E-3;boolean B = true;String S = 这是字符串类型的数据;System.out.println(字节型变量b=+b);System.out.println(短整型变量s=+s);System.out.p

8、rintln(整型变量i=+i);System.out.println(长整型变量l=+l);System.out.println(字符型变量c=+c);System.out.println(浮点型变量f=+f);System.out.println(双精度变量d=+d);System.out.println(布尔型变量B=+B);System.out.println(字符串类变量S=+S);2.了解变量的使用范围/了解变量的使用范围public class melodycare static int i = 10; public static void main(String args) i

9、nt k = 10;System.out.println(i=+i);System.out.println(k=+k);System.out.println(i=+i);/System.out.println(k=+k);3.使用关系运算符和逻辑运算符public class melodyname /使用关系运算符和逻辑运算符public static void main(String args) int a =25,b =20,e = 3,f = 0;boolean d = ab;System.out.println(a = 25,b = 20,e = 3,f = 0);System.out

10、.println(因为关系表达式a5)System.out.println(因为e非0且a/e为8大于5,所以输出 a/e=+a/e);if(f!=0&a/f5)System.out.println(a/f=+a/f);elseSystem.out.println(因为f值为0,所以输出f=+f);4.使用表达式语句和复合语句(1).建立包含表达式语句程序public class melodyhandsome /建立包含表达式语句程序public static void main(String args) int k,i=3,j=4;k=20*8/4+i+j*i;System.out.prin

11、tln(表达式20*8/4+i+j*i=+k);(2).建立包含复合语句程序public class melodycool /声明不同类型数据变量public static void main(String args) / TODO Auto-generated method stubint k,i=3,j=4;k=i+j;System.out.println(在复合块外输出k=+k);float f;f=j+4.5F;i+;System.out.println(在复合块内输出f=+f);System.out.println(在复合块内输出k=+k);System.out.println(在复

12、合块外输出i=+i);5.使用选择语句(1).使用ifelse语句public class melodypunish /使用if/else语句判断某一年是否为闰年public static void main(String args) boolean leap;int year = 2005;/method1if(year%4=0&year%100!=0)|(year%400=0)System.out.println(year+是闰年);elseSystem.out.println(year+不是闰年);year = 2008;/method2if(year%4!=0)leap=false;e

13、lse if(year%100!=0)leap=true;else if(year%400!=0)leap=false;elseleap=true;if(leap=true)System.out.println(year+是闰年);elseSystem.out.println(year+不是闰年);year = 2050;/method3if(year%4=0) if(year%100=0) if(year%400=0)leap = true;elseleap=false;elseleap = false;elseleap = false;if(leap=true)System.out.pri

14、ntln(year+是闰年);elseSystem.out.println(year+不是闰年);(2).使用switch语句import java.io.*;public class melomv /使用switch语句在不同温度时开不同说明public static void main(String args) throws IOExceptionBufferedReader d = new BufferedReader(new InputStreamReader(System.in);int c = Integer.parseInt(d.readLine();switch(c10?1:c

15、25?2:c35?3:4) case 1:System.out.println( +c+C.有点冷要多穿衣服。);case 2:System.out.println( +c+C.正合适,出去玩吧);case 3:System.out.println( +c+C.有点热。);default:System.out.println( +c+C.太热了,开空调。);6.使用循环语句(1).for循环语句练习public class melobetter /按5度的增量打出一个摄氏温度到华氏温度的转换表public static void main(String args) int h,c;System

16、.out.println(摄氏温度 华氏温度);for(c=0;c=40;c+=5) h=c*9/5+32;System.out.println( +c+ +h);(2).while循环语句练习/运行程序从键盘输入抽大奖import java.io.IOException;public class melphone public static void main(String args) throws IOException / TODO Auto-generated method stubchar ch;System.out.println(按1/2/3数字键可得大奖);System.out

17、.println(按空格键回车后可退出循环操作);while(ch=(char)System.in.read()!= )System.in.skip(2);switch(ch) case 1:System.out.println(恭喜你得大奖,一辆汽车);break;case 2:System.out.println(不错哦,一台笔记本电脑);break;case 3:System.out.println(没有白来,你得到一台冰箱);break;default:System.out.println(真不幸,你没有奖品,下次再来吧);(3).dowhile循环语句练习public class m

18、elowork public static void main(String args) / 用循环语句计算1到100和的值int n=1,sum=0;do sum+=n+;while(n=100);System.out.println(1+2+3+100=+sum);(4).多重循环练习public class melofinal public static void main(String args) /用for循环输出乘法表int i,j,n=9;System.out.print( * |);for(i=1;i=n;i+) System.out.print( +i);System.out

19、.print(n-|);System.out.print(-);System.out.println();for(i=1;i=n;i+) System.out.print( +i+ |);for(j=1;j0) c=Integer.parseInt(args0); switch(c90?1:c80?2:c70?3:c60?4:5) case 1:System.out.println(你的成绩是+c+ A);break; case 2:System.out.println(你的成绩是+c+ B);break; case 3:System.out.println(你的成绩是+c+ C);break

20、; case 4:System.out.println(你的成绩是+c+ D);break; default:System.out.println(你的成绩是+c+ E);break; 2. public class melod public static void main(String args) /从十个数中找出最大值 int shuzu = new int10; int i,max,min; for(i=0;ishuzu.length;i+) shuzui=(int)(Math.random()*100);/产生随机数 System.out.print(随机数组); for(i=0;i

21、shuzu.length;i+) System.out.println( +shuzui); System.out.println(); max=shuzu0; for(i=0;imax) max=shuzui; System.out.println(十个随机数中最大数等于+max); 3. class jisuanstatic int n(int k)if (k=0)|(k=1)return 1;elsereturn k*n(k-1);public class meldody /使用递归方法计算n的阶乘public static void main(String args) jisuan t

22、 = new jisuan();int i = 10;if(args.length0)i = Integer.parseInt(args0);System.out.println(i+!的阶乘=+t.n(i);4. public class mel public static void main(String args) /列出乘法口诀表int i,j,n=9;for(i=1;i=n;i+)for(j=1;j0)i = Integer.parseInt(args0);int j;double s =0,sum = 0;for(j=0;j=i;j+)s=(double)j/f.n(j);sum

23、= sum + s;System.out.println(e的值是+sum);6.public class melodylike public static void main(String args) / 求100以内所有的奇数int i;for(i=0;i=100;i+) if (i%2!=0)System.out.print( +i);if (i%20=0)System.out.println();7.public class melodylikes public static void main(String args) / 用break退出二重循环int i;bh1:for(i=0;

24、i=10;i+) int j = i*10;while (j100)if(j=10)break;j=j+5;System.out.println(i+,+j+ );/观察i和j的值continue bh1;给定一3*4的矩阵,求出其中值最大的元素的值,及所在的行列号。public class shuzu public static void main(String args) /给定一3*4的矩阵,求出其中值最大的元素的值,及所在的行列号。int shuzu = new int43;System.out.println(随机产生的数组为);for(int i=0;ishuzu.length;i

25、+) for(int j=0;j3;j+) shuzuij=(int)(Math.random()*100);System.out.print(shuzuij+ );System.out.println();int max=shuzu00,count=0,column=0;for(int i=0;ishuzu.length;i+) for(int j=0;jmax) max=shuzuij;count=i+1;column=j+1;System.out.println(数组中最大的数是+max+在第+count+行,第+column+列);计算,直到最后一项的绝对值小于10-4为止。publi

26、c class fenshihe public static void main(String args) int i=1,n=1;double sum=0d;for(i=1;i=10000;i+) if(n%2!=0) sum=sum+1.0/i; else sum=sum-1.0/i; n+; System.out.println(1/1-1/2+1/3-1/4+=+sum);输入一行字符,分别统计求出其中英文字母、空格、数字和其他字符的个数并输出结果。import java.io.*;public class zifu public static void main(String arg

27、s) throws IOException /统计字符串中各种符号的个数System.out.println(用户输入的字符串为);BufferedReader buf = new BufferedReader(new InputStreamReader(System.in);String mystr = buf.readLine();char ch=mystr.toCharArray();int countchar=0,countnum=0,countspace=0,countother=0;for(int i =0;i=65&b=97&b=48&b=57) countnum=countnu

28、m+1;else if(b=32) countspace=countspace+1;else countother=countother+1;System.out.println(字母个数为:+countchar);System.out.println(数字个数为:+countnum);System.out.println(空格个数为:+countspace);System.out.println(其他字符个数为:+countother);五、实验结果分析1. 此部分程序运行的结果总是出错,因为在程序块里定义的变量是局部变量,在程序块外不能使用。 int k = 10;System.out.p

29、rintln(i=+i);System.out.println(k=+k);System.out.println(i=+i);/System.out.println(k=+k);2. 这是一个嵌套循环,不仅嵌套而且保证了格式的美观,在于使用print而不分行,于是内层的输出与外层衔接,直到内层循环一次结束,外层才使用println换行,于是排版相当美观。 for(i=1;i=n;i+) System.out.print( +i+ |);for(j=1;j=n;j+) System.out.print( +i*j); System.out.println();3. 第二道题运算的结果为0.693

30、0971830599583。这个题目多次编辑都得不到正确的结果,运算的结果都为1,后来将除数改为1.0,才得到正确的结果。原来 java中的除法的结果的算术类型取决于前一个被除数的类型,被除数是小数,得出的结果才能保留小数,被除数是整型,得出的结果依然是整型。即使定义被除数为浮点型,结果依然是整型。 4.第三道题运行结果是一个3*4的随机数组,和其中最大的数与行号和列号。首先定义一个二维数组,然后使用嵌套循环和math.random()方法产生一个随机数组,从控制台打印出来。然后定义三个变量存储最大值、行号与列号,使用嵌套循环将数组值依次与最大值比较,比最大值大就赋给最大值,获取行号与列号。最后输出。5.运算结果是由用户输入一串随机字符串,实现统计其中字母、空格、数字的个数的功能。使用Bufferedreader从控制台接受字符流。将接受的字符串转化为字符数组,定义四个变量,初始化,用来保存字母、空格、数字和其他字符的个数,定义for循环,将字符转化为ASC码,对其进行判断后,给相应变量的值加一,最后输出最终结果。

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!