如何實現(xiàn)控制輸入的成績在0~100中間?
int?clsaaNum=3;//保存班級的數(shù)量 int?stuNum=4;//保存學生數(shù)量 double?sum=0;//班級總成績 double?avg=0;//班級平均分 int?score?=0; Scanner?input=new?Scanner(System.in);//創(chuàng)建Scanner對象 for(int?i=1;i<=3;i++)?{?//外層循環(huán) sum=0; System.out.println("——請輸入第"+i+"個班級的成績:——"); for(int?j=1;j<=stuNum;j++)?{???????//內層循環(huán) ?? System.out.print("請輸入第"+j+"個學生的成績:"); ?? ?score?=input.nextInt();//通過Scanner對象的nextInt獲取學生個人成績 ?? ?? sum+=score;???????//個人成績累加總和 } avg=sum/stuNum; System.out.println("班級平均分是:"+avg); } } }
2017-07-27
首先判斷輸入的內容是整類 ?如果是整形,向下執(zhí)行代碼
while(!sc.hasNextInt()){//不是整形 執(zhí)行循環(huán)是整形 跳出循環(huán)
System.out.println("輸入數(shù)據(jù)有誤,請重新輸入");//不是整形 給出提示,
sc.next();//繼續(xù)輸入
}
然后判斷輸入的數(shù)據(jù)是否在1-100
2017-07-24
2017-07-24
int?clsaaNum=3;//保存班級的數(shù)量
????????int?stuNum=4;//保存學生數(shù)量
????????double?sum=0;//班級總成績
????????double?avg=0;//班級平均分
????????int?score?=0;
????????Scanner?input=new?Scanner(System.in);//創(chuàng)建Scanner對象
?????????
????????for(int?i=1;i<=3;i++)?{?//外層循環(huán)
????????????sum=0;
????????????System.out.println("——請輸入第"+i+"個班級的成績:——");
?????????????
????????????for(int?j=1;j<=stuNum;j++)?{???????//內層循環(huán)
?????????????????
??????????????????System.out.print("請輸入第"+j+"個學生的成績:");
???????????????????score?=input.nextInt();//通過Scanner對象的nextInt獲取學生個人成績
???????????????????while(score>100||score<10){
???????????????????System.out.println("您輸入的成績有誤!請重新輸入(0~100):");
????????????????????score=input.nextInt();
????????????????????}
??????????????????sum+=score;???????//個人成績累加總和
?
????????????}
?
????????????avg=sum/stuNum;
????????????????System.out.println("班級平均分是:"+avg);
????????}??????
????}
?
}
/*在你寫的代碼間加一個while循環(huán)判斷輸入的數(shù)據(jù)是否是0到100之間,如果不是,則提示輸入錯誤并要求重新輸入,直到輸入正確才跳出循環(huán)。希望對你有幫助*/
2017-07-11
public static void main(String[] arg) {?
int clsaaNum=3;//保存班級的數(shù)量
int stuNum=4;//保存學生數(shù)量
double sum=0;//班級總成績
double avg=0;//班級平均分
Scanner input=new Scanner(System.in );//創(chuàng)建Scanner對象
for(int i=1;i<=3;i++) { //外層循環(huán)
sum=0;//成績清零
System.out.println("——請輸入第"+i+"個班級的成績:——");
for(int j=1;j<=stuNum;j++) { ? ? ? //內層循環(huán)
? System.out.print("請輸入第"+j+"個學生的成績:");
?
? int score =input.nextInt();//通過Scanner對象的nextInt獲取學生個人成績
? while(score<0||score>100) {
? System.out.print("上一成績信息無效,請輸入正確的成績:");
? score =input.nextInt();
? ?
? }
? ?
? sum+=score; ? ? ? //個人成績累加總和
}
?avg=sum/stuNum;
System.out.println("班級平均分是:"+avg);
}
}
2017-07-10
代碼沒錯,我能運行啊
2017-07-10
2017-07-10
for(int?j=1;j<=stuNum;j++)?{???????//內層循環(huán)
??????????????????System.out.print("請輸入第"+j+"個學生的成績:");
???????????????????score?=input.nextInt();//通過Scanner對象的nextInt獲取學生個人成績
???????????????? ? if(score < 0 && score > 100){
???????????????? ? ?????System.out.print("輸入有誤,請重新輸入:")?
????????????????????????score?=input.nextInt();??????????????? ??
}
??????????????????sum+=score;???????//個人成績累加總和
?
????????????}
這樣就行了,只是缺少個提示而已,手動輸入不存在控制輸入范圍的,只能客觀的給予提醒!
2017-07-10
輸入時手動輸入的啊 不存在控制的問題