c语言成绩查询(c语言中根据姓名查询成绩)

c语言中根据姓名查询成绩

#include “conio.h“
struct student
{
char name ;
int score;
};
int find (struct student s);void main()
{
int i=0;
struct student stu;
for(i=0;i《5;i++)
{
printf(“输入第%d个学生的姓名:“,i+1);
scanf(“%s“,stu[i].name);
printf(“输入第%d个学生的成绩:“,i+1);
scanf(“%d“,&stu[i].score);
}
int nIndex=find(stu);
if(nIndex!=-1)
printf(“找到该同学信息,该同学位于第%d个位置(数组下标)“,nIndex);
getch();
}int find(struct student s)
{
char name;
int i=0;
int nIndex=-1;
printf(“输入要查询学生的姓名:“);
scanf(“%s“,name);
for(i=0;i《5;i++)
{
if(strcmp(s[i].name,name)==0)
{
nIndex=i;
break;
}
}
return nIndex;
}

C语言题 学生考试成绩查询程序

#include 《stdio.h》
#include 《string.h》
#include 《ctype.h》
#include 《stdlib.h》
#define STU_NUM 40 /* 最多的学生人数 */
#define COURSE_NUM 10 /* 最多的考试科目 */
struct student
{
int number; /* 每个学生的学号 */
char name; /* 每个学生的姓名 */
int score[COURSE_NUM]; /* 每个学生M门功课的成绩 */
int sum; /* 每个学生的总成绩 */
float average; /* 每个学生的平均成绩 */
};
typedef struct student STU;
/* 函数功能: 向链表的末尾添加从键盘输入学生的学号、姓名和成绩等信息
函数参数: 结构体指针head,指向存储学生信息的结构体数组的首地址
整型变量n,表示学生人数
整型变量m,表示考试科目
函数返回值: 无
*/
void AppendScore(STU *head, int n, int m)
{
int j;
STU *p;

for (p=head; p《head+n; p++)
{
printf(“\nInput number:“);
scanf(“%d“, &p-》number);
printf(“Input name:“);
scanf(“%s“, &p-》name);
for (j=0; j《m; j++)
{
printf(“Input score%d:“, j+1);
scanf(“%d“, p-》score+j);
}
}
}
/* 函数功能: 打印n个学生的学号、姓名和成绩等信息
函数参数: 结构体指针head,指向存储学生信息的结构体数组的首地址
整型变量n,表示学生人数
整型变量m,表示考试科目
函数返回值: 无
*/
void PrintScore(STU *head, int n, int m)
{
STU *p;
int i;
char str = {’\0’}, temp;

strcat(str, “Number Name “);
for (i=1; i《=m; i++)
{
strcat(str, “Score“);
itoa(i,temp, 10);
strcat(str, temp);
strcat(str, “ “);
}
strcat(str,“ sum average“);

printf(“%s“, str); /* 打印表头 */
for (p=head; p《head+n; p++) /* 打印n个学生的信息 */
{
printf(“\nNo.%3d%8s“, p-》number, p-》name);
for (i=0; i《m; i++)
{
printf(“%7d“, p-》score[i]);
}
printf(“%11d%9.2f\n“, p-》sum, p-》average);
}
}
/* 函数功能: 计算每个学生的m门功课的总成绩和平均成绩
函数参数: 结构体指针head,指向存储学生信息的结构体数组的首地址
整型变量n,表示学生人数
整型变量m,表示考试科目
函数返回值: 无
*/
void TotalScore(STU *head, int n, int m)
{
STU *p;
int i;

for (p=head; p《head+n; p++)
{
p-》sum = 0;
for (i=0; i《m; i++)
{
p-》sum = p-》sum + p-》score[i];
}
p-》average = (float)p-》sum / m;
}
}
/* 函数功能: 用选择法按总成绩由高到低排序
函数参数: 结构体指针head,指向存储学生信息的结构体数组的首地址
整型变量n,表示学生人数
函数返回值: 无
*/
void SortScore(STU *head, int n)
{
int i, j, k;
STU temp;

for (i=0; i《n-1; i++)
{
k = i;
for (j=i; j《n; j++)
{
if ((head+j)-》sum 》 (head+k)-》sum)
{
k = j;
}
}
if (k != i)
{
temp = *(head+k);
*(head+k) = *(head+i);
*(head+i) = temp;
}
}
}
/* 函数功能: 查找学生的学号
函数参数: 结构体指针head,指向存储学生信息的结构体数组的首地址
整型变量num,表示要查找的学号
整型变量n,表示学生人数
函数返回值: 如果找到学号,则返回它在结构体数组中的位置,否则返回-1
*/
int SearchNum(STU *head, int num, int n)
{
int i;

for (i=0; i《n; i++)
{
if ((head+i)-》number == num) return i;
}
return -1;
}
/* 函数功能: 按学号查找学生成绩并显示查找结果
函数参数: 结构体指针head,指向存储学生信息的结构体数组的首地址
整型变量n,表示学生人数
整型变量m,表示考试科目
函数返回值: 无
*/
void SearchScore(STU *head, int n, int m)
{
int number, findNo;

printf(“Please Input the number you want to search:“);
scanf(“%d“, &number);
findNo = SearchNum(head, number, n);
if (findNo == -1)
{
printf(“\nNot found!\n“);
}
else
{
PrintScore(head+findNo, 1, m);
}
}
/* 函数功能: 显示菜单并获得用户键盘输入的选项
函数参数: 无
函数返回值: 用户输入的选项
*/
char Menu(void)
{
char ch;
printf(“\nManagement for Students’ scores\n“);
printf(“ 1.Append record\n“);
printf(“ 2.List record\n“);
printf(“ 3.Search record\n“);
printf(“ 4.Sort record\n“);
printf(“ 0.Exit\n“);
printf(“Please Input your choice:“);
scanf(“ %c“, &ch); /*在%c前面加一个空格,将存于缓冲区中的回车符读入*/
return ch;
}
int main()
{
char ch;
int m, n;
STU stu[STU_NUM];

printf(“Input student number and course number(student number《40,course number《10):“);
scanf(“%d,%d“, &n, &m);
while (1)
{
ch = Menu(); /* 显示菜单,并读取用户输入 */
switch (ch)
{
case’1’:AppendScore(stu, n, m);/* 调用成绩添加模块 */
TotalScore(stu, n, m);
break;
case’2’:PrintScore(stu, n, m); /* 调用成绩显示模块 */
break;
case’3’:SearchScore(stu, n, m);/* 调用按学号查找模块 */
break;
case’4’:SortScore(stu, n); /* 调用成绩排序模块 */
printf(“\nSorted result\n“);
PrintScore(stu, n, m); /* 显示成绩排序结果 */
break;
case’0’:exit(0); /* 退出程序 */
printf(“End of program!“);
break;
default:printf(“Input error!“);
break;
}
}
}

