查询选修了3门以上课程的学生学号,查询没有选修课程的学生学号

文章 3年前 (2021) admin
0

Q1:输入十个学生的学号和五门课程的成绩 统计输出五门课总分最高和最低的学生的学号和总分

"""  100010 LI 78 89 98 65 53  100011 Zhang 78 65 92 65 58     100012 Xie 89 76 63 99 100  100013 Zkz 82 58 69 76 90  100014 Wxj 76 88 62 100 96  100015 Zcy 93 86 79 100 91  100016 XieY 79 79 93 94 19  100017 Zkzy 72 88 60 59 97  100018 Wxjy 96 78 92 88 96  100019 ZcyY 83 96 79 100 91"""class MaxMin:    def __init__(self,dict1=None):        self.dict1={}             def Lin(self,s=0):        str1=str(input("请按上面标注的格式输入:"))        L1=str1.split()        for i in L1[2:]:            s=s+int(i)            d=L1[0]        self.dict1.update({d:s})        print("学号{0},姓名{1},五门总分{2}".format(L1[0],L1[1],s))    def maxx(self,max=0,max_k=0):         self.max=max         self.max_k=max_k         for k,v in self.dict1.items():              if self.maxself.dict1.get(k):                 self.min=v                 self.min_k=k         n=0L=MaxMin()while n<10:     n+=1     L.Lin()for k,v in L.dict1.items():   L.maxx()   L.minn()print("{0:*^30}".format("统计结果"))print("学号{0}的总分最高{1}分;学号{2}的总分最低{3}分".format(L.max_k,L.max,L.min_k,L.min))

Q2:输入10个学生的学号和5门课程的成绩,统计输出5门课总分最高和最低的学生的学号和他们的总分。

