创业找项目 导航

高校最低录取分数线

来源网站:创业找项目 2018-06-16
创业找项目

篇一:高校最低录取分数线的查询源代码

高校最低录取分数线的查询

问题描述:

现要开发一个开放式的高校本科招生最低录取分数线的查询系统,供师生和学生家长等查询,高校自愿放入该校的信息,可能随时有高校加入。

功能要求:

要求实现的查询功能有:

(1) 查询等于用户给定分数的高校;

(2) 查询大于(或小于)用户给定分数的高校;

(3) 查询最低录取分数线在用户给定的分数段中的高校。

(注:为了省下打字的工夫,函数功能相似的都压缩到了一起,所以个别函数会显得烦琐!)

/*************** 头文件 ***************/

#include"stdio.h"

#include"windows.h"

#define OK 1

#define ERROR 0

typedef struct node//学校名称

{

char SchoolName[10],SchoolNum[5];

struct node *next;

}SchoolList;

typedef struct //录取分数对应的学校

{

int PassMark;

SchoolList A;

}PassMark_Info;

typedef struct Node //二叉树节点定义

{

PassMark_Info data;

struct Node *lchild,*rchild;

}Btree,*QBtree;

void xy(int x, int y)

{

COORD c;

c.X=x-1;

c.Y=y-1;

SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),c); }

/************** 保存文件 ******************/

void InOrder_(QBtree bt,FILE *fp)

{

if(bt!=NULL)

{

InOrder_(bt->lchild,fp);

fprintf(fp,"%s\t%s\t%d\t",bt->data.A.SchoolNum,bt->data.A.SchoolName,bt->data.PassMark);

InOrder_(bt->rchild,fp);

}

}

int SaveFiles(QBtree bt)

{

FILE *fp;

if((fp=fopen("passmark","wb"))==NULL)

{

printf("\tERROR...");

return 0;

}

else InOrder_(bt,fp);

fclose(fp);

return OK;

}

/*************************************/

void Print(QBtree bt)//输出

{

SchoolList *p=&(bt->data.A);

while(p)

{

printf("%10s\t%10s\t%10d\n",p->SchoolNum,p->SchoolName,bt->data.PassMark);

p=p->next;

}

}

void InOrder(QBtree bt,int PassMark,int PassMark_,int k)

{

if(bt!=NULL)

{

InOrder(bt->lchild,PassMark,PassMark_,k);

{

if((k==1&&bt->data.PassMark<=PassMark)||(k==2&&bt->data.PassMark>=PassMark)||(k==0&&PassMark<=bt->data.PassMark&&bt->data.PassMark<=PassMark_))

//printf("%10s\t%10s\t%10d\n",bt->data.A.SchoolNum,bt->data.A.SchoolName,bt->data.PassMark);

Print(bt);

}

InOrder(bt->rchild,PassMark,PassMark_,k);

}

}

Btree* Search(QBtree bt,int PassMark)

{

if((bt==NULL)||(bt->data.PassMark==PassMark))

return bt;

else if(bt->data.PassMark>PassMark)

return Search(bt->lchild,PassMark);

else return Search(bt->rchild,PassMark);

}

Btree* Bt_Insert(QBtree *bt,FILE *fp)

{

Btree *p,*pre,*q;

q=(Btree *)malloc(sizeof(Btree));

if(q!=NULL)

{

if(fp==NULL)

{

puts("请输入高校名称、学校代码和最低录取分数线:");

scanf("%s%s%d",q->data.A.SchoolName,q->data.A.SchoolNum,&q->data.PassMark);

}

else

fscanf(fp,"%s\t%s\t%d\t",q->data.A.SchoolNum,q->data.A.SchoolName,&q->data.PassMark);

q->lchild=q->rchild=NULL;

q->data.A.next=NULL;

}

if(*bt==NULL) {*bt=q;return *bt;}

p=*bt;

while(p!=NULL)

{

pre=p;

if(p->data.PassMark>q->data.PassMark) p=p->lchild;

else p=p->rchild;

}

if(pre->data.PassMark>q->data.PassMark) pre->lchild=q;

else if(pre->data.PassMark<q->data.PassMark) pre->rchild=q; else pre->data.A.next=&(q->data.A);

return q;

}

/************** 读取文件 ****************/

int ReadFiles(QBtree *bt)

{

FILE *fp;

if((fp=fopen("passmark","rb"))==NULL)

{

printf("\tERROR...");

return 0;

}

else

while(!feof(fp))

Bt_Insert(bt,fp);

fclose(fp);

return 1;

}

/***************************************/

void help()

{

printf("\n\n\t不好意思暂时没什么能帮助你的!");

system("pause");

}

int Menu()

{

int i;system("cls");

printf("\n");

printf("高校最低录取分数线查询系统菜单\n"); printf("┌──────────────────┬───────────────────┐");

printf("│ 1:按考生分数查询 │ 2:按分数线查询 │");

printf("├──────────────────┼───────────────────┤");

printf("│ 3:按分数段查询│ 4:添加高校信息 │");

printf("├──────────────────┼───────────────────┤");

printf("│ 5:系统帮助 │ 6:退

出│");

printf("├──────────────────┴───────────────────┤");

printf("│ 选择操作项

(1~6): │"); printf("└──────────────────────────────────────┘");

xy(23,10);

for(;;)

{

scanf("%d",&i);

getchar();

if(i<1||i>6)

{

xy(5,10);

puts(" 数据不合法!请重新选择操作项

(1~6): ");

xy(40,10);

continue;

}

else return i;

}

}

void main()

{

int i,j;

QBtree temp,bt=NULL;

ReadFiles(&bt);

while(1)

{

i=Menu();

system("cls");

switch(i)

{

case 1:

printf("输入成绩:");

scanf("%d",&i);

temp=Search(bt,i);

if(temp==NULL)

{

printf("没有相关信息,建议选择2或3方式查找!");

system("pause");

}

else

{

printf("有以下高校的最低录取线是 %d 分:\n 高校代码\t 高校名称\t最低录取线\n",i);

Print(temp);

篇二:2015年全国二本大学在北京理科录取分数线

2015年全国二本大学在北京理科录取分数线

2015年北京市高招本科二批高校录取最低分数(理工类)

篇三:2015年全国一本大学在陕西理科录取分数线

2015年全国一本大学在陕西理科录取分数线

高校最低录取分数线》出自:创业找项目
链接地址:http://m.gjknj.com/duwu/10966.html 转载请保留,谢谢!

相关文章

推荐文章

推荐专题

创业找项目

© 创业找项目 m.gjknj.com 版权所有