⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 cpp1.cpp

📁 对学生成绩管理是教务管理的重要内容
💻 CPP
字号:
/*学生成绩存储结构定义*/
#include <stdio.h>
#include <process.h>
#include <string.h>
#define MAXSIZE  100
typedef struct   /*定义学生信息结构体类型*/
{
	int number;
	char name[10];
	int  score;
}student;

typedef struct  /*定义顺序表类型*/
{
	student  data[MAXSIZE];
	int last;
}SLstudent;

/*登记成绩算法*/
void Creat(SLstudent *sLs)/*登记成绩算法*/
{
	int n,i;
	printf("请输入学生数:");
	scanf("%d",&n);
	sLs->last=n;
	for(i=0;i<n;i++)
	{
		printf("请输入学生%d的数据:\n",i+1);
		printf("学号:");
		scanf("%d",&sLs->data[i].number);
		printf("姓名:");
		scanf("%s",&sLs->data[i].name);
		printf("成绩:");
		scanf("%d",&sLs->data[i].score);
	}
	getchar();
}

/*查询成绩算法*/
void Search(SLstudent *sls)
{
	int p,n,i;
	printf("请输入学生的学号: ");
	scanf("%d",&p);
	n=sls->last;
	for(i=0;i<n;i++)
	{
		if(sls->data[i].number==p)
		{
		printf("该学生的数据: \n");
		printf("学号:%d ",sls->data[i].number);
		printf("姓名:%s ",sls->data[i].name);
		printf("成绩:%d ",sls->data[i].score);
		break;
		}
	}
	if(i==n)
		printf("未找到此学生数据!\n");
	getchar();
}	

/*插入数据算法*/
void Insert(SLstudent *sls)
{
	int i,n,q;
	printf("请输入插入序列号:");
	scanf("%d",&n);
	q=sls->last;
	if(q>100)
		printf("表满,插入错误!");
	else{
	for(i=q;i!=n;i--)
	{
		sls->data[i].number=sls->data[i-1].number;
		strcpy(sls->data[i].name,sls->data[i-1].name);
		sls->data[i].score=sls->data[i-1].score;
	}
	printf("学号:");
	scanf("%d",&sls->data[i].number);
	printf("姓名:");
	scanf("%s",&sls->data[i].name);
	printf("成绩:");
	scanf("%d",&sls->data[i].score);
	sls->last++;
	getchar();}
}

/*删除数据算法*/
void Delete(SLstudent *sls)
{
	int number,n,i,j;
	printf("请需要删除学生的学号: ");
	scanf("%d",&number);
	n=sls->last;
	for(i=0;i<n;i++)
	{
		if(sls->data[i].number==number){
			for(j=i;j<=n;j++){
			sls->data[j].number=sls->data[j+1].number;
			strcpy(sls->data[j].name,sls->data[j+1].name);
			sls->data[j].score=sls->data[j+1].score;
			sls->last--;}
			printf("学生数据删除成功!");
		break;}
	}
	if(n==i)
		 printf("此学生数据不存在!");
	
	getchar();
}

/*主程序*/
void  main()
{
	SLstudent sls;
	int k;
	while(1)
	{
		printf("         ------------------------------\n");
		printf("         |       学生成绩管理         |\n");
		printf("         |============================|\n");
		printf("         |        1  登记成绩         |\n");
		printf("         |        2  查询成绩         |\n");
		printf("         |        3  插入成绩         |\n");
		printf("         |        4  删除成绩         |\n");
		printf("         |        0  退出程序         |\n");
		printf("         ------------------------------\n");
		printf("         请输入选择的功能号:");
        scanf("%d",&k);
		switch(k)
		{
		case 1:  Creat(&sls);break;
		case 2:  Search(&sls);break;
		case 3:  Insert(&sls);break;
		case 4:  Delete(&sls);break;
		case 0:	 exit(0);break;
                
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -