13、5个数求最值
设计一个从5个整数中取最小数和最大数的程序
- 输入
输入只有一组测试数据,为五个不大于1万的正整数 - 输出
输出两个数,第一个为这五个数中的最小值,第二个为这五个数中的最大值,两个数字以空格格开。
1、思路
使用选择排序即可,遍历一趟选出最小值,再遍历一趟选出最大值。
2、集体实现
Java实现
public static int max(int[] num) {
int max=num[0];
for (int i = 0; i < num.length; i++) {
if(max<num[i])
max=num[i];
}
return max;
}
public static int min(int[] num) {
int min=num[0];
for (int i = 0; i < num.length; i++) {
if(min>num[i])
min=num[i];
}
return min;
}
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int[] num=new int[5];
for (int i = 0; i < 5; i++) {
num[i]=scanner.nextInt();
}
System.out.println(min(num));
System.out.println(max(num));
}
结果:
14、ASCI码排序
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
- 输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。 - 输出
对于每组输入数据,输出一行,字符中间用一个空格分开。
1、思路
根据输入的第一行的数来循环输入每行字符串,把每行字符串转换为字符数组,然后对字符数组进行排序,我选择了冒泡排序,然后把字符数组的每个字符按要求输出即可。
2、具体实现
java实现:
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int n=scanner.nextInt();
char temp=' ';
for(int i=0;i<n;i++) {
char[] ch=scanner.next().toCharArray();
for (int j = 0; j < ch.length; j++) {
for (int k = 0; k < ch.length-j-1; k++) {
if(ch[k]>ch[k+1]) {
temp=ch[k];
ch[k]=ch[k+1];
ch[k+1]=temp;
}
}
}
System.out.println(ch[0]+" "+ch[1]+" "+ch[2]);
}
}
结果: