匿名用户

1级

2008-08-11 回答

#include

#include

#include

#define E "%s%s%s%d"

#define F p->num,p->name,p->sex,&p->score

#define G " %s %-5s %s %4d\n"

#define H i->num,i->name,i->sex,i->score

#define J "number name sex score\n"

struct student /*结构体定义*/

{char num[5];

char name[20];

char sex[2];

int score;

struct student *next;

};

int m=1;

struct student *creat() /*建立单向动态链表函数*/

{struct student *head;

struct student *p,*q;

head=p=q=(struct student *)malloc(sizeof(struct student));

printf("please input the information of students:\n");

while(scanf(E,F),strcmp(p->num,"0")!=0)

{p=(struct student *)malloc(sizeof(struct student));

q->next=p;q=p;m++;}

q->next=NULL;

return(head);}

/*以下根据学生的姓名和学号进行操作*/

void stu_printf(struct student *p) /*输出全部学生信息函数*/

{struct student *i;

printf(J);

for(i=p;i!=NULL;i=i->next) printf(G,H);}

void stu_search(struct student *p,char *c) /*查询学生信息函数*/

{struct student *i;int n=0;

for(i=p;i!=NULL;i=i->next)

if(strcmp(i->num,c)==0||strcmp(i->name,c)==0)

{printf(J);printf(G,H);}

else n++;

if(n==m) printf("not found\n");}

void stu_correct(struct student *p,char *c) /*修改学生信息函数*/

{struct student *i;int n=0;

for(i=p;i!=NULL;i=i->next)

if(strcmp(i->num,c)==0||strcmp(i->name,c)==0)

scanf(E,i->num,i->name,i->sex,&i->score);

else n++;

if(n==m) printf("not found\n");

printf("\n");

stu_printf(p);

}

void stu_delete(struct student *p,char *c) /*删除学生信息函数*/

{struct student *i,*j;int n=0;

for(i=p;i!=NULL;i=i->next)

if(strcmp(i->num,c)==0||strcmp(i->name,c)==0) break;

else n++;

if(n==m) printf("not found\n");

else {for(j=p;j->next!=i;j=j->next);

j->next=i->next;}

printf("\n");

stu_printf(p);

}

void stu_new_down(struct student *p,char *c) /*插入学生信息函数*/

{struct student *i,*j;int n=0;

for(i=p;i!=NULL;i=i->next)

if(strcmp(i->num,c)==0||strcmp(i->name,c)==0) break;

else n++;

if(n==m) printf("not found\n");

else {j=(struct student *)malloc(sizeof(struct student));

j->next=i->next;i->next=j;

scanf(E,j->num,j->name,j->sex,&j->score);}

printf("\n");

stu_printf(p);

}

main()

{char a[20];char x;int flag=1,q;

struct student *head;

void (*pt)(struct student *p,char *c); /*指向函数的指针变量*/

head=creat(); /*建立单向动态链表*/

while(flag)

{printf("please choose the operatian:\n");

printf("1:search\n2:corret\n3:delete\n4:new\n");

printf("choose:");

scanf("%d",&q);

switch(q) /*菜单*/

{case 1:pt=stu_search;break;

case 2:pt=stu_correct;break;

case 3:pt=stu_delete;break;

case 4:pt=stu_new_down;break;

default:printf("ERROR\n");}

printf("please input the number or name\n");

scanf("%s",a);

(*pt)(head,a);

printf("continue or not?(y/n)\n"); /*循环的菜单*/

getchar();

x=getchar();

if(x=='n') flag=0;}

getchar();

getchar();

}