C语言程序设计学生成绩查询系统

#include“stdio.h“
#include“string.h“
#define N 1000
void menu();
int password();
int dedao();
int uninque(struct STUDENT shu,int len,int xuehao);
void shuchu(struct STUDENT shu,int len);
void send(struct STUDENT shu,int len);
int readFromFile(struct STUDENT shu);
void chaxun(struct STUDENT shu,int len);
void paixu(struct STUDENT shu,int len);
struct STUDENT
{
int num;
char name;
int score;
} shu[N];
main()
{ int len=0,key,choice;
do {
key=password();

}while(key==0);
while(1)
{ menu();
printf(“请输入选项《1,2,3,4,5,6,7》\n“);
scanf(“%d“,&choice);
switch(choice)
{
case 1:printf(“输入信息函数\n“); len=dedao(shu,len); break;
case 2:printf(“输出函数被调用\n“); shuchu(shu,len); break;
case 3:printf(“保存到文件函数被调用\n“); send(shu,len); break;
case 4:printf(“从文件读函数被调用\n“); len=readFromFile( shu); break;
case 5:printf(“按学号查询函数被调用\n“); chaxun(shu,len); break;
case 6:printf(“按成绩排序函数被调用\n“); paixu(shu,len); break ;
case 7:exit(0);break;
}
}
}
void menu()
{
printf(“\n“);
printf(“ *******************************************\n“);
printf(“ * 学生成绩管理系统2.0 *\n“);
printf(“ * 1.输入信息 *\n“);
printf(“ * 2.输出信息 *\n“);
printf(“ * 3.保存到文件 *\n“);
printf(“ * 4.从文件读 *\n“);
printf(“ * 5.按学号查询 *\n“);
printf(“ * 6.按成绩排序(由大到小) *\n“);
printf(“ * 7.程序结束 *\n“);
printf(“ *******************************************\n“);
}
int password()
{
char a;
char key=“asd“;
printf(“请输入密码\n“);
scanf(“%s“,&a);
if(strcmp(a,key)==0)
return 1;
else
return 0;
}
int dedao(struct STUDENT shu,int len)
{ int i=len;
int flag=0;
int xuehao,bank,chengji;
while(i《N)
{
while(1)
{
printf(“学号“);
scanf(“%d“,&xuehao);
if(xuehao==0)
{ flag=1;
break;
}
bank=uninque(shu,i,xuehao);
if(bank==0)
{ shu[i].num=xuehao;
break;}
}
if(flag==1)
break;
printf(“姓名“);
scanf(“%s“,&shu[i].name);

while (1)
{
printf(“成绩“);
if(scanf(“%d“,&chengji)==1)
{break;}
printf(“输入格式错误,请重新输入!“);
while(getchar()!=’\n’)
continue;
}
while(getchar()!=’\n’)
continue;
shu[i].score=chengji;
i++;

}
return i;
}
int uninque(struct STUDENT shu,int len,int xuehao)
{ int i;
int bank=0;
for (i=0;i《len;i++)
{
if(xuehao==shu[i].num)
bank=1;
}
return bank;
}
void shuchu(struct STUDENT shu,int len)
{
int i;
printf(“%-4s %-10s %-3s“,“学号“,“姓名“,“成绩\n\n“);
for(i=0;i《len;i++)
{
printf(“%-4d %-10s %-3d“,shu[i].num,shu[i].name,shu[i].score);
printf(“\n“);
}
printf(“\n\n“);
}
void send(struct STUDENT shu,int len)
{
int i;

FILE *fp;
fp=fopen(“d:\\chegnji.txt“,“wb“);
if(fp==NULL)
{
printf(“打开文件出错!\n“);
exit(0);
}
for(i=0;i《len;i++)

fwrite(shu+i,sizeof(struct STUDENT),1,fp);
fclose(fp);
}
int readFromFile(struct STUDENT shu)
{
FILE *fp=NULL;
int i=0;
fp=fopen(“d:\\chegnji.txt“,“rb“);
if(fp!=NULL)
{
printf(“%-4s %-10s %-3s“,“学号“,“姓名“,“成绩\n\n“);

while(!feof(fp))
{

if(i》=N)
break;
if(fread(shu+i,sizeof(struct STUDENT),1,fp))

printf(“%-4d %-10s %-3d“,shu[i].num,shu[i].name,shu[i].score);
printf(“\n“);
i++;
}
fclose(fp);
}
i=i-1;
return i;
}
void chaxun(struct STUDENT shu,int len)
{
int i,nue,b=0;
while(1)
{printf(“input the student number (input’0’ close) “);
scanf(“%d“,&nue);
b=0;
if(nue==0)
break;
for (i=0;i《len;i++)
{
if(nue==shu[i].num)
{ printf(“%-4s %-10s %-3s“,“学号“,“姓名“,“成绩\n\n“);
printf(“%-4d %-10s %-3d\n“,shu[i].num,shu[i].name,shu[i].score);
b=1;

}

}
if(b==0)
printf(“The number is not exist!\n“);
}
}
void paixu(struct STUDENT shu,int len)
{
int i,j;
struct STUDENT temp;
printf(“%-4s %-10s %-3s“,“学号“,“姓名“,“成绩\n\n“);
for(i=0;i《len;i++)
{
for(j=i;j《len;j++)
{
if(shu[j].score》shu[i].score)
{
temp=shu[j];
shu[j]=shu[i];
shu[i]=temp;
}
}

printf(“%-4d %-10s %-3d\n“,shu[i].num,shu[i].name,shu[i].score);
}
}

用C语言写一个成绩查询系统

#include《stdlib.h》
#include《stdio.h》
#include《string.h》
#include《conio.h》
#define N 10
/*****定义结构体*****/
typedef struct students /*标记为students*/
{
char num; /*学生学号*/
char name; /*学生姓名*/
int age; /*年龄*/
char sex; /*性别*/
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,name;
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;
//未完待续

如何用c语言编一个成绩查询系统

如果你是要做一个非常专业的商业软件,这个其实不太适合用C语言来编写。你可以考虑其他高级语言如java,c#,etc.
如果你仅仅是想在功能上实现成绩查询,而且数据量不是那种特别大,比如千万,上亿级别的,用C语言以二进制文件读写的方式完全可以轻松实现。
下面说说大概的思路:
1.你可以定义一个结构体来描述成绩,结构体的变量包括比如姓名,学号,班级,语文成绩,数学成绩,etc。
2.所有学生的成绩,就是一个个的结构体 把所有结构体保存到二进制文件中。
3.如果需要查询成绩,就先从二进制文件把所有的成绩读取出来,保存到数组或者链表中。然后在数组或者链表中进行查询。
如果是要删除某一个学生的记录,就从数组或者链表中先找到该学生的记录,然后删掉该元素,再保存回二进制文件。
如果是要添加一个学生成绩信息,就是在数组或者链表中添加一个元素,然后保存为二进制文件。
用C语言以二进制文件的方式模拟数据库系统的操作,大体的思路就是这样的。
如果你非要以数据库的方式来存取数据,用C语言,也不是绝对不可以,那就比较繁琐了,自行查找C语言访问数据库相关的知识。

C语言 学生成绩管理系统

附录* 综合实例——学生成绩查询系统
这是一个用c语言编写的小软件——学生成绩查询系统,同学们可以将其作为一个综合实例,对其进行仔细的阅读和研究,体验编程处理问题的过程,加深对编程语言的理解,提高处理问题的综合能力。
1、程序的功能:
1)可以根据用户输入的输入、输出文件名,读入学生成绩,完成数据的初始化。
2)可以查询指定学生的成绩,可以是指定科目的成绩,也可以是全部科目的成绩。
3)友好退出。
2、使用说明:
1)将输入文件放到指定的目录下(即../student/)

图1
2)启动管理程序student.exe
3)在程序的使用界面,首先输入输入文件名和输出文件名,完成程序的初始化,操作如下图所示

图2
然后,按照按照提示,输入学生姓名和需要程序的成绩(此软件暂时只设置了五成成绩,同学们可以按照需要扩展)科目代码,也可以输入查询所有成绩的代码。程序成绩,如下图所示

图3
4)输入代码“q”退出程序。
3、程序代码
#include
#include
#include
FILE *f1,*f2;
char file1,file2,name,name1;
int n,m,data;

void init(){
int i,j;
char ch=’ ’;
printf(“%20c欢迎使用班级成绩管理系统\n\n“,ch);
printf(“请输入输入和输出文件名(中间用一个空格隔开):\n“);
scanf(“%s %s“,file1,file2);// 1)该条语句的功能是什么?
f1=fopen(file1,“r“);
f2=fopen(file2,“w“);

fscanf(f1,“%d%d“,&n,&m); // 2)该条语句的功能是什么?
for(i=1;i《=n;i++)
{
fscanf(f1,“%s“,name[i]); // 3)该条语句的功能是什么?
data[i]=0; // 4)该条语句的功能是什么?没有这条语句可不可以?
for(j=1;j《=m;j++)
{
fscanf(f1,“%d“,&data[i][j]);
data[i]+=data[i][j]; // 5)该条语句的功能是什么?
}
}

fprintf(f2,“name\tyuwen\tshuxue\tyingyu\twuli\thuaxue\tzongfen\n “);
for(i=1;i《=n;i++)
{
fprintf(f2,“%s\t“,name[i]);
for(j=1;j《=m;j++)
fprintf(f2,“%d\t“,data[i][j]);
fprintf(f2,“%d\n“,data[i]);
}
fclose(f1);// 6)问什么可以在这关闭输入文件?
fclose(f2);

}
void search(char na,char num){
int i=1,j;

while((i《=n)&&(strcmp(na,name[i])!=0))i++;

if(i《=n){
switch(num){
case ’1’:printf(“%s的语文成绩为%d!\n“,na,data[i]);break;
case ’2’:printf(“%s的数学成绩为%d!\n“,na,data[i]);break;
case ’3’:printf(“%s的英语成绩为%d!\n“,na,data[i]);break;
case ’4’:printf(“%s的物理成绩为%d!\n“,na,data[i]);break;
case ’5’:printf(“%s的化学成绩为%d!\n“,na,data[i]);break;
case ’a’:
printf(“%s的各科成绩为:\n“,name[i]);
printf(“语文\t数学\t英语\t物理\t化学\t总成绩\n“);
for(j=1;j《=m;j++)
printf(“%d\t“,data[i][j]);
printf(“%d\n“,data[i]);
break;
default: printf(“没有这种查询方式,请确认后再次输入!\n“);
}

}
else printf(“查无此人,请确认后再次查询!\n“);

printf(“\n\n“);
}
main(){
init();//数据初始化
printf(“数据初始化结束!\n\n“);
printf(“————————————————\n\n“);

char na;
char num;
while(1){ // 7)该条语句的功能是什么?
//scanf(“%s%c%c“,na,#,#); // 8)此处的输入可不可以用这条语句?
printf(“请输入学生的姓名和要查询成绩的科目代码(中间用一个空格隔开):\n(1 语文 2 数学 3 英语 4 物理 5 化学 a 所有科目成绩 q 退出)\n“);
scanf(“%s“,na);
if(strcmp(na,“q“)==0)break; // 9)问什么要用这条语句strcmp(na,“q“)==0?
scanf(“%c%c“,#,#); // 10)为什么用了两次#?
search(na,num);
printf(“————————————————\n\n“);
printf(“\n请输入新的查询:\n\n“);

}
system(“pause“);
}
这是我以前的一个程序,你改改吧,应该很好改

急!国二c语言忘了准考证号怎么查成绩,或者怎么查到准考证号

计算机等级考试成绩查询没有准考证号也是可以查询的,利用身份证和名字进行查询即可。在教育部考试中心中国教育考试网通过输入准考证号、姓名及身份证三项中的任意两项即可查询到证书相关信息。

查询说明

1、选择考试时间,考试科目。

2、输入报考时的身份证件号码和姓名(证件号码区分大小写),点击查询按钮进行查询。

3、如果输入信息正确,对应考试的成绩信息将会在下一个页面列出。

4、页面上部操作步骤中橘黄色字体内容表示您所处的查询位置。

国二C语言包括以下方面

1、C语言程序的结构

程序的构成,main函数和其他函数以及头文件,数据说明,函数的开始和结束标志以及程序中的注释。还包括源程序的书写格式和C语言的风格。

2、数据类型及其运算

C的数据类型及其定义方法, C运算符的种类、运算优先级和结合性,不同类型数据间的转换与运算和C表达式类型。

3、基本语句

表达式语句,空语,复合语句,输入输出函数的调用,正确输入数据并正确设计输出格式。

4、选择结构程序设计 

用if 语句实现选择结构,用switch语句实现多分支选择结构,选择结构的嵌套。

5、循环结构程序设计

for循环结构, while和do-while循环结构,continue语句和break语句,循环的嵌套。

以上内容参考  百度百科-全国计算机等级考试二级

C语言编程—学生成绩查询系统!紧急!!!

这个是我自己做的类式的,你可以按自己的要求改下·不难的和你的差不多,给分哦
#include《stdlib.h》
#include《stdio.h》
#include《string.h》
#include《conio.h》
#define N 10
/*****定义结构体*****/
typedef struct students /*标记为students*/
{
char num; /*学生学号*/
char name; /*学生姓名*/
int age; /*年龄*/
char sex; /*性别*/
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,name;
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,s2={“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();
}
}
}
}

