• 6-10题


    J1-6《智能统计系统》关键算法

    (1)任务描述 生活中在处理各个问题的时候总是会离不开统计,例如统计学生的个数,统计火车买票 人数,统计今天是该年的第几天等,所以某团队开发出一套统计系统,用来进行各类统计。
    任务一:实现统计今天是该月的有多少天关键算法并绘制流程图(30 分) 从键盘上输入一个年份值和一个月份值,输出该月的天数。(说明:一年有 12 个月,大 月的天数是 31,小月的天数是 30。2 月的天数比较特殊,遇到闰年是 29 天,否则为 28 天。 例如,输入 2011、3,则输出 31 天。) 注意:使用分支结构语句实现。

    package ex6;
    
    import java.util.Scanner;
    
    public class ex6_1 {
    
    	public static void main(String[] args) {
    		 Scanner sc=new Scanner(System.in);
             System.out.print("请输入年份:");
             int year=sc.nextInt();
             System.out.print("请输入月份:");
             int month=sc.nextInt();
             int d=0;
             switch (month) {
             case 1:
             case 3:
             case 5:
             case 7:
             case 8:
             case 10:
             case 12: {
                 d = 31;
                 break;
             }
             case 4:
             case 6:
             case 9:
             case 11: {
                 d = 30;
                 break;
             }
             case 2: {
                 /**
                  * 闰年:①:非整百年数除以4,无余为闰,有余为平;②整百年数除以400,无余为闰有余平
                  * 二月:平年28天、闰年29天
                  */
                 if ((year % 100 !=0 &&year % 4 == 0) || (year % 100 == 0 && year%400==0)) {
                     d = 29;
                 } else {
                     d = 28;
                 }
             }
             default:
                 break;
             }
             System.out.println(d);
    
    
    	}
    
    
    }

    任务二:实现统计纸片对折关键算法并绘制流程图(30 分) 假设一张足够大的纸,纸张的厚度为 0.5 毫米。请问对折多少次以后,可以达到珠穆朗 玛峰的高度(最新数据:8844.43 米)。请编写程序输出对折 次数。 注意:使用循环结构语句实现,直接输出结果不计分。

    package ex6;
    
    public class ex6_2 {
    
    	public static void main(String[] args) {
    		double h = 8844.43 * 1000;//珠穆朗玛峰的高度为8844.43米
    		double p = 0.5;//一张纸一层的厚度为0.5毫米
    		int sum = 0;
    		for(int a = 0;a <8844;a++){
    		if(p < h){
    		p *= 2;//每折叠一次增加一倍高度
    		sum += 1;//折叠一次
    		}
    		if(p >= h) break;//如果纸的高度等于或高于珠穆朗玛峰的高度就退出循环
    		}
    		System.out.println(sum);
    
    	}
    
    }

    任务三:实现统计同构数关键算法并绘制流程图(30 分) 编写程序输出 2~99 之间的同构数。同构数是指这个数为该数平方的尾数,例如 5 的平 方为 25,6 的平方为 36,25 的平方为 625,则 5、6、25 都为同构数。 注意:调用带有一个输入参数的函数(或方法)实现,此函数(或方法)用于判断某个整数 是否为同构数,输入参数为一个整型参数,返回值为布尔型(是否为同构数)(2)作品提交要求见本模块附录 1 (3)实施条件要求见本模块附录 2 (4)评价标准见本模块附录 3

    package ex6;
    
    public class ex6_3 {
    
    	public static void main(String[] args) {
    		for(int i =2; i<=99; i++)
    		{
    			if(IsTG(i))	
    				System.out.print(i+"	");
    		}
    	}
    	static boolean IsTG(int x)
    	{
    		boolean b=false;
    		if(x>=1 && x<=9)	//i是1位数时
    			{
    			if(x== (x*x)%10)   b=true;
    			}				
    		else if(x>=10 && x<=99)//i是2位数时
    			{
    			if(x == (x*x)%100)   b=true;
    			}				
    		return b;
    	}
    
    
    }

    J1-7《儿童智力游戏》关键算法

    (1)任务描述 A 公司是专门的儿童网络游戏公司,现在公司正在开发几款智力游戏,其中需要设计几 个算法模型。

    任务一:实现堆积木游戏功能关键算法并绘制流程图(30 分) 堆积木是小孩子最爱玩的游戏,但是因为小孩子的好奇心(比如误食积木等)导致家长 们越不愿意让孩子去玩积木,为了解决这个问题 TX 公司开发了一套 VR 积木游戏,你要做的 是将用户堆好的积木在屏幕中显示出来。

    *******

    *****

    ***

    *

    注意:使用循环结构语句实现。

    任务二:实现抓娃娃游戏功能关键算法并绘制流程图(30 分) 请你在娃娃机里放十个娃娃,每个娃娃对应一个数字,该数字表示娃娃的大小。要求通 过计算能输出最大的娃娃对应的数字,你可以这样做: ① 定义一个大小为 10 的整形数组 a; ② 从键盘输入 10 个整数,放置到数组 a 中; ③ 输出数组 a 中的最大值。 注意:使用数组、循环结构语句实现。

    任务三:实现算数游戏功能关键算法并绘制流程图(30 分) 游戏主要是这样的,计算正整数 n 每个数位上的数之积,例如 24,它的每个数位上的 数字之积为 2 * 4 = 8,现在要求你为 A 公司编写一个计算函数(或方法)fun,将结果放到 c 中,并显示输出。作为参考答案。 (2)作品提交要求见本模块附录 1 (3)实施条件要求见本模块附录 2 (4)评价标准见本模块附录 3 8.试题编号:

    package jncc;
    
    import java.util.Scanner;
    
    public class Test7 {
    task1:实现堆积木游戏功能关键算法并绘制流程图
    *******
    *****
    ***
    *
    	public static void main(String[] args) {
    		for(int i=1;i<=4;i++) {
    			
    			for(int j=1;j<=2*i-1;j++)
    				System.out.print("*");
    			System.out.println();
    		}
    		
    
    	}
    task2:请你在娃娃机里放十个娃娃,每个娃娃对应一个数字,该数字表示娃娃的大小。要求通过计算能输出最大的娃娃对应的数字,你可以这样做: 1 定义一个大小为 10 的整形数组 a; 2 从键盘输入 10 个整数,放置到数组 a 中; 3 输出数组 a 中的最大值。 注意:使用数组、循环结构语句实现 public static void main(String[] args) { int[] a=new int[10]; int max=0; Scanner sc=new Scanner(System.in); System.out.println("请输入10个数字:"); for(int i=0;i<a.length;i++) a[i]=sc.nextInt(); max=a[0]; for(int i=0;i<a.length;i++) if(a[i]>max) max=a[i]; System.out.print("最大的娃娃对应的数字为:"+max); }
    任务三:实现算数游戏功能关键算法并绘制流程图(30 分) 游戏主要是这样的,计算正整数 n 每个数位上的数之积,例如 24,它的每个数位上的 数字之积为 2 * 4 = 8, 现在要求你为 A 公司编写一个计算函数(或方法)fun,将结果放到 c 中,并显示输出。作为参考答案。 public static int fun(int n) { int result=1; while(n>0) { result*=n%10; n=n/10; } return result; } public static void main(String[] args) { System.out.print("请输入一个正整数:"); Scanner sc=new Scanner(System.in); int number=sc.nextInt(); int s=fun(number); System.out.println("该数字的个数位的乘积为:"+s); } }

      

    J1-8《商品销售系统》关键算法

    (1)任务描述 随着网络和信息化的发展,电子商务越来越受到人们的欢迎。商品销售系统是电子商务 中非常重要的业务支撑系统,它能够为企业和商家提供充足的信息和快捷的查询手段,能够 让企业和商家了解自己的经营业绩、销售数据。现在需要完成以下任务来实现商品销售系统。
    任务一:实现打折功能关键算法并绘制流程图(30 分) 编写程序计算购买图书的总金额:用户输入图书的定价和购买图书的数量,并分别保存 到一个 float 和一个 int 类型的变量中,然后根据用户输入的定价和购买图书的数量,计算 购书的总金额并输出。其中,图书销售策略为:正常情况下按 9 折出售,购书数量超过 10 本打 8.5 折,超过 100 本打 8 折。 要求:使用分支结构实现上述程序功能。

    任务二:实现查询功能关键算法并绘制流程图(30 分)
    所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121 是一个回文数。编 写程序,求出 100—200 的范围内所有回文数的和。 要求:使用循环结构语句实现,直接输出结果不计分。

    任务三:实现图形界面关键算法并绘制流程图(30 分)

    分析下列数据的规律,编写程序完成如下所示的输出。

    1

    1 1

    1 2 1

    1 3 3 1

    1 4 6 4 1

    1 5 10 10 5 1 要求:使用循环结构语句实现。 (2)作品提交要求见本模块附录 1 (3)实施条件要求见本模块附录 2 (4)评价标准见本模块附录 3 9.试题编号:

    package jncc;
    
    import java.util.Scanner;
    
    public class Test8 {
    	任务一:实现打折功能关键算法并绘制流程图(30 分)
    	编写程序计算购买图书的总金额:用户输入图书的定价和购买图书的数量,并分别保存 到一个 float 和一个 int 类型的变量中,然后根据用户输入的定价和购买图书的数量,
    	计算购书的总金额并输出。其中,图书销售策略为:正常情况下按 9 折出售,购书数量超过 10 本打 8.5 折,超过 100 本打 8 折。
    	要求:使用分支结构实现上述程序功能。
    	public static void main(String[] args) {
    		float price;
    		int count;
    		float discount,money;
    		Scanner sc=new Scanner(System.in);
    		System.out.print("请输入图书的定价:");
    		price=sc.nextFloat();
    		System.out.print("请输入图书的数量:");
    		count=sc.nextInt();
    		if(count>=100)
    			discount=0.8f;
    		else if(count>=10)
    			discount=0.85f;
    		else
    			discount=0.9f;
    		money=price*count*discount;
    		System.out.println("您本次购书的总金额为:"+money);
    	}
    	
    	任务二:实现查询功能关键算法并绘制流程图(30 分)
    	所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121 是一个回文数。编写程序,求出 100—200 的范围内所有回文数的和。
    	要求:使用循环结构语句实现,直接输出结果不计分。
    	
    	public static void main(String[] args) {
    		String str=" ";
    		for(int i=100;i<=200;i++)
    		{
    			if(i%10==i/100)
    				System.out .print(i+" ");
    		}
    						
    	}
    	任务三:实现图形界面关键算法并绘制流程图(30 分) 分析下列数据的规律,编写程序完成如下所示的输出。
    	1
    	11
    	121 1331 14641
    	1 5 10 10 5 1
    	要求:使用循环结构语句实现。 
    	public static void main(String[] args) {
    
    		int[][] a=new int[6][6];
    		for(int i=0;i<6;i++){
    			a[i][0]=1;
    			a[i][i]=1;
    		}
    		for(int i=2;i<6;i++)
    			for(int j=1;j<i;j++)
    				a[i][j]=a[i-1][j-1]+a[i-1][j];
    		
    		for(int i=0;i<6;i++)
    			for(int j=0;j<i+1;j++)
    			{
    				System.out.print(a[i][j]+" ");
    				if(j==i)
    					System.out.println();
    			}
    		
    	}
    
    
    }
    

    J1-9《幼师培训系统》关键算法

    (1)任务描述 幼儿教师是教师队伍中不可忽略的重要力量。她们主要以女性教育者为主,负责教育学 龄前儿童也就是幼儿。幼儿教师主要对幼儿进行启蒙教育帮助他们获得有益的学习经验,促 进其身心全面和谐发展。幼儿教师在教育过程中的角色决不仅仅是知识的传递者,而且是幼 儿学习活动的支持者、合作者、引导者。本系统用于培训幼师们与小朋友之间的游戏交互能 力,在游戏中可以帮助小朋友们的成长。为实现该系统,需要完成以下任务。

    任务一:实现整除判断游戏功能关键算法并绘制流程图(30 分) 整除判断游戏能显著提高小朋友的逻辑思维能力,问题要求如下: • 能同时被 3、5、7 整除 • 能同时被 3、5 整除 • 能同时被 3、7 整除 • 能同时被 5、7 整除 • 只能被 3、5、7 中的一个整除 • 不能被 3、5、7 任一个整除 输入一个整数,输出满足对应条件的结果。 要求:使用分支结构语句实现。

    任务二:实现冒泡游戏功能关键算法并绘制流程图(30 分) 原始数组:a[]={1,9,3,7,4,2,5,0,6,8} 排序后: a[]={0,1,2,3,4,5,6,7,8,9} 输出排序后的数组,每个数字之间空一个空格; 要求:综合使用分支、循环结构语句实现,直接输出结果不计分。

    任务三:实现数一数游戏关键算法并绘制流程图(30 分) 分别输入两个字符串 s1 和 s2 ,请问 s1 中包含多少个 s2,如果没有则输出 0。 要求:使用循环。 (2)作品提交要求见本模块附录 1 (3)实施条件要求见本模块附录 2 (4)评价标准见本模块附录 3

    package jncc;
    
    import java.util.Scanner;
    
    public class Test9 {
    	任务一:实现整除判断游戏功能关键算法并绘制流程图(30 分) 整除判断游戏能显著提高小朋友的逻辑思维能力,问题要求如下:
    		• 能同时被 3、5、7 整除
    		• 能同时被 3、5 整除
    		• 能同时被 3、7 整除
    		• 能同时被 5、7 整除
    		• 只能被 3、5、7 中的一个整除
    		• 不能被 3、5、7 任一个整除 输入一个整数,输出满足对应条件的结果。
    		要求:使用分支结构语句实现。 
    	public static void main(String[] args) {
    	
    		Scanner sc=new Scanner(System.in);
    		System.out.print("输入一个整数:");
    		int number=sc.nextInt();
    		if(number%3==0&&number%5==0&&number%7==0)
    			System.out.println("该整数能同时被 3、5、7 整除");
    		else if(number%3==0&&number%5==0)
    			System.out.println("该整数能同时被 3、5整除");
    		else if(number%3==0&&number%7==0)
    			System.out.println("该整数能同时被 3、7整除");
    		else if(number%5==0&&number%7==0)
    			System.out.println("该整数能同时被 5、7整除");
    		else if(number%3==0||number%5==0||number%7==0)
    			System.out.println("只能被 3、5、7 中的一个整除");
    		else
    			System.out.println("不能被 3、5、7 中的任一个整除");
    
    	}
    	任务二:实现冒泡游戏功能关键算法并绘制流程图(30 分) 原始数组:a[]={1,9,3,7,4,2,5,0,6,8}
    		排序后: a[]={0,1,2,3,4,5,6,7,8,9} 输出排序后的数组,每个数字之间空一个空格; 
    		要求:综合使用分支、循环结构语句实现,直接输出结果不计分。
    	public static void main(String[] args) {
    		int a[]={1,9,3,7,4,2,5,0,6,8};
    		System.out.print("排序前a[]=");
    		for(int n:a)
    			System.out.print(n+" ");
    		for(int i=0;i<a.length;i++)
    			for(int j=i+1;j<a.length;j++)
    				if(a[j]<a[i]) {
    					int t=a[j];
    					a[j]=a[i];
    					a[i]=t;
    				}
    		System.out.println();
    		System.out.print("排序后a[]=");
    		for(int n:a)
    			System.out.print(n+" ");
    	}
    	任务三:实现数一数游戏关键算法并绘制流程图(30 分)
    		分别输入两个字符串 s1 和 s2 ,请问 s1 中包含多少个 s2,如果没有则输出 0。 要求:使用循环。
    	public static void main(String[] ags) {
    		int index=0,count=0;
    		Scanner sc=new Scanner(System.in);
    		System.out.print("请输入s1:");
    		String s1=sc.nextLine();
    		System.out.print("请输入s2:");
    		String s2=sc.nextLine();
    		index=s1.indexOf(s2);
    		while((index=s1.indexOf(s2))!=-1) {
    			s1=s1.substring(index+s2.length());
    			count++;
    		}
    		if(count==0)
    			System.out.println("s1中包含0个s2");
    		else
    			System.out.println("s1中包含"+count+"个s2");
    		
    	}
    
    }
    

      

    J1-10《字符处理系统》关键算法

    (1)任务描述 在印刷生产中,要求对打印或印刷的数字字符进行实时识别校验,如卡号和密码,然后 把打印或印刷错误的字符串剔除。目前检查字符串的主要方法是通过人工目视检查,存在效 率低、准确度不高的问题。因此开发一套字符处理系统就显得尤为重要,目前实现字符处理 系统还需要完成如下任务。

    任务一:实现求平均值功能关键算法并绘制流程图(30 分) 有一个长度为 n(n=100)的数列,该数列定义为从 2 开始的递增有序偶数 ({2,4,6,...,200}),现在要求你按照顺序每 m 个数求出一个平均值,如果最后不足 m 个, 则以实际数量求平均值。编程输出该平均值序列。 要求: m 为大于等于 3 的整数。

    任务二:实现最小值排头功能关键算法并绘制流程图(30 分) 输入 20 个不同的整数,找出其中最小的数,将它与第 1 个输入的数交换位置之后输出 这些数。 要求:用数组解决任务,在输入整数时各整数之间用空隔分隔。

    任务三:实现统计字符数量功能关键算法并绘制流程图(30 分) 对于给定的一个字符串,统计其中数字字符出现的次数。 要求:字符串只能由数字和字符组成。 (2)作品提交要求见本模块附录 1 (3)实施条件要求见本模块附录 2 (4)评价标准见本模块附录 3

    package jncc;
    
    import java.util.Scanner;
    
    public class Test10 {
    	任务一:实现求平均值功能关键算法并绘制流程图(30 分)
    	有一个长度为 n(n=100)的数列,该数列定义为从 2 开始的递增有序偶数 ({2,4,6,...,200}),现在要求你按照顺序每 m 个数求出一个平均值,
    	如果最后不足 m 个, 则以实际数量求平均值。编程输出该平均值序列。
    	要求: m 为大于等于 3 的整数。
    	public static void main(String[] args) {
    		int[] a=new int[100];
    		int t=0,k=0;
    		Scanner sc=new Scanner(System.in);	
    		System.out.print("请输入n:");
    		int n=sc.nextInt();
    		System.out.print("请输入m(m>=3):");
    		int m=sc.nextInt();
    		for(int i=0;i<n;i++)
    			a[i]=2*(i+1);
    		System.out.print("该数列的平均值序列为:");
    		for(int i=0;i<n/m;i++)
    		{
    			for(int j=0;j<m;j++)
    				t=t+a[i*m+j];
    			System.out.print(t/m+" ");
    		}
    		if(n%m!=0)
    			for(int i=0;i<n%m;i++)
    				k=k+a[n-n%m+i];
    		System.out.println(k/m+" "); 
    		}
    
    	任务二:实现最小值排头功能关键算法并绘制流程图(30 分)
    	输入 20 个不同的整数,找出其中最小的数,将它与第 1 个输入的数交换位置之后输出这些数。 
    	要求:用数组解决任务,在输入整数时各整数之间用空隔分隔。 
    	public static void main(String[] args) {
    		int min=0,k=0,t=0;
    		int[] arr=new int[20];
    		Scanner sc=new Scanner(System.in);
    		System.out.println("请输入20个整数(用空格分隔):");
    		for(int i=0;i<arr.length;i++)
    			arr[i]=sc.nextInt();
    		min=arr[0];
    		for(int i=0;i<arr.length;i++)
    			if(arr[i]<min){
    				min=arr[i];
    				k=i;
    			}
    		if(k!=0)
    		{
    			t=arr[k];
    			arr[k]=arr[0];
    			arr[0]=t;
    		}
    		for(int a:arr)
    			System.out.print(a+" ");	
    	}
    	
    	任务三:实现统计字符数量功能关键算法并绘制流程图(30 分) 对于给定的一个字符串,统计其中数字字符出现的次数。
    	要求:字符串只能由数字和字符组成。
    	public static void main(String[] args) {
    		int count=0;
    		Scanner sc=new Scanner(System.in);
    		System.out.print("请输入一个字符串(由数字和字符组成):");
    		String str=sc.nextLine();
    		if(!str.matches("[0-9A-Za-z]*"))
    			System.out.println("字符串只能由数字和字母组成");
    		else{
    			char[] chs=str.toCharArray();
    			for(int i=0;i<str.length();i++){
    				if(chs[i]>='0' &&chs[i]<='9')
    					count++;			
    			}
    			System.out.print("该行字符中的数字个数为:"+count);
    		}
    	}
    }
    
  • 相关阅读:
    浅谈T-SQL中的特殊联结
    浅谈T-SQL中的联接查询
    对AccessViolationException的一些总结
    浅谈JavaScript中的定时器
    浅谈跨域
    浅谈JavaScript中的Ajax
    浅谈JavaScript中的能力检测
    c# webConfig中的session超时详细设置
    c# session总结
    重启sql server服务两种方式
  • 原文地址:https://www.cnblogs.com/xiaoqianbook/p/9625871.html
Copyright © 2020-2023  润新知