求一段C语言程序代码,内容是学生信息管理系统,代码不要太长,有查询和删除就好。我是作为期末作业交的。

查询的内容有姓名学号成绩等一些基本信息。... 查询的内容有姓名 学号 成绩 等一些基本信息。 展开
 我来答
SupremeKai
2011-07-03 · TA获得超过6248个赞
知道大有可为答主
回答量:1520
采纳率:33%
帮助的人:1398万
展开全部
这个我c语言结构与链表的作业:
#include <stdio.h>
#include <string.h>

struct staff {
char num[6]; //学号
char name[20]; //姓名
double wage; //成绩
struct staff *next;
};

/**
*输入数据
*/
struct staff *create(int n) {
struct staff *head=NULL;
struct staff *tail,*newnode;
char num[6],name[20];
double wage;
for(int i=0;i<n;i++) {
newnode = new staff;
scanf("%s",num);
scanf("%s",name);
scanf("%lf",&wage);
strcpy(newnode->num,num);
strcpy(newnode->name,name);
newnode->wage=wage;
if(head==NULL)
head = newnode;
else
tail->next = newnode;
tail=newnode;
}
tail->next=NULL;
return(head);
}

/**
*删除数据
*/
struct staff *deln(struct staff *head,int n) {
struct staff *p,*q;
int i=0;
p=head;
while(++i!=n && p->next!=NULL) {
q=p;
p=p->next;
}
if(i==n) {
if(p==head) head=p->next;
else q->next=p->next;
delete(p);
} else
printf("Not been found!\n");
return(head);
}

/**
*显示数据
*/
void showdate(struct staff *head) {
struct staff *p=head;
int i=1;
while(p!=NULL) {
printf("%d| %s,%s,%.2f\n",i++,p->num,p->name,p->wage);
p=p->next;
}
}

void main() {
struct staff *head;
int n;
printf("请输入初始链表结点数 ");
scanf("%d",&n);
head=create(n);
printf("删除前:\n");
showdate(head);
int m=0;
while(m<1 || m>n) {
printf("请输入要删除的结点号:\n");
scanf("%d",&m);
}
head=deln(head,m);
printf("删除后:\n");
showdate(head);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式