做题做题做题 
/*二:某班有6名学生,
1)输入该班每个学生的成绩
2)计算并输出该班的总分和平均分
3)输出该班学生的最高分和最低分及其相应的下标
4)输入一个成绩,查看该班有没有该成绩,有则输出其下标,没有则输出无该分数
5)对该班学生成绩进行降序排序
6)思考:若该班又增加了一名新学生,需要将其成绩添加到数组中,并且要保持增加后的数组依然降序排列(提示:为保证能增加一个新数据,数组长度要定义为7)
*/
Scanner scan=new Scanner(System.in);//通过键盘输入
System.out.println("请输入班级人数");
int s=scan.nextInt();
int score[]=new int[s];
for (int i = 0; i < score.length; i++) {
System.out.println("请输入第"+(i+1)+"个学生的成绩");
score[i]=scan.nextInt();
}
int max=score[0];
int min=score[0];
int sum=0;// 总值
int maxx=0;//最大下标
int minn=0;//最小下标
for (int i = 0; i < score.length; i++) {
if(score[i]>max) {
max=score[i];
maxx=i;
}
if(score[i]<min) {
min=score[i];
minn=i;
}
sum+=score[i];
}
for (int i = 0; i < score.length; i++) {//降序
for (int j = 0; j < score.length-i-1; j++) {
if(score[j]<score[j+1]) {
int temp=score[j];
score[j]=score[j+1];
score[j+1]=temp;
}
}
}
double d=sum/score.length;//平均分
System.out.println("总分是"+sum);
System.out.println("平均分是"+d);
System.out.println("最高分是"+max+"下标是"+maxx);
System.out.println("最低分是"+min+"下标是"+minn);
System.out.println("-------");
System.out.println("请输入一个成绩进行查询");
int ss=scan.nextInt();
int aa=0;
for (int i = 0; i < score.length; i++) {
for (int j = 0; j < score.length-i-1; i++) {
aa++;
if(ss==score[i]) {
System.out.println("有,下标是"+i);
break;
}
}
}
System.out.println("降序排法");
for(int i:score) {
System.out.println(i);
}
System.out.println("---------");
System.out.println("请输入一个插班生的成绩");
int sss=scan.nextInt();
int scoree[]=new int[s+1];//数组扩容
int dd=0;//定义一个下标
for (int i = 0; i < score.length; i++) {
if(score[i]<sss) {
dd=i;
break;
}
}
for (int i = 0; i < dd; i++) {
scoree[i]=score[i];
}
for (int i = dd; i < scoree.length-1; i++) {
scoree[i+1]=score[i];
}
scoree[dd]=sss;
System.out.println("降序排法");
for (int i:scoree) {
System.out.println(i);
}
//小插曲
Scanner scan=new Scanner(System.in);//通过键盘输入
int score[]=new int[] {35,50,70,60,88,95};
System.out.println("请输入一个成绩进行查询");
int ss=scan.nextInt();
int a=0;
boolean b=false;//核心
int c=0;
for (int i = 0; i < score.length; i++) {
a++;
if(ss==score[i]) {
b=true;//判断为真 找到了
c+=i;
break;
}
}
if(b) {
System.out.println("有,下标是"+c);
}else {
System.out.println("没有该成绩");
}
这个就是对一维数组的一个补充吧
评论 (0)