(C语言)写几个函数,1.输入10个职工的姓名和职工号2.按职工号由小到大顺序排序,姓名顺序也随之调整3.要求输入一个职姓名,查找出该职工的姓名,从主函数输入要查找职工名,输出该职工学号.

写几个函数,1.输入10个职工的姓名和职工号2.按职工号由小到大顺序排序,姓名顺序也随之调整3.要求输入一个职姓名,查找出该职工的姓名,从主函数输入要查找职工名,输出该职工学号.

也可以输入职工号查询, 输出职工姓名
https://blog.csdn.net/qq_41071068/article/details/89461999

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 10
struct staff {//创建结构体变量
	int id;//职工号
	char name[1024];//姓名
};
void input(struct staff* p) {//输入职工的姓名和职工号
	struct staff* q = p;
	for (int i = 1; p < q + N; ++i, ++p) {
		printf("请输入第%d个职工的职工号\n", i);
		scanf("%d", &p->id);
		printf("请输入该职工的姓名\n");
		scanf("%s", p->name);//p->name本来就是指针,存放的就是地址,无需取地址

	}
}
void sort(struct staff* p) {//按职工号从大到小排序
	char temp[1024];
	struct staff* q = p;
	for (; p < q + N; ++p) {
		for (struct staff* qq = p + 1; qq < q + N; ++qq) {
			if (p->id > qq->id) {
				p->id = p->id ^ qq->id;//按位异或法
				qq->id = p->id ^ qq->id;
				p->id = p->id ^ qq->id;
				strcpy(temp, p->name);
				strcpy(p->name, qq->name);
				strcpy(qq->name, temp);
			}
		}
	}
}
struct staff* bisearch(char* str, struct staff* p) {
	struct staff* q = p;
	int n;
	for (int i = 1; p < q + N; ++i, ++p) {
		n = strlen(p->name);
		if (n == strlen(str) && strcmp(p->name,str) == 0) {
			return p;
		}
	}
	return NULL;
}
void main() {
	char str[1024];
	struct staff staff[N];//创建N个结构体变量
	struct staff* p;//创建指向结构体
	p = staff;//指向结构体数组的首元素
	input(p);
	sort(p);
	system("cls");
	for (; p < staff + N; ++p) {
		printf("%d\t%s\n", p->id, p->name);
	}
	p = staff;
	printf("请输入需要查询的员工姓名\n");
	scanf("%s", str);
	struct staff* q = bisearch(str, p);
	if (q != NULL) {
		printf("职工%s的职工号为:%d\n", q->name, q->id);
	}
	else {
		printf("没有名字为%s的职工\n", str);
	}
	system("pause");
}


在这里插入图片描述

爱上小公举
关注 关注
  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
