问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言程序设计之《查找》源代码

发布网友 发布时间:2022-05-10 04:51

我来回答

2个回答

热心网友 时间:2023-10-05 16:49

程序如下:
把#define N 3 改成#define N 20 就可以了,定为3是为了输入简单

/*
对于《人事管理系统》,利用C语言,编一个用于查找员工的程序,
且要通过员工的工号查找,一共是二十个员工,要求输入员工的工号就能显示出该员工的信息
,包括工号、姓名、性别、职位、工资;当输入的工号不存在时,要显示出查无此人。
*/
#include<stdio.h>
#include<string.h>
#define N 3
struct staff
{
int num;
char name[10];
char sex[10];
char position[20];
int salary;
}str[N];

void input_staff()
{
int i,j;
for(i=0;i<N;i++)
strcpy(str[i].name,"\0");

for(i=0;i<N;i++)
{
printf("输入第%d个员工的信息:\n",i+1);
printf("工号:");
scanf("%d",&str[i].num);

printf("姓名: ");
scanf("%s",str[i].name);
for(j=0;j<i;j++)
{

if(strcmp(str[j].name,str[i].name)==0)
{
printf("\n名字重复,不能重复给同一个人输入信息!!!\n");
printf("重新输入员工名字:\n");
scanf("%s",str[i].name);
j=-1;
}
}

printf("性别: ");
scanf("%s",str[i].sex);

printf("职位: ");
scanf("%s",str[i].position);

printf("工资: ");
scanf("%d",&str[i].salary);
printf("\n");
}
}

void display()//显示N个员工的信息
{
int i;
printf("%d个员工的信息如下:\n",N);
for(i=0;i<N;i++)
printf("%d %d %s %s %s %d\n\n",i+1,str[i].num,str[i].name,str[i].sex,str[i].position,str[i].salary);
}

void find(int data)
{
int i=0;
for(i=0;i<N;i++)
if(data==str[i].num)
{
printf("\n找到这个员工了!!!\n\n");
printf("这个员工的信息是:%d %s %s %s %d\n\n",str[i].num,str[i].name,str[i].sex,str[i].position,str[i].salary);
break;
}
if(i==N)printf("\n查无此人!!!!\n");
}

void main()
{
int id_find=0;
int i,n=0;

input_staff();//输入N个员工的信息

display();//显示N个员工的信息

printf("\n输入你要查找的员工个数:");
scanf("%d",&n);

for(i=0;i<n;i++)
{
printf("输入你要查找的员工工号:");
scanf("%d",&id_find);
find(id_find);//查找是否存在该员工
}
}

运行结果:

输入第1个员工的信息:
工号:100
姓名: gong
性别: female
职位: manager
工资: 10000

输入第2个员工的信息:
工号:101
姓名: xi
性别: male
职位: sales
工资: 5000

输入第3个员工的信息:
工号:102
姓名: fa
性别: male
职位: engineer
工资: 8500

3个员工的信息如下:
1 100 gong female manager 10000

2 101 xi male sales 5000

3 102 fa male engineer 8500

输入你要查找的员工个数:2
输入你要查找的员工工号:102

找到这个员工了!!!

这个员工的信息是:102 fa male engineer 8500

输入你要查找的员工工号:103

查无此人!!!!
Press any key to continue

热心网友 时间:2023-10-05 16:49

在网上搜吧。。。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
刘德华《忘情水》歌词 忘情水专辑 忘情水 求 忘情水-刘德华 无损音质 华东理工大学长江学院怎么样 东华理工大学长江学院机械工程系考研情况 南昌教育学院跟东华理工大学的长江学院比哪个好? 东华理工大学和东华理工大学长江学院是同一所吗 东华理工大学长江学院考研难吗 CKC证书是啥意思? ckc康复是什么意思? 小女孩为哨兵送爱心棒棒糖!在这背后反应了怎样的家庭教育? 如何删除小哨兵还原卡 如何对哨兵进行训练 小哨兵还原卡的密码 java中如何不用循环读取文件行数,比如取得一个很大文件中以s开头记录的行数,可以高效率的取得? 小哨兵一键恢复的使用方法(详细,最好配图)成功了多加分。。。 红军小哨兵的佳句? 填空 什么的哨兵 排序中的哨兵是什么意思,请简要地介绍一下 在手机上如何找回已删除的照片 如何获得一个文本文件的行数 克里斯丁开蓝色老爷车的视频是什么电影 克里斯汀斯图尔特开车吃棒棒糖是什么电影? 哈喽吧主,我想请问一下在克里斯汀·斯图尔特吧有个视频(ROBSTEN 《暮色》花絮 )里的背景音乐是什么哦? 怎么感觉克里斯汀·斯图尔特太开放 克里斯汀斯图尔特是演过i was broken的MV吗 克里斯丁斯图尔特开车吃棒棒糖是哪部电影 克里斯汀·斯图尔特到底有没有吸食大(河蟹)麻啊? 克里斯汀 斯图尔特吸烟吗? 克里斯汀斯图尔特为什么吸烟 孙犁的作品《荷花淀》中“粉红荷花箭高高的挺出来,是监视白洋淀的哨兵吧”一句的含义是什么? 方文山很幸运吧 求关于网恋故事的txt小说 倩女幽魂79异人幸运151怎么堆到200啊!非RMB玩家别说幸运钟?太贵 用汇编语言实现 printf() 你肯定与许多动物和植物进行过零距离接触,还进行过亲密.友好的对话,也肯定会有许多感触和体会。 老婆帮我付35元钱算命吧 我想了解下我们 我手机不是我的 南宋和北宋究竟是怎么回事,还有西汉和东汉 为什么有北宋南宋 南、北宋时期的都城在哪里?名字都叫什么? 秦,汉,隋。唐,元,明,清,宋他们的时间,都城,建立者,疆域,灭亡原因 金宋辽 北宋 南宋每个朝代各是由谁建立的,被谁灭的,哪几个对立 为什么分南宋,北宋;西汉,东汉。西周,东周;西晋,东晋? 为什么宋朝要分成北宋和南宋,这是什么道理?还有东晋和西晋 北宋为何把都城设在河南开封? 手写表格不够写了怎么做下一页 适合蓝莓种植经纬度是多少?陕西什么地方适合种植 手写考勤表格怎么做 蓝莓适合在河南种植吗? 和平的英文怎么写?