关于java编程的问题 请问错在哪里,应该怎么改。谢谢!

publicclasschengji{publicstaticvoidmain(Stringargs[]){inti,num,sum=0;floatp1,p2,p3,p4... public class chengji
{
public static void main(String args[])
{
int i,num,sum=0;
float p1,p2,p3,p4;
int ke1[]={90,85,66,51,69,78,88,94};
int ke2[]={68,90,85,88,68,70};
int ke3[]={68,88,81,90,65,74,64,46};
int ked=60;

for(i=0;i<ke1.length;i++)
{
sum=sum+ke1[i];
}
p1=sum/8;
System.out.println("1001课程的平均成绩为:"+p1+"分");

for(i=0;i<ke2.length;i++)
{
sum=sum+ke2[i];
}
p2=sum/6;
System.out.println("2001课程的平均成绩为:"+p2+"分");

for(i=0;i<ke3.length;i++)
{
sum=sum+ke3[i];
}
p3=sum/8;
System.out.println("3001课程的平均成绩为:"+p3+"分");

p4=ked;
System.out.println("1002课程的平均成绩为:"+p4+"分");

float pz[]={p1,p2,p3,p4};
for(i=0;i<pz.length;i++)
{
if(pz[i]>90)
{
num=sys_out(i);
System.out.println("课程编号为"+num+"的考生平均成绩为优");
}
if(pz[i]>80)
{
num=sys_out(i);
System.out.println("课程编号为"+num+"的考生平均成绩为良");
}
if(pz[i]>70)
{
num=sys_out(i);
System.out.println("课程编号为"+num+"的考生平均成绩为中");
}
if(pz[i]>60)
{
num=sys_out(i);
System.out.println("课程编号为"+num+"的考生平均成绩为及格");
}
if(pz[i]<60)
{
num=sys_out(i);
System.out.println("课程编号为"+num+"的考生平均成绩为不及格");
}
}
}

public static int sys_out(int n)
{
if(n=0)
{
return 1001;
}
else if(n=1)
{
return 2001;
}
else if(n=2)
{
return 3001;
}
else if(n=3)
{
return 1002;
}
}
}

提示错误原因为 Type mismatch: cannot convert from int to boolean
展开
 我来答
百度网友b8f909b
2012-04-16 · TA获得超过795个赞
知道小有建树答主
回答量:554
采纳率:0%
帮助的人:472万
展开全部
sys_out(int n)
这个函数体里的几个if else判断,if( )这个括号里不应该是n=1而应该是n==1。
前者只是个赋值语句,后者才是条件判断语句,值为布尔型。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式