C语言程序设计-任输入五个国家的字,按由小到大排序
05-26
输入五个国家的字,按由小到大排序
几个函数: ①输入10个职工姓名职工; ②按职工由小到大顺序排序姓名顺序随之调整; ③要求输入一个职工,用折半查找找出职工姓名,从主函数输入查找职工输出职工姓名
qq_45917176的博客
03-22 5726
几个函数: ①输入10个职工姓名职工; ②按职工由小到大顺序排序姓名顺序随之调整; ③要求输入一个职工,用折半查找找出职工姓名,从主函数输入查找职工输出职工姓名。 #include <stdio.h> #define N 10 // 第7章/p216/15 struct Employee { // 定义结构体 int id; // 职工 char name[10]; // 姓名 }; void input(struct Employe
几个函数:1、输入10个职工姓名职工2、按职工由小到大顺序排序姓名顺序随之调整3、要求输入一个职工,用折半找到该职工姓名,从主函数输入查找职工输出职工姓名
最新发布
2301_80157824的博客
11-28 1797
几个函数:1、输入10个职工姓名职工2、按职工由小到大顺序排序姓名顺序随之调整3、要求输入一个职工,用折半找到该职工姓名,从主函数输入查找职工输出职工姓名
几个函数。 1. 输入10个职工姓名职工 2. 按职工由小到大排序姓名随之调整 3. 要求输入一个职工,用折半查找找出职工姓名,从主函数输入查找职工输出职工姓名——C
热门推荐
我是张跑跑
07-24 1万+
1 概述 几个函数输入10个职工姓名职工职工由小到大排序姓名随之调整 要求输入一个职工,用折半查找找出职工姓名,从主函数输入查找职工输出职工姓名 2 解 //C程序设计第五版(谭浩强) //章节:第七章 用函数实现模块化程序设计 //练习7.15 几个函数。 // 1)输入10个职工姓名职工 // 2)按职工由小到大排序姓名随之调整 /...
【C】7.15几个函数:1.输入10个职工姓名职工2.按职工由小到大顺序排序姓名排序随之调整3.要求输入一个职工,用折半查找出职工姓名,从主函数输入查找职工输出职工姓名
weixin_43788627的博客
04-19 3764
//几个函数: //1.输入10个职工姓名职工 //2.按职工由小到大顺序排序姓名排序随之调整 //3.要求输入一个职工,用折半查找出职工姓名,从主函数输入查找职工输出职工姓名 #include <stdio.h> #include <string.h> void shuru(char a[][20], int b[]); void sorts(int b[], char a[][20]); void search(int b[], char a[][
C语言函数完成:输入十个职工姓名职工;按职工由小到大排序输入一个职工,用折半查找找出职工姓名输出
mhjie1998的博客
08-01 6393
#include<stdio.h> #include<string.h> void Show(int ids[], char names[][32], int len) { for (int i = 0; i < len; ++i) { printf("%d:%s\n", ids[i], names[i]); } puts("**************...
C语言实验-输入4个整数,要求由小到大(或由大到小)顺序输出
05-06
输入4个整数,要求由小到大(或由大到小)顺序输出
C语言练习——输入10个浮点数从小到大进行排序.c
06-20
适合刚学习C语言
C语言程序设计-编函数fun对主程序用户输入的具有10个数据的数组a按由大到小排序,并在主程序输出排序结果;
03-21
C语言程序设计-编函数fun对主程序用户输入的具有10个数据的数组a按由大到小排序,并在主程序输出排序结果;
C语言输入十个字母按顺序输出(大小通用)
12-14
输入十个不区分大小的字母,按照字母表顺序排序,适用C语言初学者参考
C语言程序设计-编函数实现两个数据的交换,在主函数输入任意三个数据,调用函数对这三个数据从大到小排序;.c
02-16
C语言程序设计-编函数实现两个数据的交换,在主函数输入任意三个数据,调用函数对这三个数据从大到小排序;.c
200个C语言常用函数实现代码大全.rar
03-31
200个C语言常用函数实现代码大全
科大C语言第六章函数1.ppt
11-21
科大C语言第六章函数1.ppt
C语言的快速排序1.c
04-01
void quicksort(int a[], int p, int r) { if(p){ int q = partition(a,p,r); quicksort(a,p,q-1); quicksort(a,q+1,r); } }
(C语言)几个函数,1.输入10个职工姓名职工2.按职工由小到大顺序排序,姓名顺序随之调整3.要求输入一个职工,用折半查找找出职工姓名,从主函数输入查找职工,输出职工姓名.
爱上小公举
04-22 9822
几个函数,1.输入10个职工姓名职工2.按职工由小到大顺序排序,姓名顺序随之调整3.要求输入一个职工,用折半查找找出职工姓名,从主函数输入查找职工,输出职工姓名.
C语言几个函数输入10个职工,几个函数: ①输人10个职工姓名职工; ②按职工由小到大顺序排序,姓名顺序随之调整; ③要求输人一个职工,用折半查找找出职工姓名,从主函数输人要查...
weixin_42168555的博客
05-20 2288
15、几个函数:①输人10个职工姓名职工;②按职工由小到大顺序排序,姓名顺序随之调整;③要求输人一个职工,用折半查找找出职工姓名,从主函数输人要查找职工,输出职工姓名。题目解析:利用二分查找的关键在于数据一定要先有序,所以在查找前我们需要对数据进行排序。代码示例:#include#define N 10void input(int num[], char name[N][...
输入十个员工的姓名职工
sunchanglan151的博客
03-25 4515
#include<stdio.h> void input (char na[][20], int nu[])//姓名职工肯定是不能放在同一个数组的,姓名考虑的是二维字符数组,总共十行,每一行都是相当于一个一维的数组 //数组存放的元素的类型一定是相同的。 { int i; for (i=0; i<10; i++){ printf("Inp...
输入十个职工姓名和工,按职工大小排序姓名随之排序
m0_66460650的博客
04-07 3002
#include<stdio.h> #include<string.h> int main() { void input(int gh[],char name[][8]); void paixu(int gh[],char name[][8]); int gh[10];char name[10][8]; input(gh,name); paixu(gh,name); return 0; } void input(int gh[],char name[10][8])//输.
c语言一个函数用冒泡输入10个字母按由小到大顺序排序
06-10
好的,这是一个用冒泡排序输入10个字母按照从小到大顺序排序的 C 语言函数实现: ```c void bubble_sort_letters(char letters[]) { int n = strlen(letters); // 外层循环控制排序轮数 for (int i = 0; i < n - 1; i++) { // 内层循环控制每轮比较次数 for (int j = 0; j < n - i - 1; j++) { // 如果前一个字母比后一个字母大,就交换它们的位置 if (letters[j] > letters[j + 1]) { char temp = letters[j]; letters[j] = letters[j + 1]; letters[j + 1] = temp; } } } } ``` 你可以将10个字母输入到该函数,它将会对这10个字母进行排序。在函数执行完毕后,字母数组将会被修改为按照从小到大顺序排序的结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • C语言动态内存分配函数 46620
  • 输入一行字符,统计其中各种字符个数(C语言) 44957
  • C语言中从键盘输入字符串时的一些问题 43527
  • (C语言) 从键盘输入一个字符串,将其中的小写字母全部转换成大写字母,然后输出到一个磁盘文件"test"中保存,输入的字符以'!'结束 37080
  • (C语言)有一篇文章,共有3行文字,每行有80个字符。要求统计出其中英文大写字母,小写字母,数字,空格,其他字符的个数 34578

