我是初学者,想编个成绩转化为等级的程序.编译有错误:"AssignGrade.java": '.class' expected at line 31, column 36
"AssignGrade.java": ')' expected at line 31, column 48
"AssignGrade.java": '.class' expected at line 32, column 32
"AssignGrade.java": ')' expected at line 32, column 39
下面是我写的代码:
import java.io.*;
public class AssignGrade
{
public static void main(String args[])
{
int studentnum, bestnum;
int score[];
System.out.println("please input the number of students:");
MyInput num = new MyInput();
studentnum = num.readInt();
score = new int[studentnum];
System.out.println("please input the grade:");
for (int i = 0; i <= studentnum; i++)//输入成绩
{
score[i] = num.readInt(); bestnum = order(score[],studentnum);
grade_class(score[], best);
}
}
public static int order(int a[],int n)//返回最大值
{
int i,best = a[0];
for( i = 1; i<n; i++)
{
if(best<=a[i])
best = a[i];
}
return best;
}
public static void grade_class(int a[] , int best)//判断等级
{
char garde;
if(score>best)
{
if(score >= (best-10))
{
grade = A;
System.out.println(grade);
}
else if(score >= (best-20))
{
grade = B;
System.out.println(grade);
}
else if(score >= (best-30))
{
grade = C;
System.out.println(grade);
}
else if(score >= (best-40))
{
grade = D;
System.out.println(grade);
}
else
{
grade = E;
System.out.println(grade);
}
}
}
}
class MyInput//输入字符串和整数
{
public String readString()//输入字符串
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String string = new String();
try
{
string = br.readLine();
}
catch(IOException e)
{
System.out.println(e);
}
return string;
}
public int readInt()//输入整数
{
int inputInt= Integer.parseInt(readString());
return inputInt;
}
}
"AssignGrade.java": ')' expected at line 31, column 48
"AssignGrade.java": '.class' expected at line 32, column 32
"AssignGrade.java": ')' expected at line 32, column 39
下面是我写的代码:
import java.io.*;
public class AssignGrade
{
public static void main(String args[])
{
int studentnum, bestnum;
int score[];
System.out.println("please input the number of students:");
MyInput num = new MyInput();
studentnum = num.readInt();
score = new int[studentnum];
System.out.println("please input the grade:");
for (int i = 0; i <= studentnum; i++)//输入成绩
{
score[i] = num.readInt(); bestnum = order(score[],studentnum);
grade_class(score[], best);
}
}
public static int order(int a[],int n)//返回最大值
{
int i,best = a[0];
for( i = 1; i<n; i++)
{
if(best<=a[i])
best = a[i];
}
return best;
}
public static void grade_class(int a[] , int best)//判断等级
{
char garde;
if(score>best)
{
if(score >= (best-10))
{
grade = A;
System.out.println(grade);
}
else if(score >= (best-20))
{
grade = B;
System.out.println(grade);
}
else if(score >= (best-30))
{
grade = C;
System.out.println(grade);
}
else if(score >= (best-40))
{
grade = D;
System.out.println(grade);
}
else
{
grade = E;
System.out.println(grade);
}
}
}
}
class MyInput//输入字符串和整数
{
public String readString()//输入字符串
{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String string = new String();
try
{
string = br.readLine();
}
catch(IOException e)
{
System.out.println(e);
}
return string;
}
public int readInt()//输入整数
{
int inputInt= Integer.parseInt(readString());
return inputInt;
}
}
解决方案 »
- 求助servlet怎么配置,更具体点是web-xml怎么配置
- The constructor StringBuffer(String) is undefined
- 请教一下用正则式去字符串的问题
- 求助javase 2d问题。如何实现字体,线条等发光效果。烦请各位给个例子谢谢。
- Java声音控制控件
- 大家现在公司用springMVC的多吗?顺便散分!
- 问3个你可能会认为是死脑筋的问题,但是这就是知识点!!
- 字符串分段处理的问题,高手进来拿分~
- 怎么在java程序中执行系统命令或其他可执行程序(像批处理一样)?
- java菜鸟问题
- 请教Java 中的SoftReference是什么?先行谢过!
- 请问大家一个问题,现在有一个父类F,里面用ThreadLocal()对象记录了某个资源(比如Connection),然后有很多类extends这个F,其他的类通
我看不懂你写的程序,看来我有点老了,跟不上年代了。
你还是找别人吧。兄弟。
bestnum = order(score[],studentnum);
grade_class(score[], best);//public static int order(int a[],int n)//
public static void grade_class(int a[] , int best)//判断等级居然你的代码在写的时候,没有显示错误警告,你是做什么IDE啊
grade_class(score, best);
public static void main(String args[]) {
int studentnum, bestnum;
int score[];
System.out.println("please input the number of students:");
MyInput num = new MyInput();
studentnum = num.readInt();
score = new int[studentnum];
System.out.println("please input the grade:");
for (int i = 0; i < studentnum; i++)// 输入成绩
{
score[i] = num.readInt();// 需要对异常进行处理
}
bestnum = order(score, studentnum);
grade_class(score, bestnum);
} public static int order(int a[], int n)// 返回最大值
{
int i, best = a[0];
for (i = 1; i < n; i++) {
if (best <= a[i])
best = a[i];
}
return best;
} public static void grade_class(int a[], int best)// 判断等级
{
char grade;
for (int i = 0; i < a.length; i++) {
if (a[i] >= best) {
grade = 'A';
System.out.println(grade);
break;
} else if (a[i] >= (best - 10)) {
grade = 'A';
System.out.println(grade);
break;
} else if (a[i] >= (best - 20)) {
grade = 'B';
System.out.println(grade);
break;
} else if (a[i] >= (best - 30)) {
grade = 'C';
System.out.println(grade);
break;
} else if (a[i] >= (best - 40)) {
grade = 'D';
System.out.println(grade);
break;
} else {
//grade = 'E';//这里加这个不知道是什么意思,你都不用return,一个成绩不管怎样都会出现两个等级
//System.out.println(grade);
continue;
}
}
}
}
{
score[i] = num.readInt();bestnum = order(score[],studentnum);
grade_class(score[], best);
}
}这里是不是错了啊??
应该score【】都 赋值了 在 处理吧?
grade_class(score[], best);函数调用使用数组做参数,直接用数组名即数组地址就可以了,不能加两个方括号
score[]是没有意义的