學生成績統計程序設計
❶ C語言程序設計統計學生成績
用數復組,你學了制數組嗎?
int i,b,c;
scanf("%d"&i); //輸入需要幾個學生成績
int a[i]; //定義數組大小。
for (b=0;b<=i;b++) //循環輸入成績
a[i]=scanf("%d",c);
❷ C語言程序設計題:統計學生成績
//按你要求來的 不過只輸入了3組數,你可以自己改
#include<stdio.h>
#include<string.h>
#define max 100
typedef struct
{
char name[max];// 姓名
int num;//學號
int eng;//英語成績
int pro;//程序設計成績
int maths;//數學成績
}student;
void input(student s[],int n)//輸入以及求總分
{
int sum=0;
for(int i=0;i<n;i++)
{
printf("輸入第%d個學生的姓名:\n",i+1);gets(s[i].name);
printf("輸入第%d個學生的學號:\n",i+1);scanf("%d",&s[i].num);
printf("輸入第%d個學生的英語成績:\n",i+1);scanf("%d",&s[i].eng);
printf("輸入第%d個學生的程序設計成績:\n",i+1);scanf("%d",&s[i].pro);
printf("輸入第%d個學生的數學成績:\n",i+1);scanf("%d",&s[i].maths);
sum=s[i].eng+s[i].pro+s[i].maths;
printf("總分為:%d\n",sum);
fflush(stdin);
}
}
void sumscore(student s[],int n)//單科成績總和
{
int sum_eng=0,sum_pro=0,sum_maths=0;
for(int i=0;i<n;i++)
{
sum_eng+=s[i].eng;
sum_pro+=s[i].pro;
sum_maths+=s[i].maths;
}
printf("英語總成績為:%d\n",sum_eng);
printf("程序設計總成績為:%d\n",sum_pro);
printf("數學總成績為:%d\n",sum_maths);
}
void searchst(student s[],int n)//查找學生
{
char e[max];int number;
printf("輸入要查詢的姓名:\n");gets(e);
printf("輸入要查詢的學號:\n");scanf("%d",&number);
for(int i=0;i<n;i++)
if(!strcmp(s[i].name,e)&&number==s[i].num)
{
printf("英語成績:%d\n程序設計成績:%d\n數學成績:%d\n",s[i].eng,s[i].pro,s[i].maths);
printf("總成績為:%d\n",s[i].eng+s[i].pro+s[i].maths);
return;
}
printf("查無此人!");
}
void main()
{
student s[3];int n=3;//這里只用了3個測試,30個太誇張了,可以改成30組數....
input(s,n);
printf("\n");
sumscore(s,n);
printf("\n");
searchst(s,n);
printf("\n");
}
❸ C語言程序設計 學生成績計算
#include "stdio.h"
void main()
{
int i,j,m=0,n=0;
float score[10][5];
float average;
float max=0;
for(i=0;i<10;i++)
{
printf("第%d個學生的成績:\n",i+1);
for(j=0;j<5;j++)
scanf("%f",&score[i][j]);
}
for(i=0;i<10;i++)
{
average=0;
for(j=0;j<5;j++)
average+=score[i][j];
printf("第%d個學生的平均分:%.1f\n",i+1,average/5);
}
for(i=0;i<5;i++)
{
average=0;
for(j=0;j<10;j++)
average+=score[j][i];
printf("第%d門課的平均分:%.1f\n",i+1,average/10);
}
for(i=0;i<5;i++)
{
for(j=0;j<10;j++)
{
(max<score[j][i])
{
max=score[j][i];
m=j,
n=i;
}
}
}
printf("最高的分數%.1f是第%d個學生的第%d門課程。\n",max,m+1,n+1);
}
❹ 設計一個統計班級學生成績的c語言程序
僅供參考:
#include"stdio.h"
#defineN35
structstudent
{
intnum; //學號
charname[8]; //姓名
intnannv; //性別
intchines; //語文成績
intmath; //數學成績
intEnglish; //英語成績
intphysics; //物理成績
intsum; //總分
doubleavr; //平均分
}stu[N];
voidinput(intn)
{
inti;
for(i=0;i<n;i++)
{
intsum=0;
doubleavr=0.0;
printf("請輸入第%d個學生信息 ",i+1);
printf("請輸入學號:");
scanf("%d",&stu[i].num);
printf("請輸入姓名:");
scanf("%s",stu[i].name);
printf("請輸入性別:");
scanf("%d",&stu[i].nannv);
printf("請輸入語文成績:");
scanf("%d",&stu[i].chines);
printf("請輸入數學成績:");
scanf("%d",&stu[i].math);
printf("請輸入英語成績:");
scanf("%d",&stu[i].English);
printf("請輸入物理成績:");
scanf("%d",&stu[i].physics);
//計算總分和平均分
stu[i].sum=stu[i].chines+stu[i].math+stu[i].English+stu[i].physics;
stu[i].avr=(double)(stu[i].sum*1.0/4);
}
}
voidoutput(intn)
{
inti;
for(i=0;i<n;i++)
{
printf("------------------------------------------------------------------ ");
printf("第%d名: ",i+1);
printf("學號:%d 姓名:%s 性別:%d ",stu[i].num,stu[i].name,stu[i].nannv);
printf("語文成績:%d 數學成績:%d 英語成績:%d 物理成績:%d ",
stu[i].chines,stu[i].math,stu[i].English,stu[i].physics);
printf("總分:%d 平均分:%.2f ",stu[i].sum,stu[i].avr);
printf("------------------------------------------------------------------ ");
}
}
voidsort(intn)
{
inti,j;
structstudentst;
//冒泡排序
for(i=0;i<n-1;i++)
{
for(j=0;j<n-i-1;j++)
{
if(stu[j].sum<stu[j+1].sum)
{
st=stu[j];
stu[j]=stu[j+1];
stu[j+1]=st;
}
}
}
}
voidmain()
{
intn;
printf("請輸入學生人數:");
scanf("%d",&n);
input(n); //輸入學生信息
sort(n); //按總成績排序
printf("排名信息如下: ");
output(n); //輸出學生信息
}
❺ 編程題c++:從鍵盤輸入10個學生的成績,計算平均成績,統計及格人數,計算高於平均分的學生的分數
#include <stdio.h>
int main()
{
int i;
float a[10],min,max,avg; //max表示最高分,min表示最低分,avg表示平均分
printf("請輸入10位學生的分數 ");
printf("******************************** ");
for(i=0;i<=9;i++)
{
printf("請輸入一位學生的分數:");
scanf("%f",&a[i]);
}
max=min=avg=a[0];
int jige=0;
for(i=1;i<=9;i++)
{
if(min>a[i])
{min=a[i];}
if(a[i]>=60)
jige=jige+1;
if(max<a[i])
{max=a[i];}
avg=avg+a[i];
}
avg=avg/10;
printf("max=%f ",max);
printf("min=%f ",min);
printf("avg=%f ",avg);
printf("及格人數:%d ",jige);
printf("******************************** ");
}
(5)學生成績統計程序設計擴展閱讀:
C++是C語言的繼承,它是一種使用非常廣泛的計算機編程語言,C++作為一種靜態數據類型檢查的、支持多范型的通用程序設計語言,能夠支持過程化程序設計、數據抽象化、面向對象程序設計、泛型程序設計、基於原則設計等多種程序設計風格。
C++的編程領域眾廣,常用於系統開發,引擎開發等應用領域,深受廣大程序員的喜愛。
C++不僅擁有計算機高效運行的實用性特徵,同時還致力於提高大規模程序的編程質量與程序設計語言的問題描述能力。
網路-C++
❻ C語言編程,從鍵盤輸入10個學生的成績,試統計出他們的成績總和及平均值
#include <stdio.h>
#define MAX 10
struct student {
char no[10];
char name[10];
float score[3];
}stu[MAX];
float ave_course[3] = {0};
float ave_student[MAX] = {0};
int max_ave_i = 0; // 存儲平均分最高的學生索引
int max_course_i[3] = {0}; //存儲單科分數,最高的學生索引
// 錄入學生成績
void input(int n) {
int i;
for(i=0; i<n; i++) {
scanf("%s %s", stu[i].no,stu[i].name);
scanf("%f %f %f", &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
}
// 計算平均成績
void average(int n){
int i,j;
float max_ave = 0.0f;
float max_course[3] = {0};
// 計算每門課的平均成績
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_course[j] += stu[i].score[j];
if(max_course[j]<stu[i].score[j]){
max_course[j]<stu[i].score[j];
max_course_i[j] = i;
}
}
}
for(j=0; j<3; j++) {
ave_course[j] /= n;
}
// 計算每個學生的平均成績
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_student[i] += stu[i].score[j];
}
ave_student[i] /= 3;
if(max_ave < ave_student[i]) {
max_ave = ave_student[i];
max_ave_i = i;
}
}
}
void main () {
int i,j;
printf("請輸入學生的學號 姓名 語文 數學 英語");
input(MAX);
average(MAX);
printf("\n課程的平均成績是: %6.2f %6.2f %6.2f\n",ave_course[0],ave_course[1],ave_course[2]);
printf("\n學生的平均成績是: \n");
for(i=0; i<MAX; i++) {
printf(" %s %s %6.2f\n", stu[i].no, stu[i].name, ave_student[i]);
}
printf("平均分,最高的學生:\n");
printf(" 學號=%s, 姓名=%s, 平均分=%6.2f:\n", stu[max_ave_i].no, stu[max_ave_i].name, ave_student[max_ave_i]);
printf("語文,最高分的學生:\n");
i=max_course_i[0];
printf(" 學號=%s, 姓名=%s, 成績=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[0]);
printf("數學,最高分的學生:\n");
i=max_course_i[1];
printf(" 學號=%s, 姓名=%s, 成績=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[1]);
printf("英語,最高分的學生:\n");
i=max_course_i[2];
printf(" 學號=%s, 姓名=%s, 成績=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[2]);
getchar();
getchar();
}
❼ 學生成績統計程序設計
系統功能設計
系統分為三大模塊:基本數據管理模塊,學生成績管理回模塊,列印輸出模塊。下面答我將對每個模塊的總體設計作簡要說明。
學生成績管理系統模塊構成:
1)基本數據管理模塊
該模塊可以實現對現有學生成績管理系統檔案中的學號,姓名,年齡,性別,身高,電話和家庭地址等基本信息的記載情況,並且可以對這些信息進行添加,修改或刪除。
2)學生成績管理模塊
該模塊可以實現對學生成績的錄入,查詢,並且可以進行排序和各種分析等功能。
3)列印輸出模塊
該模塊可以實現對查詢出來的成績信息進行列印的功能。
❽ 編程實現:從鍵盤輸入10個學生的成績,統計並輸出80分以上學生的人數。要求:①定義並使用自定義函數
如圖
//編程實現:從鍵盤輸入10個學生的成績,統計並輸出80分以上學生的人數。
//要求:①定義並使用自定義函數intfun(floatarr[],intn)實現統計80分以上人數的功能。
//②輸入輸出功能由主函數實現。
//(思考:①如何統計不及格學生的人數。②如何求出平均分
#include<stdio.h>
#include<malloc.h>
typedefstructfun_Total{
intgoodNUM; //80分以上人數
intfailNUM; //不及格人數
floatave; //平均分
}fun_Total;
fun_Total*fun(floatarr[],intn)
{
inti;
fun_Total*R=(fun_Total*)malloc(sizeof(fun_Total));
R->goodNUM=0;R->failNUM=0;R->ave=0;
for(i=0;i<n;i++){
R->ave+=arr[i];
if(arr[i]>80)R->goodNUM++; //80以上即>80
elseif(arr[i]<60)R->failNUM++;
}
R->ave/=n;
returnR;
}
voidmain()
{
inti=0,n=10;
floatarr[10];
fun_Total*RT;
printf("請輸入學生的分數(按回車完成每個人的成績輸入)
");
for(i=0;i<n;i++){
printf("第%d名學生分數=",i+1);
scanf("%f",&arr[i]);
if(arr[i]>100||arr[i]<0)
{
printf("輸入非法! ");
i--;
}
}
RT=fun(arr,n);
printf("
80分以上的學生有%d人
",RT->goodNUM);
printf("
不及格的學生有%d人
",RT->failNUM);
printf("
平均分為%f
",RT->ave);
free(RT);
}
❾ 本班C語言程序設計成績統計分析表代碼
具體統計口復徑是什麼。
作為程制序,增刪改查功能少不了,其次才是統計。
首先一個班級信息包括多名學生的信息,而學生的信息又可以包含學號,姓名,成績等等。
最簡單直接數組存儲一組數字表示一組學生的某科成績,然後用這個數組排序,分析。
復雜點,就把每個學生定義成一個結構體,包含所有信息。可以是結構數組,也可以是結構鏈表,最後對這個結構數據排序分析。
❿ C語言編程題:從鍵盤輸入10個學生的成績,計算平均成績,統計及格人數,計算高於平均分的學生的分數
如果需要改進可以來hi我~
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
int a[10];
int m=0;
float aver;
aver=0.0;
cout<<"請輸入自10個學生的成績"<<endl;
for(int i=0;i<10;i++)
{
cin>>a[i];
aver+=a[i];
}
aver/=10;
cout<<"平均數為"<<aver<<endl<<endl;
cout<<"高於平均分的學生的分數:"<<endl;
for(i=1;i<10;i++)
{
if(a[i]>60)
m++;
if(a[i]-aver>0)
cout<<"第"<<i<<"個學生:"<<a[i]<<endl;
}
cout<<endl;
cout<<"及格人數:"<<m<<endl<<endl;
return 0;
}