struct st{ int id; float c1; float c2; float c3; float c4; float c5; float all;};int main(){ int i; st A[10]={0}; for(i=0;i<10;i++) { printf("input st%d:",i); scanf("%d",&(A[i].id);//同理依次输入成绩//对五门成绩求和复制给A[i].all }//排序输出ID }

Q3:输入10个学生的学号和5门课的成绩,并统计5门课的总分最高和总分最低的学生的学号和他们的总分

#包括#定义H 10 #定义pr printf #定义s扫描fmain(){ int I,n[6],m,x,max,min"pr("请输入%d个学生的信息\n\n ",H);for(I=1;IMAX){ max=m;x=n[0];}elseif(m他的总分是%d\n\n ",x,最大值);pr("\n\n总分最低的学生是:%d -他的总分是%d\n\n ",x,min);} 你试试看

Q4:用C语言编写"输入10个学生每人5门课的成绩,利用函数计算每个学生总成绩,显示最高成绩及对应学生的学号"

http://..com/question/48294989.htmlhttp://..com/question/48197613.html以上都是我以前编的这种类型的程序,你参考一下吧,自己再努力一下肯定可以的觉得好的话请支持一下:)

Q5:c语言录入10个学生信息,包括学号姓名,5门课成绩,并要求录入学生各科成绩,总分,最高最低分,前五名

# include # include typedef struct student { char num[10];字符名称[5];积分1[50],积分2[50],积分3[50],积分4[50],积分5[50];int sum[10];结构体学生* p;} N;N *ks(){N *head,*next,*end,sum[10];head=(N *)malloc(sizeof(N));next=head for(int I=0;i10i ){printf("请第%d次输入学号,性别,名字,5科成绩\n ",I ^ 1);end=(N *)malloc(sizeof(N));scanf("%s%s%d%d%d%d%d ",end-;num,end-;名称,结束-;得分1,结束-;得分2,结束-;得分3,结束-;得分4,结束-;得分5);next-p=end;next=end } end-p=NULL;返回头;}void bl(N *head){int S[10],f[100],F[100],K[20];int V1[20],V2[20],V3[20],V4[20],V5[20];n *端=头-p;int I=0;char N[10];浮动v1、v2、v3、v4、V5;while(end){if(i==0)printf("总分前5学%s的分数一分数是%dscore2分数是% d \内核3分数是%dscore4分数是%dscore5分数是%d "、结束编号、*结束得分1、*结束得分2、*结束得分3、*结束得分4、*结束得分5);if(i==2)printf("总分前5学号%s的分数一分数是%dscore2分数是% d \内核3分数是%dscore4分数是%dscore5分数是%d "、结束编号、*结束得分1、*结束得分2、*结束得分3、*结束得分4、*结束得分5);

Q6:急求!!!!要求:每一条记录包括一个学生的学号、姓名、5门课成绩、总分、平均分。

#include #include #include void init();//初始化void brow();//浏览void find();//查找void find_by_num();//按学号查找void find_by_pjf();//按平均分高于85的查找void find_by_bjg();//按不及格的查找void del ();//删除void count ();//计算void px ();//排序void px_by_num ();//按学号排序void px_by_zf ();//按总分排序struct student { int num;//学号 char name[100];//姓名 int score1;//五门成绩 int score2; int score3; int score4; int score5; float zf;//总分 float pjf;//平均分};student st[10000],*pst;int sm=0;void main(){ int x; pst=st; do { printf("\t\t\t\t 学生信息管理系统 \t\t\t\t\n"); printf("\t************************************************************\n"); printf ("\n"); printf("\t\t1--------------------------输入\n"); printf ("\n"); printf("\t\t2--------------------------浏览\n"); printf ("\n"); printf("\t\t3--------------------------查找\n"); printf ("\n"); printf("\t\t4--------------------------删除 \n"); printf ("\n"); printf("\t\t5--------------------------排序\n"); printf ("\n"); printf("\t\t0--------------------------退出\n"); printf ("\n"); printf("\t************************************************************\n"); printf ("\n"); printf ("请输入你的选择:"); scanf("%d",&x;); switch(x) { case 1:init();break; case 2:brow();break; case 3:find();break; case 4:del();break; case 5:px();break; case 0:printf("谢谢使用,再见\n");break; } } while(x!=0); }void init()//初始化学生信息{ int i,n,t,j; printf("请输入学生数量:"); scanf("%d",&n;); for (i=sm;i<n;i++) { printf ("请输入第%d个学生的信息:\n",i+1); printf ("请输入学号:"); scanf ("%d",&st;[i].num); for (t=0;t<i;t++) { while (st[i].num==st[t].num) { printf ("该学生的学号已存在,请重新输入!\n"); scanf("%d",&st;[i].num); t=-1; } } printf ("请输入姓名:"); scanf ("%s",st[i].name); printf ("请输入第一门成绩:"); scanf("%d",&st;[i].score1); printf ("请输入第二门成绩:"); scanf("%d",&st;[i].score2); printf ("请输入第三门成绩:"); scanf("%d",&st;[i].score3); printf ("请输入第四门成绩:"); scanf("%d",&st;[i].score4); printf ("请输入第五门成绩:"); scanf("%d",&st;[i].score5); } printf ("初始化完毕!\n"); sm+=n;}void brow ()//浏览学生信息{ int i; for (i=0;i<sm;i++) { printf ("第%d个学生信息\n",i+1); printf ("学号:%4d \n",st[i].num); printf ("姓名:%s \n",st[i].name); printf ("第一门成绩:%d\n",st[i].score1); printf ("第二门成绩:%d\n",st[i].score2); printf ("第三门成绩:%d\n",st[i].score3); printf ("第四门成绩:%d\n",st[i].score4); printf ("第五门成绩:%d\n",st[i].score5); printf ("\n"); }}void del()//删除信息{ int num; int i; int y=1; printf("\n 请输入想要删除的学生学号:"); scanf("%d",&num;); for (i=0;i<sm;i++) { if(num==st[i].num) break; } if (i!=sm) { for(;i=85的同学\n"); printf ("\n"); printf("\t\t3--------------------------查找不及格同学\n"); printf ("\n"); printf ("\t\t0---------------------------退出\n"); printf ("\n"); printf("\t************************************************************\n"); printf ("\n"); printf ("请输入你的选择:"); scanf("%d",&x;); switch (x) { case 1:find_by_num();break; case 2:find_by_pjf();break; case 3:find_by_bjg();break; case 0:;break; } } while (x!=0);}void find_by_num()//按学号查询学生信息{ int i,xh; char c; do { printf ("请输入你想查找的学号:"); scanf ("%d",&xh;); for (i=0;i=sm) printf ("对不起,查无此人!/(ㄒoㄒ)/~~\n"); printf ("继续吗?(y/n)"); scanf ("%c",&c;); } while (c=getchar()!="n"); }void find_by_pjf(){ int i; count (); printf ("平均分高于85的同学有:"); for (i=0;i=85) printf ("学号:%d\n姓名:%s\n平均分:%f\n",st[i].num,st[i].name,st[i].pjf); }}void find_by_bjg(){ int i; count (); printf ("不及格的同学有:"); for (i=0;i<sm;i++) { if (st[i].pjf<60) printf ("学号:%d\n姓名:%s\n平均分:%f\n",st[i].num,st[i].name,st[i].pjf); }}void count()//学生成绩的计算{ int i; for(i=0;i<sm;i++) { st[i].zf=0; st[i].pjf=0; st[i].zf=st[i].score1+st[i].score2+st[i].score3+st[i].score4+st[i].score5; st[i].pjf=st[i].zf/5; }}void px()//排序{ int x; do { printf("\t************************************************************\n"); printf ("\n"); printf("\t\t1--------------------------按学号排序\n"); printf ("\n"); printf("\t\t2--------------------------按总分排序\n"); printf ("\n"); printf ("\t\t0---------------------------退出\n"); printf ("\n"); printf("\t************************************************************\n"); printf ("\n"); printf ("请输入你的选择:"); scanf("%d",&x;); switch (x) { case 1:px_by_num();break; case 2:px_by_zf();break; case 0:;break; } } while (x!=0);}void px_by_zf ()//按总分排序{ int i,j,k; count (); for (j=0;j<sm;j++) for (k=0;k<sm-j;k++) { if (st[k].zf<st[k+1].zf) { st[sm]=st[k]; st[k]=st[k+1]; st[k+1]=st[sm]; } } printf ("总分排名:\n"); for (k=0;k<sm;k++) printf ("第%d名学生的学号:%d\n姓名:%s\n总分:%3.1f\n",k+1,st[k].num,st[k].name,st[k].zf); printf ("\n");}void px_by_num (){ int i,j,k; count (); for (j=0;j<sm;j++) for (k=0;kst[k+1].num) { st[sm]=st[k]; st[k]=st[k+1]; st[k+1]=st[sm]; } } printf ("学号排名:\n"); for (k=0;k<sm;k++) printf ("第%d名学生的学号:%d\n姓名:%s\n总分:%3.1f\n",k+1,st[k].num,st[k].name,st[k].zf); printf ("\n");}

版权声明:admin 发表于 2021年10月24日 下午10:40。
转载请注明:查询选修了3门以上课程的学生学号,查询没有选修课程的学生学号 | 热豆腐网址之家

相关文章