我的网站

C谈话编程—高足见效查询编制!危急!!!

2022-01-01 19:51分类:白领 阅读:

回答1:

这个是俺自身做的类式的,你没干系按自身的请求改下·不难的和你的差不众,给分哦#include<stdlib.h>#include<stdio.h>#include<string.h>#include<conio.h>#define N 10/*****定义组织体*****/typedef struct students /*标记为students*/{ char num[10]; /*高足学号*/ char name[10]; /*高足姓名*/ int age; /*年龄*/ char sex[10]; /*性别*/ float cyy; /*C谈话见效*/ float computer; /*计算机见效*/ float english; /*英语见效*/ float pj; /*平均见效*/}STU;STU temp;void sort(STU students[],int n); //排序void save(STU students[] ,int n);//导出int Locate(STU students[],int n);//查询/*--------------体现菜单--------------------*/char displaymenu(){ char k; system("cls"); printf(" 高足见效管理 \n"); printf("-----------------------------------答用菜单-------------------------------------\n"); printf(" 1 输入高足见效\n\n"); printf(" 2 输出高足见效\n\n"); printf(" 3 查询高足见效\n\n"); printf(" 4 修改高足见效\n\n"); printf(" 5 查望见效排序\n\n"); printf(" 6 查望见效统计\n\n"); printf(" 7 保存数据\n\n"); printf(" 8 读取数据\n\n"); printf(" 9 退出编制\n\n"); printf(" 请选择你想进动的操作:"); k=getchar();return k;}/*****定义输出函数*****/void printheader() /*格式化输出外头*/{ printf("\n\n************************高足见效管理编制****************************\n\n\n"); printf("| 学号 | 姓名 | 年龄 | 性别 | C谈话见效 |计算机见效 | 英语见效| 平均见效 | \n"); }void printdata(STU pp) /*格式化输出外中数据*/{ STU* p; p=&pp; printf("| %-5s| %-5s | %-4d| %-4s| %-6.0f| %-6.0f| %-5.0f| %-6.0f|\n",p->num,p->name,p->age,p->sex,p->cyy,p->computer,p->english,p->pj);}/*****添加高足讯歇*****/int add(STU students[] ,int *n){ int i=0; system("cls"); printf(" \n"); printf(" 请输入高足讯歇 \n"); printf(" 退出请在高足号处输入:0 \n"); printf("请输入高足学号:\n "); scanf("%s",students[i].num); while(strcmp(students[i].num,"0") )//当输入的学号为0时终结输入 { printf("请输入高足姓名:\n "); scanf("%s",students[i].name); printf("****************\n\n\n"); printf("请输入高足年龄:\n "); scanf("%d",&students[i].age); printf("****************\n\n\n"); printf("请输入高足性别:\n"); scanf("%s",students[i].sex); printf("****************\n\n\n"); printf("请输入C谈话见效:\n "); scanf("%f",&students[i].cyy); printf("****************\n\n\n"); printf("请输入计算机见效:\n "); scanf("%f",&students[i].computer); printf("****************\n\n\n"); printf("请输入英语见效:\n "); scanf("%f",&students[i].english); printf("****************\n\n\n"); students[i].pj=(students[i].cyy+students[i].computer+students[i].english)/3; printf("高足平均见效: %-8.0f\n",students[i].pj); i++; printf("****************\n\n\n"); printf("请输入高足学号:\n "); scanf("%s",students[i].num); } *n=i; save(students ,i); return i; }/*****查询高足讯歇函数*****/int Locate(STU students[],int n) { int k,m=-1; char num[10],name[20]; int i=0; system("cls"); printf(" 退出请输入:0 \n"); printf("请选择以什么手段查询:1).按高足学号查询 2).按高足姓名查询 \n"); scanf("%d",&k); if(k==1) { printf("请输入你要查询的高足学号:\n"); scanf("%s",num); while(i<n) { if(strcmp(students[i].num,num)==0) /*若找到学号*/ { printf(">>高足学号:%s\n*高足姓名:%s\n*高足年龄:%d\n*高足性别:%s\n>C谈话见效:%-8.0f\n>计算机见效:%-8.0f\n>>英语见效:%-8.0f\n>>平均见效:%-8.0f\n",students[i].num,students[i].name,students[i].age,students[i].sex,students[i].cyy,students[i].computer,students[i].english,students[i].pj); m=i; getchar(); break; } i++; } if(i>=n) printf("别国所找高足讯歇\n"); getchar(); } else if(k==2) { printf("请输入你要查询的高足姓名:\n"); scanf("%s",name); while(i<n) { if(strcmp(students[i].name,name)==0) /*若找到姓名*/ { printf("高足学号:%s\n高足姓名:%s\n高足年龄:%d\n高足性别:%s\n高足C谈话见效:%-8.0f\n计算机见效:%-8.0f\n英语见效:%-8.0f\n平均见效:%-8.0f\n",students[i].num,students[i].name,students[i].age,students[i].sex,students[i].cyy,students[i].computer,students[i].english,students[i].pj); m=i; getchar(); break; } i++; } if(i>=n) printf("别国所找高足讯歇\n"); } return m;/*返回一个根m便于修改高足讯歇*/ getchar();}/*****体现函数*****/ void input(STU students[],int n) { int i; system("cls"); //清屏 if(n==0) /*外示别国高足讯歇记录*/ { printf("\n别国高足记录!\n"); } printf("\n\n"); printheader(); /*输出外格头部*/ i=0; while(i<n) /*逐条输出数组中存储的高足讯歇*/ { printdata(students[i]); i++; } getchar(); }/*****修改子程序*****/void Modify(STU students[],int n){ int i; if(n<=0) { system("cls"); printf(" \n退出请输入:0 \n"); printf("\n----------not found!----------\n"); getchar(); return ; } system("cls"); printf("修改高足讯歇"); input(students,n); i=Locate(students,n); /*查询到该数组元素,并返回下标值*/ if(i!=-1) /*若i!=-1,外明已经找到该数组元素*/ { printf("请输入新的高足讯歇: \n"); printf(" 学号: "); scanf("%s",students[i].num); printf(" 姓名: "); scanf("%s",students[i].name); printf(" 年龄: "); scanf("%d",&students[i].age); printf(" 性别: "); scanf("%s",students[i].sex); printf(" C谈话: "); scanf("%f",&students[i].cyy); printf(" 英语: "); scanf("%f",&students[i].english); printf(" 计算机: "); scanf("%f",&students[i].computer); students[i].pj=(students[i].cyy+students[i].english+students[i].computer)/3; printf("平均见效: %-9.0f\n",students[i].pj); save(students ,n); printf("\n-------------修改成功!-------------\n");} else printf("not found!\n"); getchar();}/*****高足见效排序子程序*****/ void sort(STU students[],int n){ int i,j,a,b,c,d,e,f,k; float p; printf(" \n退出请输入:0 \n"); printf("见效排序手段选择: 1.按C谈话 2.按英语 3.按平均 \n "); scanf("%d",&k); if(k==1) /*用选择法对C谈话排序*/ { for(i=0; i<n; i++) for(j=0;j<n-1;j++) { if(students[i].english<students[j+1].english) { temp=students[i]; students[i]=students[j+1]; students[j+1]=temp; } }} else if(k==2)/*英语用冒泡法*/ { for(a=0; a<n-1; a++) { c=a; for(b=a+1; b<n; b++) if(students[b].cyy>students[c].cyy) c=b; if (c!=a) { temp=students[a]; students[a]=students[c]; students[c]=temp; } } } if(k==3) /*平均见效用插入法*/ { for(d=1;d<n;d++) { p=students[d].pj; for(e=0;e<d;e++) if(students[e].pj<p) break; if(e==d) continue; for(f=d;f>e;f--) students[f]=students[f-1]; students[e]=temp; } } input(students,n); /*体现排序后的一切记录*/ save(students ,n); printf("\n 排序完美!\n"); }/*****统计高足分数在各等级的人数子程序*****/void Tongji(STU students[],int n){ int count6085=0,count85=0,count60=0; int i=0; system("cls"); printf(" \n退出请输入:0 \n"); input(students,n);i=0;while(i<n){ if(students[i].pj>85) {count85++;i=i+1;continue;} /*平均见效=>85*/ if(students[i].pj>=60&&students[i].pj<=85) {count6085++;i=i+1;continue;} /*60<平均见效<85*/ if(students[i].pj<60) {count60++;i=i+1;continue;} /*平均见效<60*/}printf("\n************统计成果************\n\n");printf("平均见效高于85分的人数:%d \n",count85);printf(" \n");printf("平均见效在65分和80分之间的人数:%d \n",count6085);printf(" \n");printf("平均见效矬于60分的人数:%d \n",count60);printf(" \n");printf("\n\n**********统计终结**********");getchar();}/*****导出或保存数据*****/void save(STU students[],int n){ FILE* fp; int i=0; fp=fopen("students","wb+");/*以读写手段掀开创建一个二进制文件*/ if(fp==NULL) /*掀开文件倒退*/ { printf("\n*******掀开文件误差!*******\n"); return ; } for(i=0;i<n;i++) { if(fwrite(&students[i],sizeof(STU),1,fp)==1)/*每次写一条记录或一个组织数组元素至文件*/ { continue; } else { break; } } if(i>0) { getchar(); printf("\n\n*共导出%d个高足讯歇*\n",i); getchar(); } else { system("cls"); printf("**别国讯歇导出*\n"); getchar(); } fclose(fp); /*关闭此文件*/}/*****导入数据*****/void Read(STU students[],int * n){ FILE* fp; int i=0; fp=fopen("students","rb");/*以只读手段掀开一个已有的二进制文件*/ if(fp==NULL) /*掀开文件倒退*/ { printf("\n********掀开文件误差!********\n"); exit(0); } for(i=0;i<N;i++) { if(fread(&students[i],sizeof(STU),1,fp)==1)/*每次读一条记录或一个组织数组元素至文件*/ continue; else break; } *n=i; if(i>0) { printf("\n\n************共导入:%d 个高足讯歇 ************\n",i); getchar(); } else { system("cls"); printf("************别国讯歇导入!************\n"); getchar(); } getchar(); fclose(fp); /*关闭此文件*/}/*****主函数*****/void main(){ STU students[N]; int n; char s1[3],s2[3]={"1"}; int i,k; printf("\n\n"); printf("******************************************************\n"); printf("^ < 招待答用本柔件> ^\n\n"); printf("^ <版本 : oooo> ^\n\n\n"); printf("^ <姓名>:卢景光 <班级>: 09623 <学号>:34 ^\n"); printf("^ ^\n"); printf("******************************************************\n"); printf("\n\n"); for(i=0;i<3;i++) { printf("\n请输入暗号:"); gets(s1);if(strcmp(s1,s2)==0) break; else printf("\n>暗号误差,请重新输入"); } if(i>2) { printf("\n您已不断3次输错,编制将退出!\n"); exit(0); } else { while(1) { k=displaymenu(); switch(k) { case '1' : add(students,&n); break; case '2' : Read(students,&n);input(students,n) ;break; case '3' : Read(students,&n);Locate(students,n);break; case '4' : Read(students,&n);Modify(students,n);;break; case '5' : Read(students,&n);sort(students,n);break; case '6' : Read(students,&n);Tongji(students,n); break; case '7' : save(students,n) ;break; case '8' : Read(students,&n);break; case '9' : system("cls"); printf("\n **********谢谢您的答用**********\n");exit(0);break; default : printf("\n\n输入误差,输入必须是0~9之间的一个数字!请重新输入\n");getchar();getchar(); } } }}

回答2:

你放到CSDN外包上往,出个1500块,有人会接的

回答3:

伪如单独开发一个查询编制,涉及到的内容比较众,常见的有技术增援、服务器增援、代码增援等,还需求兴奋的开发费用,平时黉舍和小企业是无法赞成这笔费用的,而且还需求专人来维护,是以自立开发一套查询编制,对于黉舍和小企业来说是不太现实的!其实黉舍和企业没干系行使易查分来生成查询编制,以上的开发项此刻都不需求,只要把需求查询的内容做成excel,上传到易查分,就能生成,基本上3分钟就没干系做益!后续也不必专人维护,师长们没干系自身搭建一个自身黉舍的管理后台,很方便!你没干系试试哦~~

郑重声明:文章来源于网络,仅作为参考,如果网站中图片和文字侵犯了您的版权,请联系我们处理!

上一篇:全国大学英语四六级考试在那处报名

下一篇:海底捞大门生69折怎么用

相关推荐

返回顶部