C语言实现的个人信息管理系统
C语言实现简易的信息管理系统
1 功能需求分析
2 模块结构规划
3 数据结构的选择
4 规划函数
main.c:
ui.c:
addinformation.c
find.c
file.c
sort.c
print.c
exit.c
5 代码演示
#include "main.h"
void find_id(int id)
{
int i=0;
for(i=0;iname);
/**********ID输入********************/
printf(" 请输入唯一ID(ID范围1----10000):");
scanf("%d",&temp->id);
while((temp->id)>10000 || (temp->id)<1)
{
printf(" 对不起,您输入的ID超出范围,请重新输入:");
scanf("%d",&temp->id);
}
/****************性别输入*******************/
printf(" 请输入性别:男 或者 女:");
scanf("%s",&temp->sex);
/****************年龄输入*************************/
printf(" 请输入年龄: ");
scanf("%d",&temp->age);
while((temp->age)>150||(temp->age)<1)
{
printf(" 对不起,您输入的年龄超出范围,请重新输入:");
scanf("%d",&temp->age);
}
return temp;
}
add_information(void)
{
while(1)
{
int key=2;
add_information_ui();
p= scanf_a_struct( &database[num] );
database[num] =*p;
num++;
printf(" 信息录入成功! \n");
printf(" 继续录入请按1;返回上一层界面请按0:");
scanf("%d",&key);
while(key!=0&&key!=1)
{
printf("********************************************************************************");
printf("输入错误,请重新输入,继续录入请按1;返回上一层界面请按0\n");
printf("********************************************************************************");
}
if(key==0)
{
output_database();
main_system_ui();
return 0;
}
}
}#include "main.h"
void find_id(int id)
{
int i=0;
for(i=0;iname[20]*******************************/
if(fputs(temp->name,fp))
puts("写入name成功");
else
puts("写入name失败");
fputc(' ',fp);
/***************写入temp->id*****************************************/
if(fprintf(fp,"%d",temp->id))
puts("写入id成功");
else
puts("写入id失败");
fputc(' ',fp);
/******************写入temp->sex*************************************/
if(fputs(temp->sex,fp))
puts("写入sex成功");
else
puts("写入sex失败");
fputc(' ',fp);
/********************写入temp->age***********************************/
if(fprintf(fp,"%d",temp->age))
puts("写入age成功");
else
puts("写入age失败");
fputc('\n',fp); //输出换行符
}
/******** ************************************************************
* 从文本中读取一个结构体内容
* 输入:结构体指针
* 输出:0----完毕或无数据 1-------
*********************************************************************/
char read_a_struct(struct people * temp)
{
int i=0;
char ch;
/**************检测每个数据段开头能否读取到数据*************/
ch = fgetc(fp);
if(ch==EOF)
{
//puts("没有第一个字符数据\n");
return 0;
}
/*****************读取temp->name***********************/
while( ch !=' ' && ch != EOF ) //已经读取name后的空格
{
temp->name[i]=ch;
i++;
ch = fgetc(fp);
}
temp->name[i]='\0';
/*
if( ch ==' ' || ch == EOF)
puts("读取name成功");
else
puts("读取name失败");
*/
/************读取temp->id*****************************/
fscanf(fp,"%d",&temp->id);
/*
if(fscanf(fp,"%d",&temp->id))
puts("读取id成功");
else
puts("读取id失败");
*/
fgetc(fp)==' ';
/*
if(fgetc(fp)==' ')
puts("读取空格成功");
*/
/***************读取temp->sex*************************/
i=0;
ch = fgetc(fp);
while( ch !=' ' && ch != EOF ) //已经读取name后的空格
{
temp->sex[i]=ch;
i++;
ch = fgetc(fp);
}
temp->sex[i]='\0';
/*
if( ch ==' ' || ch == EOF) //空格已经读取
puts("读取sex成功");
else
puts("读取sex失败");
*/
/***************读取temp->age************************/
fscanf(fp,"%d",&temp->age);
/*
if(fscanf(fp,"%d",&temp->age))
puts("读取age成功");
else
puts("读取age失败");
*/
fgetc(fp)=='\n';
/*
if(fgetc(fp)=='\n')
puts("读取换行符成功");
*/
return 1;
}
/**********************************************************************
* 从文本中直接读取全部数据库-------->数组
* 从文本开头读取,直到末尾
* 输出:无
* 输入:无
**********************************************************************/
void read_all_database(void)
{
int i=0;
char stop=0;
file_open();
for(i=0;idatabase[j].id)
{
temp=database[i];
database[i]=database[j];
database[j]=temp;
}
}
}
printf("排序完成!\n");
print_all_database();
return 0;
}
void sort_information(void)
{
while(1)
{
int key=3;
sort_information_ui();
printf("请选择功能项:");
scanf("%d",&key);
while(key!=0&&key!=1&&key!=2&&key!=3)
{
printf("对不起,指令输入错误,请重新输入:");
scanf("%d",&key);
}
if(key==3)
{
exit_system();
}
if(key==2)
{
main_system_ui();
return 0;
}
else if(key==0) //按照ID从大到小排序
{
sort_down();
}
else
{
sort_up();
}
}
}/*********************************************************************************
* 打印一个结构体的内容
* 输入: &结构体名----------地址
* 输出: 无
**********************************************************************************/
#include "main.h"
void print(struct people * temp ) //注意输入是什么
{
printf("***************************************************************************\n\n");
printf(" 姓 名: %s", temp->name);
printf(" 证件号: %d", temp->id);
printf(" 性 别: %s", temp->sex);
printf(" 年 龄: %d\n\n",temp->age);
return 0;
}
/**************输出所有数据库的内容******************/
void print_all_database(void)
{
int key=2;
int i=0;
for(i=0;i
C语言实现的个人信息管理系统相关推荐
- c语言结构体老师信息管理系统,C语言课程设计职工信息管理系统结构体数组实现程序源代码.doc...
word格式 整理版 学习参考 //C语言课程设计 职工信息管理系统-结构体数组实现 #include #include #include struct employee { char num[10] ...
- c语言程序设计学生程序查询,《c语言程序设计报告-学生信息管理系统》.doc
<c语言程序设计报告-学生信息管理系统> 中南大学 ? ? C语言程序设计实践报告 ? ? ? ? ? 题 目 学生信息管理系统 学生姓名 张眼 指导教师 刘伟荣 学 院 信息科学与工程学 ...
- c语言用链表写管理系统程序,c语言课程设计职工信息管理系统单链表实现程序源代码-20210401015126.docx-原创力文档...
文档编制序号:[KKIDT-LLE0828-LLETD298-POI08] 文档编制序号:[KKIDT-LLE0828-LLETD298-POI08] C语言课程设计职工信息管理系统单链表实现程序源代 ...
- 学生信息管理系统c 语言程序设计报告,C语言程序设计报告(学生信息管理系统)[1].txt...
C语言程序设计报告(学生信息管理系统)[1].txt C CCCC * * * * * * * * * * * * * * * * .3 3 .4 1. .4 2. 4 3. 4 4. .5 飺 .5 ...
- c语言编辑学生信息录入的程序,c语言编的学生信息管理系统小程序!!有不足的请指出,谢谢!!...
c语言编的学生信息管理系统小程序!!有不足的请指出,谢谢!! #include #include #include struct st { char name[20]; int english; in ...
- 学委作业管理系统c语言,c语言大作业-学生信息管理系统.doc
c语言大作业-学生信息管理系统.doc 课程设计报告书 题目:学生信息管理系统设计 学 院 电子与信息学院 专 业 电子信息类 学生姓名 学生学号 指导教师 课程编号 135160 课程学分 1学分 ...
- c语言课程设计宠物店,c语言课程设计-宠物店信息管理系统.doc
c语言课程设计-宠物店信息管理系统 合肥学院 计算机科学与技术系 课程设计报告 2012-2013学年第二学期 课程面向过程综合设计课程设计名称宠物(小动物)店信息管理系统 学生姓名宋俊 学号 专业班 ...
- C语言报告书学生信息管理系统,C语言实训 学生信息管理系统
C语言实训 学生信息管理系统 实 训 报 告 实训名称 C语言编程开发实训 专业班级 物联1541 姓 名 张禄泽 学 号 指导教师 黄标兵.王丽平 实训时间 2016.2.29-2016.3.11 ...
- c语言程序设计图书管理,C语言程序设计报告 图书馆信息管理系统
C语言程序设计报告 图书馆信息管理系统 2011 年第二阶段课程设计成果报告实训项目: 程序设计技术课程设计 学号: 0112959 姓名: 张麦华 专业: 信息管理与信息系统 实训日期:2011 年 ...
- c语言课程设计 职工信息管理系统,C语言课程设计-职工信息管理系统程序设计.doc...
C语言课程设计-职工信息管理系统程序设计 C语言课程设计报告 设计题目:职工信息管理系统程序设计 课程设计评语2 目 录3 1.课程论文题目4 2.程序设计思路4 3.功能模块图5 4.数据结构设计5 ...
最新文章
- 《程序员面试宝典》-数据结构编程练习1
- Web前端经典面试试题(一)
- win10搜索计算机中所有excel,windows10系统下怎样使用excel进行高级筛选
- shell命令直接分区
- java学习_java学习原理篇|java程序运行套路
- 行为设计模式 - 策略设计模式
- Vue为何采用异步渲染
- 你真的懂语音特征吗?
- 为什么那么多自学WEB前端的人后来都放弃了?
- 英雄由此诞生------直击微软2008发布大会
- 结巴分词有前空格_NLP 分词的那些事儿
- 【AdaBoost算法】积分图代码实现
- HSRP+生成树+vlan间路由!
- Java制作简易计算器
- 活体检测 Domain Generalization via Shuffled Style Assembly for Face Anti-Spoofing 论文学习记录
- 多光谱高光谱图像算法面经
- 用R进行一元线性回归分析建模
- HTML+CSS笔记5
- 差异化地推手段,让营销效果翻十倍!
- AJAX-客户端服务器端通信
热门文章
- 我为什么从阿里巴巴集团离职?
- 用html如何做发帖的页面,如何用html发帖
- undi是什么意思_undefined什么意思?
- 简单描述数字签名:私钥签名;公钥验签。
- [POI2013]LUK-Triumphal arch【树形DP+二分答案】
- 云计价i20快速入门技巧——“附加费”应用
- Java 两个日期间的天数计算
- 《手机传感器》参数与选择
- 渐变背景和背景图片并存
- golang使用gorm出现reflect.Value.Addr of unaddressable value [recovered]