文章目录:
跪求c语言教务管理系统源代码
#include stdio.h
#include string.h
#include windows.h
struct student
{
long int num;
char name[20];
int age;
char sex[4];
char b[30];
char p[15];
};
int n=0;
struct student stu[100];
struct student *p;
void lr();
void ll();
void cx();
void xg();
void sc();
void main()
{
int z;
printf("+---------------------------+\n");
printf("| 欢迎使用学生信息管理系统 |\n");
printf("+---------------------------+\n");
printf("提示:为保证您的操作得到保存,请按正常顺序退出系统^_^\n");
do
{
printf("\n\t\t\t--------------------------------\n");
printf("\t\t\t+ 主菜单 |\n");
printf("\t\t\t--------------------------------\n");
printf("\t\t\t+ [1]----录入学生信息 |\n");
printf("\t\t\t+ [2]----浏览学生信息 |\n");
printf("\t\t\t+ [3]----查询学生信息 |\n");
printf("\t\t\t+ [4]----删除学生信息 |\n");
printf("\t\t\t+ [5]----修改学生信息 |\n");
printf("\t\t\t+ [0]----退出系统 |\n");
printf("\t\t\t--------------------------------\n");
printf("请输入您的选择:");
scanf("%d", z);
system("color 2f");
switch(z)
{
case 0 : break;
case 1 :lr();break;
case 2 :ll();break;
case 3 :cx();break;
case 4 :sc();break;
case 5 :xg();break;
default:printf("\n无效选项!");
}
}
while(z!= 0);
}
void lr()/*录入函数*/
{
int y;
if(n==0)
p=stu;
do
{
printf("--------------------\n");
printf("请输入学生的学号:");
scanf("%ld",p-num);
printf("请输入学生的姓名:");
scanf("%s",p-name);
printf("请输入学生的年龄:");
scanf("%d",p-age);
printf("请输入学生的性别:");
scanf("%s",p-sex);
printf("请输入学生的地址:");
scanf("%s",p-b);
printf("请输入学生的电话:");
scanf("%s",p-p);
n++;
p++;
printf("\n1.继续输入.\n0.输入完毕.\n");
printf("请选择:");
scanf("%d",y);
}
while(y==1);
printf("提示:输入完毕!你一共输入%d个\n",n);
}
void ll()/*浏览函数*/
{
int i,j;
if(n!=0)
{ printf("学生总数:%d\n", n);
printf("学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
printf("-----------------------------------------------------\n");
for(i=0;in;i++)
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);
}
else printf("提示:无学生数据,请输入数据!");
}
void cx()/*查询函数*/
{
int c;
int w,i,j=0;
char name[20];
if(n!=0)
{
do{ printf("\n");
printf("+--------------------+\n");
printf("| 按学号查询 请按 1 |\n");
printf("| 按姓名查询 请按 2 |\n");
printf("| 取消 请按 0 |\n");
printf("+--------------------+\n");
printf("请输入您的选择:");
scanf("%d", c);
switch(c)
{
case 0:break;
case 1:
printf("请输入学生的学号;");
scanf("%ld", w);
printf("\n");
for(i=0;in;i++)
if(stu[i].num==w)
{
printf("\n学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);
j=1;
}
if(j==0)
printf("提示:没有该学生记录,请核对!");
break;
case 2:
printf("请输入学生的姓名:");
scanf("%s", name);
printf("\n");
for(i=0;in;i++)
if(strcmp(name,stu[i].name)==0)
{
printf("\n学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
j=1;
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);
}
if(j==0)
printf("提示:没有该学生记录,请核对!");
break;
default:
printf("\n提示:无效选项!");
break;
}
}while(c!= 0);
}else printf("提示:无学生数据,请输入数据!");
return;
}
void xg()/*修改函数*/
{
long int num;
int i,j,c;
if(n!=0)
{
printf("请输入您要修改的学生的学号:");
scanf("%ld", num);
printf("\n");
for(i=0;in;i++)
if(stu[i].num==num)
j=i;
do{
printf("请选择您要修改的学生的信息内容:\n");
printf("+----------------------+\n");
printf("| 姓名 请按 1 |\n");
printf("| 年龄 请按 2 |\n");
printf("| 性别 请按 3 |\n");
printf("| 学号 请按 4 |\n");
printf("| 地址 请按 5 |\n");
printf("| 电话 请按 6 |\n");
printf("| 取消 请按 0 |\n");
printf("+----------------------+\n");
printf("请输入您的选择:");
scanf("%d", c);
printf("\n");
switch(c)
{
case 0:break;
case 1:printf("请输入新姓名:");
scanf("%s",stu[j].name);
break;
case 2:printf("请输入新年龄:");
scanf("%d",stu[j].age);
break;
case 3:printf("请输入新性别:");
scanf("%s",stu[j].sex);
break;
case 4:printf("请输入新学号:");
scanf("%ld",stu[j].num);
break;
case 5:printf("请输入新地址:");
scanf("%s",stu[j].b);
break;
case 6:printf("请输入新电话:");
scanf("%s",stu[j].p);
break;
default:
printf("\n无效选项!");
break;
}
}while(c!= 0);
}else printf("提示:无学生数据,请输入数据!");
}
void sc()/*删除函数*/
{
long int num;
int i,j,e;
if(n!=0)
{
printf("学号\t姓名\t年龄\t性别\t地址\t\t电话\n");
printf("-----------------------------------------------------\n");
for(i=0;in;i++)
printf("%ld\t%s\t%d\t%s\t%s\t\t%s\n",stu[i].num,stu[i].name,stu[i].age,stu[i].sex,stu[i].b,stu[i].p);
printf("请输入您要删除的学生的学号:");
scanf("%ld", num);
printf("\n");
for(i=0;in;i++)
if(num==stu[i].num)
j=i;
if(j!=(n-1))
{
for(e=i-1;en;e++,j++)
{
stu[j].num=stu[j+1].num;
strcpy(stu[j].name,stu[j+1].name);
strcpy(stu[j].sex,stu[j+1].sex);
stu[j].age=stu[j+1].age;
strcpy(stu[j].b,stu[j+1].b);
strcpy(stu[j].p,stu[j+1].p);
n--;p--;
}
}else {n--;p--;}
printf("提示:删除完毕!");
}else printf("提示:无学生数据,请输入数据!");
}
求教学管理系统源程序(C\C++)
太巧了,我们上上个星期做了个C++实践,就是这个题目。哈哈,你太走运了。
这个程序挺难写的,我的程序代码如下:
#includeiostream.h
#includefstream.h
#includestring
struct corse
{
char course[10];
int score;
};
class Stu
{
int Class;
int id;
char name[10];
corse p[10];
public:
void getdate(int a,int b,char c[10],char d[10][10],int e[10])
{ int i; Class=a; id=b; strcpy(name,c);
for(i=0;i10;i++)
{ strcpy(p[i].course,d[i]);
p[i].score=e[i];}
}
void sortdate();
void output_failor(char a[10]);
void output_first5(char a[10]);
void output_average(char a[10]);
void output_gradelist_ofoneclass(char a[10],int c);
void output()
{int k;
coutClass'\t'id'\t'name'\t';
for(k=0;k10;k++)
{ if(p[k].score==0)continue;
coutp[k].course;
cout"-"p[k].score'\t';
}
coutendl;
}
void copy(Stu obj)
{ int i;
Class=obj.Class;
id=obj.id;
strcpy(name,obj.name);
for(i=0;i10;i++)
{strcpy(p[i].course,obj.p[i].course);
p[i].score=obj.p[i].score;
}
}
}stu[50];
void Stu::output_failor(char a[10])
{ int j(0) ,i;
for(i=0;i50;i++)
for(j=0;j10;j++)
{
if ((strcmp(stu[i].p[j].course,a)==0)(stu[i].p[j].score60))
stu[i].output();
}
}
void Stu::output_first5(char a[10])
{
int i=0, j=0 ,k,l,r(0);
for(i=0;i49;i++)
for(j=0;j10;j++)
for(k=i+1;k50;k++)
for(l=0;l10;l++)
{ if ((strcmp(stu[i].p[j].course,stu[k].p[l].course)==0)(strcmp(stu[i].p[j].course,a)==0)(stu[i].p[j].scorestu[k].p[l].score))
{
Stu m=stu[i];
stu[i].copy(stu[k]);
stu[k].copy(m);
}
}
for(i=0;i50;i++)
{
for(j=0;j10;j++)
if(strcmp(stu[i].p[j].course,a)==0)
{
coutstu[i].Class'\t'stu[i].id'\t'stu[i].name'\t'stu[i].p[j].course'\t'stu[i].p[j].score'\n';
}
if(r4) break;
}
}
void Stu::output_gradelist_ofoneclass(char a[10],int c)
{
int i=0, j=0 ,k,l;static r(0);
for(i=0;i49;i++)
for(j=0;j10;j++)
for(k=i+1;k50;k++)
for(l=0;l10;l++)
{ if (strcmp(stu[i].p[j].course,stu[k].p[l].course)==0strcmp(stu[i].p[j].course,a)==0)
if((stu[i].Class==stu[k].Class==c)(stu[i].idstu[k].id))
{
Stu m=stu[i];
stu[i].copy(stu[k]);
stu[k].copy(m);
}
}
for(i=0;i50;i++)
for(j=0;j10;j++)
if((strcmp(stu[i].p[j].course,a)==0)(stu[i].Class==c))
stu[i].output();
}
void Stu:: output_average(char a[10])
{
int k,i=0, j=0 , g,b,c[5]={1,2,3,4,5}, r[5]={0,0,0,0,0},sum[5]={0,0,0,0,0};
double m[5];
for (k=0;k5;k++)
for(i=0;i50;i++)
for(j=0;j10;j++)
{ if ((strcmp(stu[i].p[j].course,a)==0 )( stu[i].Class==c[k]))
{ sum[k]+=stu[i].p[j].score;
r[k]++;
}
}
for(g=0;g4;g++)
for(b=g+1;b5;b++)
{
if(sum[g]sum[b])
{ i=sum[g]; j=c[g];c[g]=c[b];c[b]=j;k=r[g];r[g]=r[b];r[b]=k;
sum[g]=sum[b];
sum[b]=i;
}
if(sum[g]!=0) m[g]=(double)sum[g]/r[g];
else m[g]=0;
}
if (sum[4]=0) m[4]=0;
else m[4]=(double)sum[4]/r[4];
for(g=0;g4;g++)
for(b=g+1;b5;b++)
{
if(m[g]m[b]){j=m[g];m[g]=m[b];m[b]=j;k=c[g];c[g]=c[b];c[b]=k;}
}
for(g=0;g5;g++) if(m[g]!=0)
coutc[g]"班的平均分为:"m[g]endl;
}
void main()
{
char a[10],b[10],c[10],d[10],e[10],mark,h[10][10];
int j,f,l[10]={0,0,0,0,0,0,0,0,0,0},g,x,z;static int y=0;
cout" 教 学 管 理 系 统 "endl;
cout" 1.添加学生信息; "endl;
cout" 2.查询某门课程的不及格名单; "endl;
cout" 3.查询某门课程的全年级的前五名;"endl;
cout" 4.查询每个班某门课程的平均成绩;"endl;
cout" 5.查询某班某门课程的成绩单. "endl;
loop: cout" 请输入您的选择(1-5):";coutendl;
cinx;
switch(x)
{
case 1: cout"请输入学生信息: (输入-1时结束输入)"endl;
cout"班级\t学号\t姓名\t选修课1\t成绩1\t选修课2\t成绩2\t..."endl;
for(y;y50;y++)
{
cinf;
if(f==-1)goto loop;
cing;
cine;
for(j=0;j10;j++)
{
cinh[j];
cinl[j];
mark=cin.get();
if(mark=='\n') break;
}
stu[y].getdate(f,g,e,h,l);
}goto loop;break;
case 2:
cout"输入您想要哪门课程的不及格名单:"endl;
cina;
cout"班级\t学号\t姓名\t选修课\t成绩\t"endl;
stu[0].output_failor(a);goto loop;break;
case 3:
cout"请输入您想要哪门课程的全年级的前五名"endl;
cinb;
stu[0].output_first5(b);
goto loop;break;
case 4:cout"输入您想要哪门课程的每班平均成绩:"endl;
cinc;
stu[0].output_average(c);
goto loop;
break;
case 5: cout"输入您想要哪门课程、哪个班级的成绩单:";
cindz;
stu[0].output_gradelist_ofoneclass(d,z);
goto loop;break;
default:cout"输入错误,请重新输入."endl;
goto loop;
}
}
实验室管理系统源码
public FoPage findAllOperationAgent(OperationAgentBaseEntity entity,
int pageNum, int pageSize){
logger.info("查找空余实验室");
FoHQLQuery query = new FoHQLQuery();
String hql = "from OperationAgentBaseEntity a ";
//查询条件
String whereSql = " where 1=1 ";
//实验室名字或编号
if(entity.getAgentname()!=null!entity.getAgentname().trim().equals("")){
whereSql += " and a.agentname like :agentName";
query.setString("agentName", "%"+entity.getAgentname()+"%");
}
//显示条数
String countHql = "select count(*) " + hql+ whereSql; query.setHQL(hql + whereSql + " order by a.agentname ");
query.setCountHQL(countHql );
query.setPageNum(pageNum);
query.setpageSize(pageSize);
return this.execFoPageQuery(query);
} public String delOperationAgentEntity(final String[] agentCode){
logger.info("删除当前已使用实验室");
String message = "delError";
try
{
message = (String)this.getHibernateTemplate().execute(
new HibernateCallback() {
public Object doInHibernate(Session session) throws HibernateException {
Transaction tx = session.beginTransaction();
try {
for(int i=0;agentCode!=nulliagentCode.length;i++){
SQLQuery delAgentQuery = session.createSQLQuery("delete from operation_agent_base c where c.agentcode ='"+agentCode[i]+"'");
SQLQuery delTelQuery = session.createSQLQuery("delete from OPERATION_CUSTOMER_TELEPHONE c where c.customernum ='"+agentCode[i]+"'");
delAgentQuery.executeUpdate();
delTelQuery.executeUpdate();
}
tx.commit();
}catch(Exception e){
tx.rollback();
logger.error("删除\r\n"+e.toString());
e.printStackTrace();
throw new HibernateException(e);
}
return "delSuccess";
}
}
);
}catch(Exception e)
{
logger.error("删除\r\n"+e.toString());
message = "delError";
}
return message;
}
遇到相同的有提示就xietiaosql判断下 select count(*) from tbl where houseId = ? 如果返回值等于0 则无相同 反之则反
按姓名查询 请按 2 |\n"); printf("| 取消 请按 0 |\n"); printf("+--------------------+\n"); printf("
tu[50];void Stu::output_failor(char a[10]){ int j(0) ,i; for(i=0;i50;i++) for(j=0;j10;j++) { if
f("请输入您要删除的学生的学号:"); scanf("%ld", num); printf("\n"); for(i=0;in;i++) if(num==stu[i].nu