c语言宠物管理系统,请用C语言编出一个简单的宠物管理系统。相关推荐

  1. python小项目实例流程-Python小项目:快速开发出一个简单的学生管理系统

    原标题:Python小项目:快速开发出一个简单的学生管理系统 本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: ...

  2. python小项目案例-Python小项目:快速开发出一个简单的学生管理系统

    本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: 包括: 学校信息的管理 教师信息的管理 学生信息的管理 根据A ...

  3. python项目开发实例-Python小项目:快速开发出一个简单的学生管理系统

    本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: 包括: 学校信息的管理 教师信息的管理 学生信息的管理 根据A ...

  4. python简单项目-Python小项目:快速开发出一个简单的学生管理系统

    本文根据实际项目中的一部分api 设计抽象出来,实例化成一个简单小例子,暂且叫作「学生管理系统」. 这个系统主要完成下面增删改查的功能: 包括: 学校信息的管理 教师信息的管理 学生信息的管理 根据A ...

  5. 我是一个新手小白,想学习C++编程,但是不知道该如何入手。请大神们给出一个简单的思路。

    如题所示,我现在准备学习C++编程语言,因为是0基础,所以入门也显的很迷茫,也看过一些视频,感觉讲的很好,但就是听得云里雾里,看着视频也会尝试敲一些代码,但是代码的意思,也都不懂,不知道该如何入手,所 ...

  6. 用c语言实现一个简单的宿舍管理系统

    今天才打开电脑对自己上个学期的东西进行了回顾,才发现上学期期末课程设计是用C语言写了一个简单的宿舍管理系统,那时候学校的要求是必须要有图形化界面的要求,所以我们小组没有选择用c语言进行这次课程设计的设 ...

  7. c语言n阶方阵,如何用C语言编出一个N阶螺旋方阵?

    如何用C语言编出一个N阶螺旋方阵? 來源:互聯網  2009-06-01 10:17:07  評論 分類: 電腦/網絡 >> 程序設計 >> 其他編程語言 問題描述: 例如:1 ...

  8. 伟福软件能用c语言编程吗,我编的一个简单程序,用伟福编译就是老有错

    我编的一个简单程序,用伟福编译就是老有错 我的程序:ORG 0000H LJMP MAIN ORG 0030H MAIN:CLR A MOV R0,#10 MOV R1,#0 LOOP:MOV SP, ...

  9. 一个简单的权限管理系统

    之前抽空写了一个简单的权限管理系统.就是包含用户管理.部门管理.菜单管理.权限管理等简单的一些常用功能.特此记录下,以便分享~~~ 这个系统编码之初是立足于对于大平台下的多个子系统的权限管理,就是将用 ...

  10. Android——一个简单的学生管理系统

    一个简单的学生管理系统 效果演示 实现功能总览 代码 效果演示 随手做的一个小玩意,还有很多功能没有完善,倘有疏漏,万望海涵. 实现功能总览 实现了登录.注册.忘记密码.成绩查询.考勤情况.课表查看. ...

最新文章

  1. SQLite第八课 auth.c授权文件解析
  2. 单行Bash无限while循环的语法
  3. .NET url 的编码与解码
  4. 代理类和被代理类的解释及案例
  5. IOS 应用官方接口地址
  6. 最新完整版PHP配置文件翻译
  7. Ioc容器Autofac介绍
  8. 什么是原子操作?Linux下有哪些原子操作API
  9. git 应用 创建分支 并切换分支
  10. oracle删除库里的所有表,清空mysql指定库里全部表数据-自动删除所有表,有外键约束的表优先删除...
  11. html css字体最小,html-字体大小CSS问题
  12. 安卓系统的电视机_天猫魔盒强刷机教程,把天猫魔盒刷成安卓系统教程?
  13. 电容器充放电的原理是什么?
  14. 菜鸟阿鑫对于一堆数组的总结以及理解
  15. java espresso车架,只爱钢架公路:Casati Espresso
  16. Go语言中开启和退出协程
  17. wx2540h配置教程_H3C wx3000系列配置
  18. Beej网络编程指南《一》
  19. 脑图工具MindNode附属节点是什么意思 图解
  20. @Transactional使用

热门文章

  1. 金蝶k3服务器物理内存过高,金蝶k3提示超出内存解决方案
  2. Delphi已经25岁了,我的公司每天都在使用Delphi开发跨平台的实时视频会议软件APP
  3. c语言教材课后习题答案,C语言课后习题答案(最终).doc
  4. 互联网专用计算机屏保,18个Windows 98屏保,简直怀念!
  5. php smarty配置,PHP中使用Smarty模板目录结构配置
  6. java做万年历,Java做的万年历
  7. 世界足坛的一些著名德比
  8. 制作种子怎么上传服务器,怎么制作BT种子 使用BitComet制作BT种子文件教程
  9. scrapy框架使用教程
  10. flash 倒计时功能