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

📄 学生管理系统.cpp

📁 学生管理系统源码 包括姓名
💻 CPP
字号:
#include "stdio.h"
#include "malloc.h"


	typedef struct tagNODE
	{
		unsigned long ID;
		char strName[16];
		char address[50];
		unsigned int score;
		struct tagNODE *next;
	}NODE;
NODE *createnode(int n)
{
	NODE *pHead,*pRear;
	NODE *pNewNode;
	for(int i=0;i<n;i++)
	{
		pNewNode=(NODE *) malloc(sizeof(NODE));
		printf("输入学生学号,姓名,住址和成绩:\n");
		scanf("%d",&pNewNode->ID);
		scanf("%s",&pNewNode->strName);
		scanf("%s",&pNewNode->address);
		scanf("%d",&pNewNode->score);
		if(i==0)
			pRear=pHead=pNewNode;
		else
			pRear->next=pNewNode;
		pNewNode->next=NULL;
		pRear=pNewNode;

	}
	return (pHead);
}
NODE * deletenode(NODE *pHead,unsigned long ID)
{
	NODE *pf,*pb;
	if(pHead==NULL)
	{
		printf("列表为空\n");
		goto end;
	}
	pb=pHead;
	while(pb->ID!=ID&&pb->next!=NULL)
	{
		pf=pb;
		pb=pb->next;
	}
	if(pb->ID==ID)
	{
		if(pb==pHead)
			pHead=pHead->next;
		else
			pf->next=pb->next;
		free(pb);
		printf("该结点删除\n");
	}
	else
	{
		printf("该结点不存在\n");
	}
	end:
	return pHead;

}
NODE * insertnode(NODE * head,NODE *pi)
{
	NODE *pf,*pb;
	pb=head;
	pf=NULL;
	if(head==NULL)
	{
		head=pi;
		pi->next=NULL;
	}
	else
	{
		while((pi->ID>pb->ID)&&(pb->next!=NULL))
		{
			pf=pb;
			pb=pb->next;
		}
		if(pi->ID<=pb->ID)
		{
			if(head==pb)
				head=pi;
			else
				pf->next=pi;
			pi->next=pb;

		}
		else
		{
			pb->next=pi;
			pi->next=NULL;
		}
	}
	return head;
}
void print(NODE * head)
{
	printf("学号,姓名,地址和成绩为:\n");
	while(head!=NULL)
	{
		printf("%u     %s      %s        %d\n",head->ID,head->strName,head->address,head->score);
		head=head->next;
	}
}
void main()
{
	NODE * head,*pnum;
	int n,num;
	printf("\n输入结点数量:\n");
	scanf("%d",&n);
	head=createnode(n);
	print(head);
	printf("\n输入删除的学号:\n");
	scanf("%d",&num);
	head=deletenode(head,num);
	print(head);
	printf("\n输入插入的学号,姓名,地址和成绩为:\n");
	pnum=(NODE *) malloc(sizeof(NODE));
	scanf("%u   %s",&pnum->ID,&pnum->strName);
	head=insertnode(head,pnum);
	print(head);

}

⌨️ 快捷键说明

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