medical oncology:请程序员进。设计简单小程序

来源:百度文库 编辑:杭州交通信息网 时间:2024/05/05 15:53:30
一、综合实验内容
设计一个实用的小型的职工信息管理程序,要求不用链表,而用数组来设计这个程序。该程序有排序和检索等功能,并且能够对指定文件操作。
二、实验重点与难点
C程序的组成是函数调用,所以函数是重点。函数设计的难点是选择函数类型及其参数传递方式。数据类型及程序控制方式是C语言的基础;数组、指针和结构的使用技术是编程的核心技术。综合实验在这些方面特意加强了训练。
三、综合实验要求
1、基本功能要求
职工数据结构含有姓名、工号、性别和年龄等信息。要求用一个简单的菜单提供以下功能:
(1)新建职工信息
(2)显示职工信息
(3)增加职工信息
(4)查询职工信息
(5)修改职工信息
(6)删除职工信息
(7)职工信息排序
2、总体设计要求
本综合实验对模块设计的要求如下:
(1)、模块化程序设计
(2)、锯齿型书写格式
(3)、必须上机调试通过
(4)、最终提交一个可运行的应用程序和规范的实验设计说明书。
3、实验设计说明书要求
(1)、语言简练,条理清楚,图表规范
(2)、程序设计组成框图、流程图
(3)、模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)
(4)、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施
(5)、源程序清单和执行结果(软盘):清单中应有足够空行、空格和注释
四、实验环境
操作系统:WindowsXP/2000
开发环境:Turbo C 2.0 或VC++

我这有个通讯录的代码
你修改一下就可以了
/*编程建立一通讯簿,存放有姓名、电话号码、住址,然后对通信簿进行查找、添加、修改及删除。*/
#include<stdio.h>

struct person
{
char name[8];
char tel[15];
char addr[50];
};

char filename[20];
FILE *fp;

void creat();
void output();
void search();
void append();
void modify();
void delete();

void main()
{
int m;

creat();
while(1)
{
printf("\n\n添加,请按1");
printf("\n查找,请按2");
printf("\n修改,请按3");
printf("\n删除,请按4");
printf("\n输出,请按5");
printf("\n退出,请按0\n");
scanf("%d",&m);
if(m>=0&&m<=5)
{
switch(m)
{
case 1: append();
break;
case 2: search();
break;
case 3: modify();
break;
case 4: delete();
break;
case 5: output();
break;
case 0: exit();
}
printf("\n\n操作完毕,请再次选择!");
}
else
printf("\n\n选择错误,请再次选择!");
}
}

void creat()
{
struct person one;
long s1;

printf("\n请输入通讯簿名:");
scanf("%s",filename);
if((fp=fopen(filename,"w"))==NULL)
{
printf("\n不能建立通讯簿!");
exit();
}
fprintf(fp,"%-10s%-20s%-50s\n","姓名","电话号码","住址");
printf("\n请输入姓名、电话号码及住址(以0结束)\n");
scanf("%s",one.name);
while(strcmp(one.name,"0"))
{
scanf("%s%s",one.tel,one.addr);
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
scanf("%s",one.name);
}
fclose(fp);
}

void output()
{
struct person one;

if((fp=fopen(filename,"r"))==NULL)
{
printf("\n不能打开通讯簿!");
exit();
}
printf("\n\n%20s\n","通 讯 簿");
while(!feof(fp))
{
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
printf("%-10s%-20s%-50s",one.name,one.tel,one.addr);
}
fclose(fp);
}

void append()
{
struct person one;

if((fp=fopen(filename,"a"))==NULL)
{
printf("\n不能打开通讯簿!");
exit();
}
printf("\n请输入添加的姓名、电话号码及住址\n");
scanf("%s%s%s",one.name,one.tel,one.addr);
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
fclose(fp);
}

void search()
{
int k=0;
char namekey[8];
struct person one;

printf("\n请输入姓名:");
scanf("%s",namekey);

if((fp=fopen(filename,"rb"))==NULL)
{
printf("\n不能打开通讯簿!");
exit();
}
while(!feof(fp))
{
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
if(!strcmp(namekey,one.name))
{
printf("\n\n已查到,记录为:");
printf("\n%-10s%-18s%-50s",one.name,one.tel,one.addr);
k=1;
}
}
if(!k)
printf("\n\n对不起,通讯簿中没有此人的记录。");
fclose(fp);
}

void modify()
{
int m,k=0;
long offset;
char namekey[8];
struct person one;

printf("\n请输入姓名:");
scanf("%s",namekey);

if((fp=fopen(filename,"r+"))==NULL)
{
printf("\n不能打开通讯簿!");
exit();
}
while(!feof(fp))
{
offset=ftell(fp);
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
if(!strcmp(namekey,one.name))
{
k=1;
break;
}
}
if(k)
{
printf("\n已查到,记录为:");
printf("\n%-10s%-18s%-50s",one.name,one.tel,one.addr);
printf("\n请输入新姓名、电话号码及住址:");
scanf("%s%s%s",one.name,one.tel,one.addr);
fseek(fp,offset,SEEK_SET);
printf("%ld",ftell(fp));
fprintf(fp,"%-10s%-20s%-50s\n",one.name,one.tel,one.addr);
}
else
printf("\n对不起,通讯簿中没有此人的记录。");
fclose(fp);
}

void delete()
{
int m,k=0,flag;
long offset1,offset2;
char namekey[8], valid[4];
struct person one;

printf("\n请输入姓名:");
scanf("%s",namekey);
if((fp=fopen(filename,"r+"))==NULL)
{
printf("\n不能打开通讯簿!");
exit();
}
while(!feof(fp))
{
offset1=ftell(fp);
fscanf(fp,"%s%s%s\n",one.name,one.tel,one.addr);
if(!strcmp(namekey,one.name))
{
k=1;
break;
}
}
if(k)
{
printf("\n已查到,记录为");
printf("\n%-10s%-18s%-50s",one.name,one.tel,one.addr);
printf("\n确实要删除,按1;不删除,按0:");
scanf("%d",&m);
if(m)
{
fseek(fp,offset1,SEEK_SET);
fprintf(fp,"%-10s%-20s%-50s\n","","","");
}
}
else
printf("\n对不起,通讯簿中没有此人的记录。");
fclose(fp);
}

20分也能求程序,那程序员都别活了

既然是小程序
你自己搞定吧

这么麻烦你也要让人帮你啊

不是小程序吧?况且你要求的还很复杂,我是没时间帮你了!

这整一项目....