Java编程练习

给定一串字符串,将其转为int类型,并将数从小到大排列

 String s="485192673";
     int a=s.length();
     int t[]=new int[a];
     int z;
     for(int i=0;i<a;i++) {
    	 t[i]=Integer.parseInt(s.substring(i,i+1));
     }
     for(int j=0;j<6;j++) {
    	 for(int c=0;c<a-1;c++) {
    		 if(t[c]>t[c+1]) {
    			 z=t[c];//利用中间变量z,将大小交换将大的值保存在中间变量
    			 t[c]=t[c+1];//将值小的数放在值大的数的空间
    			 t[c+1]=z;//将值大的数放回给值小的数的空间
    		 }
    	 }
     }
     for(int x:t){
    	 System.out.println(x);
     }

三目运算符的应用

三目运算符()?表达式1:表达式2;()内为true返回表达式1 false返回表达式2

判断是否及格:

                int sorce=68;
		String mark=(sorce>60)?"及格":"不及格";
		System.out.println(mark);

计算1到100之内不能被三整除的数之和

                int sum=0;   //定义变量保存不能被三整除的数的和
		for(int i=0;i<=100;i++) {
			if(i%3!=0) {   //求模取余判断
				sum+=i;
			}
		}System.out.println("1到100不能被三整除的数的和为"+sum);

用continue计算1到10之内的偶数和

                int sum=0;
		for(int i=1;i<=10;i++) {
			if(i%2!=0) {       //判断是否位偶数,不是就跳过进行下次循环
				continue;
			}sum+=i;
		}System.out.println(sum);

判断一个数(小于5位)的位数

                Scanner input=new Scanner(System.in);
		int s=input.nextInt();
		int count=0;
		if(s>9999 || s<0) {
			System.out.println("重新输入");
		}else {
			while(s>0) {
				s=s/10;   //s为int类型值,当产生小数时自动截取整数部分
				count++;
        }
		}
		System.out.println(count);

输入一个成绩,实现对其加分,打印每次加分的信息直到及格

//为输入成绩加分,直到分数大于等于60为止,输出加分前和加分后的成绩,并统计加分次数
		System.out.println("请输入初始分数:");
		Scanner input=new Scanner(System.in);
		int sorce=input.nextInt();
		int count=0;
		System.out.println("加分前成绩为"+sorce);
		while(sorce<60) {
			count++;
			sorce++;
			System.out.println("加分"+count+"次;"+"加分后成绩为"+sorce);//写在括号里面打印每一次加分信息,写在外面打印总的信息
		}

输入三个班级每四个学生的成绩,并打印每个班级这四名学生的平均成绩,统计哪个班级的成绩最好

                int classNum=3;   //班级数量
		int stuNum=4;     //学生数量
		double sum=0;     //成绩总和
		double avg=0;     //成绩平均分
		int s[]=new int[3];//数组保存平均成绩
		Scanner input=new Scanner(System.in);
		for(int i=1;i<=classNum;i++) { //外层循环控制班级数量
			System.out.println("请输入第"+i+"个班级的成绩");
		    for(int j=1;j<=stuNum;j++) {  //内层循环控制每个班级学员的数量
			    System.out.println("请输入"+i+"班第"+j+"个学生的成绩");
			    int sorce=input.nextInt();
			    sum=sum+sorce;
		    }
		    avg=sum/stuNum;//计算平均分
		    s[i-1]=(int)avg; //将平均成绩保存到数组里
		    System.out.println("第"+i+"个班级的平均分为:"+avg);
		    sum=0;   //每次计算完一个班的平均成绩要清零
		}for(int t=0;t<s.length;t++) {   //将平均成绩由大到小保存在一个数组中
			int y;
			for(int z=0;z<s.length-1;z++) {
				if(s[z]<s[z+1]) {
					y=s[z];       //利用中间变量z,将大小交换将小的值保存在中间变量
					s[z]=s[z+1];  //将值大的数放在值小的数的空间
					s[z+1]=y;     //将值小的数放回给值大的数的空间
				}
			}
		}for(int x:s) {           //for循环增强版输出数组的所有数据
			System.out.println(x);
		}


猜你喜欢

转载自blog.csdn.net/madridcrls7/article/details/80020492