分类专栏

  • 网络基础 7篇
  • C++ 24篇
  • C语言 14篇
  • Linux 34篇
  • Android
  • Java
  • STL 6篇
  • 项目 RSA文件加密工具 1篇
  • 数据结构与算法 10篇
  • 刷题 21篇

最新评论

  • Linux文件目录类常用命令

    diligent and persist: 表情包可以

  • (C语言)调整数组使奇数全部都位于偶数前面(输入一个整数数组,实现一个函数, 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, 所有偶数位于数组的后半部分)

    CSDN-Ada助手: 多亏了你这篇博客, 解决了问题: https://ask.csdn.net/questions/8036907, 请多输出高质量博客, 帮助更多的人

  • (C语言)编写一个函数print,打印一个学生的成绩数组,该数组中有5个学生的数据记录,每个记录包括num,name,score[3],用主函数输入这些记录,用print函数输出这些记录

    小真2301_79800315: 超级赞 ,改一下N3 -N10 就是10个学生的了,a

  • (C语言)定义一个结构体变量(包括年,月,日).计算该日在本年中是第几天,注意闰年问题.

    小真2301_79800315: 错误表情包

  • (C语言)有一篇文章,共有3行文字,每行有80个字符。要求统计出其中英文大写字母,小写字母,数字,空格,其他字符的个数

    CSDN-Ada助手: 多亏了你这篇博客, 解决了问题: https://ask.csdn.net/questions/8036397, 请多输出高质量博客, 帮助更多的人

您愿意向朋友推荐“博客详情页”吗?

  • 强烈不推荐
  • 不推荐
  • 一般般
  • 推荐
  • 强烈推荐
提交

最新文章

  • 网络基础 -- 数据链路层(以太网协议/ARP协议)
  • 网络基础 -- 网络层(IP协议)
  • 网络基础 -- 保证TCP协议可靠传输和提高性能的机制
2020年16篇
2019年217篇

目录

目录

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

4617作文网辉字起名字好吗农业农机合作社起名消防设备公司起名字健康服务类公司起名听起来很攻的名字梦幻无限版破解版黄帝内经与易经 周易梦见家里着火 周公解梦男宝宝赵姓起什么名字好周公解梦扇子给周姓孩子起名起名五行属金有什么字大全利用贺起名字起名字叫王希什么梦怡这名字怎么解释梦见自己瘦了周公解梦伊字起名搭配女孩周易免费四柱八字排盘算阴命全本免费阅读的姓名测试报告 周易潍坊周易预测禾字起名女孩姓名第二解梦网周公解梦自己有新衣服带柯字的男孩起名萌字起名意义起名字带金的字,女孩子姓岳起名大全男孩公司起名应该怎么取起名齐淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男子给前妻转账 现任妻子起诉要回网友建议重庆地铁不准乘客携带菜筐月嫂回应掌掴婴儿是在赶虫子重庆警方辟谣“男子杀人焚尸”国产伟哥去年销售近13亿新的一天从800个哈欠开始男孩疑遭霸凌 家长讨说法被踢出群高中生被打伤下体休学 邯郸通报男子持台球杆殴打2名女店员被抓19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警两大学生合买彩票中奖一人不认账德国打算提及普京时仅用姓名山西省委原副书记商黎光被逮捕武汉大学樱花即将进入盛花期今日春分张家界的山上“长”满了韩国人?特朗普谈“凯特王妃P图照”王树国3次鞠躬告别西交大师生白宫:哈马斯三号人物被杀代拍被何赛飞拿着魔杖追着打315晚会后胖东来又人满为患了房客欠租失踪 房东直发愁倪萍分享减重40斤方法“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火手机成瘾是影响睡眠质量重要因素考生莫言也上北大硕士复试名单了妈妈回应孩子在校撞护栏坠楼网友洛杉矶偶遇贾玲呼北高速交通事故已致14人死亡西双版纳热带植物园回应蜉蝣大爆发男孩8年未见母亲被告知被遗忘张立群任西安交通大学校长恒大被罚41.75亿到底怎么缴沈阳一轿车冲入人行道致3死2伤奥运男篮美国塞尔维亚同组周杰伦一审败诉网易国标起草人:淀粉肠是低配版火腿肠外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万杨倩无缘巴黎奥运男子被猫抓伤后确诊“猫抓病”春分“立蛋”成功率更高?记者:伊万改变了国足氛围奥巴马现身唐宁街 黑色着装引猜测

4617作文网 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化