⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 _1.cpp

📁 一个简单的VC编写的数据库 不是我写的 转载
💻 CPP
字号:
#include<stdio.h> 
struct stu 
{ 
float jichu,zhuanye,xuanxiu,renwen,shiyan; 
char name[10]; 
}; 
struct clas 
{ 
struct stu st[60]; 
}cs[100]; 
void shell(); 
void del(struct clas cs[],int m,int n); 
void paixu(struct clas cs[],char *p,int n); 
void link(char x); 
void stongji (struct clas cs[],int n,int m);  
void input(struct clas ma[],int n,int m); 
void ctongji(struct clas cs[],int k); 
void main() 
{ 
struct clas cs[100]; 
    char a; 
shell(); 
    scanf("%c",&a); 
    link(a); 
} 
void link(char x) 
{ 
    char h; 
int l,g; 
if(x=='A') 
{ 
printf("请输入学生班级号:"); 
    scanf("%d",&l); 
    printf("请输入学声学号:"); 
scanf("%d",&g); 
input(cs,l,g); 
     
} 
    else if(x=='D') 
{ 
       printf("请输入班级号:  "); 
       scanf("%d",&l); 
   ctongji(cs,l); 
} 
else if(x=='B') 
{ 
       printf("请输入学生班级号:"); 
   scanf("%d",&l); 
   printf("请输入学生学号:"); 
   scanf("%d",&g); 
   printf("\n"); 
   stongji(cs,l,g); 
} 
else if(x=='E') 
{ 
return; 
} 
    else if(x=='F') 
{ 
printf("请输入想看的班级号:  \n"); 
    scanf("%d",&l); 
printf("请输入想查看的成绩名称:  \n"); 
    printf("A......基础课  "); 
    printf("B......专业课\n"); 
    printf("C......选修课  "); 
    printf("D......实验课\n"); 
    printf("E......人文课"); 
    scanf("%c",&h); 
    paixu(cs,&h,l); 
} 
    else if(x=='C') 
    { 
printf("请输入学生所在班级号:"); 
scanf("%d",&l); 
printf("请输入学生学号:"); 
scanf("%d",&g); 
del(cs,l,g); 
} 
else 
{ 
shell(); 
    printf("请选择:"); 
scanf("%c",&h); 
link(h); 
} 
return; 
} 
void shell() 
{ 
printf("..........欢迎使用..........\n"); 
    printf("A......输入学生信息    "); 
printf("D......显示班级概况\n"); 
printf("B......显示学生信息    "); 
printf("E......退出\n"); 
printf("C......删除学生信息    "); 
    printf("F......显示班级成绩排名\n"); 
return; 
} 
void paixu(struct clas cs[],char *p,int n) 
{    
char d; 
int i,j,k=0; 
float ji[50],shi[50],ren[50],xuan[50],zhuan[50],t[5]; 
for(i=0;i<=49;i++) 
{ 
ji[i]=cs[n].st[i].jichu; 
    ren[i]=cs[n].st[i].renwen; 
shi[i]=cs[n].st[i].shiyan; 
xuan[i]=cs[n].st[i].xuanxiu; 
zhuan[i]=cs[n].st[i].zhuanye; 
} 
for(i=49;i>=0;i--) 
{ 
for(j=0;j<i;j++) 
{ 
if(ji[j]>ji[j+1]) 
{ 
t[0]=ji[j+1]; 
ji[j+1]=ji[j]; 
ji[j]=t[0]; 
} 
if(ren[j]>ren[j+1]) 
{ 
t[1]=ren[j+1]; 
ren[j+1]=ren[j]; 
ren[j]=t[1]; 
} 
if(shi[j]>shi[j+1]) 
{ 
t[2]=shi[j+1]; 
shi[j+1]=shi[j]; 
                shi[j]=t[2]; 
} 
if(xuan[j]>xuan[j+1]) 
{ 
t[3]=xuan[j+1]; 
xuan[j+1]=xuan[j]; 
xuan[j]=t[3]; 
} 
if(zhuan[j]>zhuan[j+1]) 
{ 
                t[4]=zhuan[j+1]; 
zhuan[j+1]=zhuan[j]; 
zhuan[j]=t[4]; 
} 
} 
    if(*p=='A') 
{ 
printf("%f",ji[j]); 
} 
else if(*p=='B') 
{ 
printf("%f",zhuan[j]); 
} 
else if(*p=='C') 
{ 
printf("%f",xuan[j]); 
} 
else if(*p=='D') 
{ 
printf("%f",shi[j]); 
} 
else if(*p=='E') 
{ 
printf("%f",ren[j]); 
} 
else  
{   
 printf("请重新输入"); 
} 
    k=k+1; 
if(k%4==0) 
{ 
printf("\n"); 
} 
}  
    printf("\n"); 
    scanf("%c",&d); 
link(d); 
return; 
} 
void input(struct clas ma[],int n,int m) 
{ 
FILE *fp; 
fp=fopen("D:\\fw\\student","wb"); 
float *a,*b,*c,*f,*e; 
char d; 
printf("请输入该生姓名:"); 
    scanf("%s",ma[n].st[m].name); 
do 
{ 
printf("请输入人文课已修学分:"); 
scanf("%f",&ma[n].st[m].renwen); 
    a=&(ma[n].st[m].renwen); 
}while(a==NULL); 
do 
{ 
printf("请输入基础课已修学分:"); 
scanf("%f",&ma[n].st[m].jichu); 
    b=&(ma[n].st[m].jichu); 
}while(b==NULL); 
do 
{ 
printf("请输入选修课已修学分:"); 
scanf("%f",&ma[n].st[m].xuanxiu); 
    c=&(ma[n].st[m].xuanxiu); 
}while(c==NULL); 
do 
{ 
printf("请输入专业课已修学分:"); 
scanf("%f",&ma[n].st[m].zhuanye); 
    e=&(ma[n].st[m].zhuanye); 
}while(f==NULL); 
do 
{ 
printf("请输入实验课已修学分:"); 
scanf("%f",&ma[n].st[m].shiyan); 
    f=&(ma[n].st[m].shiyan); 
}while(e==NULL); 
if((fwrite(&ma[n],sizeof(struct clas),1,fp))==NULL) 
{ 
printf("Error!"); 
} 
printf("\n"); 
    scanf("%c",&d); 
link(d); 
return; 
} 
void stongji(struct clas cs[],int n,int m)  
{ 

/*FILE *fq; 
    fq=fopen("D:\\fw\\class",wb);*/ 
char d; 
float sum,l; 
sum=cs[n].st[m].jichu+cs[n].st[m].zhuanye+cs[n].st[m].xuanxiu+cs[n].st[m].renwen+cs[n].st[m].shiyan; 
    l=sum/152; 
printf("该生姓名为:%s",cs[n].st[m].name); 
printf("\n"); 
printf("该生专业课成绩为:%f          ",cs[n].st[m].zhuanye); 
    printf("该生选修课成绩为:%f\n ",cs[n].st[m].xuanxiu); 
printf("\n"); 
printf("该生人文课成绩为:%f          ",cs[n].st[m].renwen); 
printf("该生实验课成绩为:%f\n",cs[n].st[m].shiyan); 
printf("\n"); 
printf("该生学分通过率为:%f",l); 
printf("\n"); 
if(l<0.6) 
{ 
printf("目前尚不能毕业!"); 
} 
else 
{ 
printf("可以毕业!"); 
} 
    printf("\n"); 
printf("\n"); 
    scanf("%c",&d); 
link(d); 
return; 
} 
void ctongji(struct clas cs[],int k) 
{ 
char d; 
int i,j; 
float sum[5],total,g[5]; 
    for(j=0;j<=4;j++) 
{ 
sum[j]=0; 
    g[j]=0; 
} 
    for(i=0;i<=49;i++) 
{ 
sum[0]=sum[0]+cs[k].st[i].jichu; 
sum[1]=sum[1]+cs[k].st[i].zhuanye; 
        sum[2]=sum[2]+cs[k].st[i].renwen; 
sum[3]=sum[3]+cs[k].st[i].shiyan; 
sum[4]=sum[4]+cs[k].st[i].xuanxiu; 
    if((cs[k].st[i].jichu)>=85) 
{ 
g[0]=g[0]+1; 
} 
if((cs[k].st[i].zhuanye)>=85) 
{ 
g[1]=g[1]+1; 
} 
if((cs[k].st[i].shiyan)>=85) 
{ 
g[2]=g[2]+1; 
} 
if((cs[k].st[i].xuanxiu)>=85) 
{ 
g[3]=g[3]+1; 
} 
        if((cs[k].st[i].renwen)>=85) 
{ 
g[4]=g[4]+1; 
} 
} 
sum[0]=sum[0]/50; 
sum[1]=sum[1]/50; 
sum[2]=sum[2]/50; 
sum[3]=sum[3]/50; 
sum[4]=sum[4]/50; 
    printf("班级学生专业课平均成绩为:%f",sum[1]); 
printf("班级学生基础课平均成绩为:%f\n",sum[0]); 
printf("班级学生人文课平均成绩为:%f",sum[2]); 
printf("班级学生实验课平均成绩为:%f\n",sum[3]); 
printf("班级学生选修课平均成绩为:%f",sum[4]); 
printf("\n"); 
printf("\n"); 
printf("班级专业课优秀人数:%f",g[1]); 
printf("班级基础课优秀人数:%f\n",g[0]); 
printf("班级人文课优秀人数:%f",g[4]); 
printf("班级实验课优秀人数:%f\n",g[2]); 
printf("班级选修课优秀人数:%f",g[3]); 
total=(g[1]+g[0]+g[2]+g[3]+g[4])/50; 
printf("此班优秀率为:%f",total); 
    printf("\n"); 
    scanf("%c",&d); 
link(d); 
return; 
} 
void del(struct clas cs[],int m,int n) 
{ 
char l; 
cs[m].st[n].jichu=0; 
    cs[m].st[n].zhuanye=0; 
cs[m].st[n].xuanxiu=0; 
cs[m].st[n].shiyan=0; 
cs[m].st[n].renwen=0; 
printf("\n"); 
scanf("%c",&l); 
link(l); 
return; 
} 
 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -