輸入若干學生的成績
① 輸入若干個學生的百分製成績,計算平均分並輸出.輸入-1表示結束,若輸入的成績超過100,則需重新輸入.c語言
#include<stdio.h>
voidmain()
{
intsum=0;
intn=0;
inta,i;
do{
printf("請輸入成績,以-1結束:");
scanf("%d",&a);
while(a>100)
{
printf("輸入錯誤,請重新輸入:");
scanf("%d",&a);
}
sum+=a;//求總分
n++;//統計人數專
}while(a!=-1)
printf("平均分為屬:%d ",sum/n);
}
② 從鍵盤上輸入若干個學生的成績
#include<stdio.h>
intmain()
{
floatx,max,min;
scanf("%f",&x);
max=x;
//min=();
min=x;
while(x>=0)
{
if(x>max)
max=x;
if(x<min)
min=x;
//scanf("%f",());
scanf("%f",&x);
}
printf(" Max=%f Min=%f ",max,min);
return0;
}
分別填 x &x
運行結內果容
③ C語言從鍵盤輸入若干名學生的成績,當輸入-1時結束,統計出及格人數
#include <stdio.h>
void main()
{
int a[200],i,n=0;
printf("請輸入學生成績:");
for(i = 0 ; i < 200 ; i ++)
{
回scanf("%d",&a[i]);
if(a[i] >= 60)
n++;
else if(a[i] == -1)
break;
}
printf("及格人數為:答%d",n);
}
④ c語言:從鍵盤上輸入若干個學生的成績,當成績小於0時結束輸入.計算出平均成績,並輸出不及格的成績和人數
#include<stdio.h>
intmain(){
doublex;
doublea[100];
doublesum=0;
inti,tot=0,count=0;
scanf("%lf",&x);
while(x>=0){
sum+=x;
tot++;
if(x<60)a[count++]=x;
scanf("%lf",&x);
}
printf("%lf ",sum/(double)tot);
printf("Fail:%d ",count);
for(i=0;i<count;i++)
printf("%lf ",a[i]);
return0;
}
⑤ c語言從鍵盤上輸入若干個學生的成績,統計並輸出其中的最高成績和最低成績,當輸入負數時結束輸入
① 代碼:
#include<stdio.h>
intmain(intargc,charconst*argv[])
{
doublescore,highest,lowest;
intn;
highest=-1;lowest=1000000000;
n=0;
while(1){
scanf("%lf",&score);
if(score<0.0)break;
if(highest<score)highest=score;
if(lowest>score)lowest=score;
n++;
}
printf("Total%d: ",n);
printf("Thehighestscoreis:%6.2f ",highest);
printf("Thelowestscoreis:%6.2f ",lowest);
return0;
}
② 運行:
1006092.580.550.8-1
Total5:
Thehighestscoreis:100.00
Thelowestscoreis:50.80
⑥ java輸入若干學生姓名和成績並計算平均分
importjava.util.Scanner;
/**
*輸入數據存入數組
*
*@authorAdministrator
*
*/
publicclassScannerInput{
publicstaticvoidmain(String[]args){
Scannerin=newScanner(System.in);
intsum=0,avg=0;
Stringstr="";
do{
System.out.print("請輸入學生的人數:");
intrenshu=in.nextInt();//存儲學生的人數
System.out.print("請輸入課程的數目:");
intcourseNum=in.nextInt();//存儲課程的數目
String[]name=newString[renshu];//聲明一個String數組用來存儲學生的姓名
String[]course=newString[courseNum];//聲明一個String數組用來存儲課程的名稱
int[][]number=newint[renshu][courseNum];
/*
*用來循環的存儲課程的名稱
*/
for(inti=0;i<course.length;i++){
System.out.print("請定義第"+(i+1)+"門課程的名字:");
course[i]=in.next();
}
/*
*用來錄入學生的各科成績
*/
for(inti=0;i<renshu;i++){
System.out.print("請輸入學生的姓名:");
name[i]=in.next();
for(intj=0;j<courseNum;j++){
System.out.print("請輸入學生"+name[i]+"的"+course[j]
+"成績:");
number[i][j]=in.nextInt();
sum+=number[i][j];
}
System.out.println("學生"+name[i]+"的平均分為:"
+(sum*1.0/courseNum));
}
System.out.print("是否繼續輸入?(y/n):");
str=in.next();
}while(str.equals("y"));
}
}
⑦ C語言編程題:從鍵盤上輸入若干學生成績(百分制整數),直到輸入-1結束。求平均分並保留1位小數輸出。
#include<stdio.h>
void main(void)
{
int count = 0; //輸入抄成績個數
int sum = 0; //總分
float ave = 0; //平均分
int score;
scanf("%d", &score);
while(score != -1)
{
count ++;
sum += score;
scanf("%d", &score);
}
if(count == 0)
printf("沒有輸入學生成績\n");
else{
ave = (float)sum / count;
printf("平均分: %.1f\n", ave);
}
}
⑧ c語言題目,輸入若干個(由輸入的變數n確定)學生的成績(有效成績為0~100分,輸入無效成績則重新
#include"stdio.h"
intmain(intargc,char*argv[]){
intn,score,max,min,i;
printf("Entern(int0<n)... n=");
if(scanf("%d",&n)!=1||n<1){
printf("Inputerror,exit... ");
return0;
}
printf("Pleaseenterthe%dstudentsscore(s)(int0~)... ",n);
for(i=0;i<n;i++){
while(scanf("%d",&score)!=1||score<0||score>100){
printf("Inputerror,redo:");
fflush(stdin);
}
if(i==0)
max=min=score;
if(max<score)
max=score;
if(min>score)
min=score;
}
printf(" Thebestscoreis%d theworstscoreis%d ",max,min);
return0;
}
運行樣例:
⑨ 從鍵盤上輸入若干學生的成績 求最高分- C程序
//本程序不含輸入來糾錯源功能,必須按格式輸入XX
XX
XX
XX回車
#include
main()
{
int
x,max_x,min_x,y,n=0;//y臨時存儲的數
n無意義
printf("從鍵盤上輸入若干學生的成績:(用空格隔開)\n");
scanf("%d",&x);
max_x=x,min_x=x;
do
{
if(n!=0)
{
scanf("%d",&x);
}
if(max_x
x)
min_x=x;
y=getchar();//判斷是空格還是回車
if(y=='\n')
break;
n=1;
}while(1);
printf("max=%d\n
min=%d\n",max_x,min_x);
}
⑩ C語言:從鍵盤上輸入若干學生的成績,計算出平均成績,並輸出不及格的成績和人數
#include<stdio.h>
int main()
{
char ch;
int i,x,n=0,s=0;
for(i=1;;i++)
{
printf("請輸入學生成績,以空格隔開,以回車結束:\n");
scanf("%d",&x);
if(x<60)
{
printf("%d ",x);
n++;
}
s+=x;
if((getchar())=='\n')
break;
}
printf("\n平均分=%d 班級人數%d 不及格人數=%d\n",s/i,i,n);
}
你的這段函數在if判斷那裡出現錯誤,在判斷中用等號,不是賦值號,還有班級人數那裡出現了錯誤,你是從1開始計算的,那麼i就是班級人數。
在執行的時候,你輸入數據應該以空格隔開,因為你是以判斷換行符為循環條件的。
我在中間加了一條提示語句,這樣程序的交互性會更好一點,也避免自己出錯。