public static void main(String[] args) { int classNum=3;//班級(jí)數(shù)量 int stuNum=4;//學(xué)員數(shù)量 double sum=0;//保存成績總和 double avg=0;//成績平均分 Scanner input=new Scanner(System.in); for(int i=1;i<=classNum;i++) { System.out.println("***請(qǐng)輸入第"+i+"個(gè)班級(jí)的成績"); for(int j=1;j<=stuNum;j++) System.out.println("***請(qǐng)輸入第"+j+"個(gè)學(xué)員的成績"); ? ?int score=input.nextInt();//獲取輸入的成績 ? ?sum=sum+score;//成績累加求和 } avg=sum/stuNum;//計(jì)算平均分 System.out.println("第"+i+"個(gè)班級(jí)的成績平均分為:"+avg+"。");}
3 回答

望遠(yuǎn)
TA貢獻(xiàn)1017條經(jīng)驗(yàn) 獲得超1032個(gè)贊
for(int?i=1;i<=classNum;i++) { System.out.println("***請(qǐng)輸入第"+i+"個(gè)班級(jí)的成績"); sum=0; for(int?j=1;j<=stuNum;j++)//這里控制好內(nèi)層循環(huán)計(jì)算班級(jí)總分 { ????System.out.println("***請(qǐng)輸入第"+j+"個(gè)學(xué)員的成績"); ????int?score=input.nextInt();//獲取輸入的成績 ????sum=sum+score;//成績累加求和 } avg=sum/stuNum;//計(jì)算平均分 System.out.println("第"+i+"個(gè)班級(jí)的成績平均分為:"+avg+"。"); }//外層循環(huán)到這里結(jié)束,這樣就解決了變量作用域的問題。

精慕門9254224
TA貢獻(xiàn)167條經(jīng)驗(yàn) 獲得超46個(gè)贊
你內(nèi)部for循環(huán)后面少寫個(gè){,所以IDE把你內(nèi)部for循環(huán)后跟的},視為外部for循環(huán)的結(jié)束符了!所以i的作用域超出了外循環(huán)for的范圍!

磁單極
TA貢獻(xiàn)22條經(jīng)驗(yàn) 獲得超19個(gè)贊
你這個(gè)i是for循環(huán)中的局部變量,他的作用域只在for循環(huán)內(nèi)部,在外面是獲取不到這個(gè)i的
添加回答
舉報(bào)
0/150
提交
取消