全国计算机二级C语言成绩查询具体分数怎样查

计算机二级不可以查具体分数,只能查出分数等级。

考试实行百分制计分,但以等级分数通知考生成绩。等级分数分为“不及格”、“及格”、“优秀”三等,划线分数为60和90。

考试成绩在“及格”,即60~89分者,由教育部考试中心发合格证书,考试成绩在“优秀”,即90~100分者,由教育部考试中心发优秀证书。

自2018年3月起,NCRE考试以等第形式通知考生成绩。成绩等第分为“优秀”、“良好”、“及格”、“不及格”四等。

考试注意事项 

1、考生凭准考证和身份证(或户口本、军人身份证)参加考试,缺一不可。

2、考生发现磁盘损坏,可举手示意监考人员处理,有关考试题目内容的问题不得提问。

3、进入考场只能携带铅笔、橡皮、尺子、钢笔、圆珠笔等必备工具。

开考信号发出后,才可开始答题。上机考试结束,按要求处理好机器后才能退场。

4、考试开考前15分钟入场,对号入座,考试中将两证放在课桌右上角接受检查。上机考试交验两证。

以上内容参考 百度百科—计算机考试二级

如何用C语言实现学生成绩管理系统的查找问题

最简单的使用数据库
但如果使用纯c可以先将学生成绩进行排序按升序或降序都可以
用结构体和链表的方式保存
这样进行查询就很方便