问题描述:针对某个单位电话号码簿,设计一个哈希表,并完成相应的建表和查表程序。
基本要求:设每个记录有下列数据项:电话号码、用户名、住址。
从键盘输入各记录,以用户名为关键字建立哈希表,哈希函数用除留取余数法构造,采用线性探测法解决冲突。
可以插入、查找、删除并显示给定用户名的记录,并计算查找长度,哈希表保存到文件中,并能从文件中读取数据。
测试数据:取某个单位电话号码簿中的30个记录。
提高要求:(1)将电话号码薄以文件形式保存到盘上,能够按用户名和电话号码两种形式建立哈希表并实现插入、查找、删除表中元素的功能。
(2)对于相同的哈希函数,采用两种或两种以上的处理冲突的方法,如线性探测法和拉链法,比较不同的处理冲突的方法平均查找长度的变化。
测试时,采用同一组测试数据,分别用不同的方法处理冲突,记录并输出各自的平均查找长度。
(3)设计图形用户界面
2023/12/27 16:50:49 4KB 哈希表 代码 电话号码 删除
1
C++课程设计题目,包括1、输出10至99之间每位数的乘积大于每位数的和的数,例如对于数字12,有1*22+7,故输出该数。
2、求任意n个数中的最大数和最小数:先输入一个正整数n(个数),而后再输入任意n个实数,找出这n个数中的最大数及最小数并显示出来。
3、对两个有序数组进行合并:设有如下数组A、B,并假设两个数组的元素都已经有序(从大到小降序排列)。
编程序,合并A、B数组形成一个新的数组C,并使C的元素仍有序(从大到小降序排列)。
intA[10]={123,86,80,49,33,15,7,0,-1,-3};
intB[10]={100,64,51,50,27,19,15,12,5,2};
4、有一个分数序列:1/2,1/3,1/4,1/5,1/6,1/7,……,编写函数求序列前n项之和,要求在主程序中提示用户输入整数n,并判断所输入数是否合法(大于1为合法),如果合法则调用求和函数并输出结果。
5、计算两个日期之间的间隔天数:从键盘输入两个日期(如以year1,month1,day1以及year2,month2,day2的方式来输入它们),而后计算出这两个日期的间隔天数并在屏幕上显示出结果。
要求编制具有如下原型的函数difs2Date:longGetDayDifference(inty1,intm1,intd1,inty2,intm2,intd2);
并在主函数中调用向屏幕上输出计算结果。
7、声明并定义一个日期类CDate,其中数据成员m_iYear,m_iMonth,m_iDay,分别表示年、月、日,成员函数SetDate()用来设置年、月、日,成员函数IsLeapYear()用来判断当前的年份是否为闰年,构造函数带有默认形参值,可接收外部参数对m_iYear,m_iMonth,m_iDay进行初始化,另要求编写测试程序,定义一个CDate类对象,将其日期设置为2005年1月1日,调用成员函数IsLeapYear()判断该年份是否为闰年,并输出判断结果.说明:闰年的年份可以被4整除而不能被100整除,或者能被400整除.8、编写一个程序计算两个给定长方形的面积,其中在设计类成员函数GetTotalArea()(用于计算两个长方形的总面积)时使用对象作为参数。
9、设计一个时间类Time,包括3个数据成员,时(h)、分(m)、秒(s),另外包括存取各数据成员和设置时间的成员函数,按上、下午各12小时或按24小时输出时间的成员函数,以及默认构造函数,默认时间值为0时0分0秒。
10、编写一个程序,输入3个学生的英语和计算机成绩,并按总分从高到低排序(要求设计一个学生类Student)。
11.求解一元二次方程。
一元二次方程的定义为:ax2+bx+c=0(1)如果b2-4ac>0,方程有两个不同的实根,分别是:(2)如果b2-4ac<0,方程没有实根,但有虚根;
(3)如果b2-4ac=0,方程有一个实根。
请你编写一个程序,使其能求出多个二次方程的根。
该程序要询问用户是否想继续解下一个方程。
用户输入1来继续,输入其它数字,则终止程序。
程序要求用户输入a,b和c,然后根据前面的条件计算,并输出答案。
要求:使用类实现,(1)a,b,c为该类的私有成员变量;
(2)求根的实现为该类的成员函数,形式为://函数返回值:实根的个数;
//参数:x-用以返回实根值的数组;
intCalResult(doublex[]);(3)该类还包含有参构造函数、析构函数。
2023/10/23 21:12:04 7.01MB C++ 课程设计 源代码
1
实现一个关于表达式的LR语法分析程序识别用户输入的包含变量与整数的混合算术表达式(不包含减法与除法运算)文法如下: 0SE 1EE+E 2EEE 3EE 4Ei编程运用上述LR分析表识别从键盘输入的算术表达式">实现一个关于表达式的LR语法分析程序识别用户输入的包含变量与整数的混合算术表达式(不包含减法与除法运算)文法如下: 0SE 1EE+E 2EEE 3EE 4Ei编程运用上述LR分析表识别从键盘输入的算术表达[更多]
2023/9/30 2:42:02 6KB LR语法 编译原理 java
1
设计程序sy2-2.c,要求从键盘输入x的值,计算以下分段函数的值y。
2023/9/24 0:36:44 173B c语言
1
从键盘输入一系列字符(以回车符结束),并按字母、数字及其他字符分类计数,最后显示出这三类的计数结果
2023/9/5 14:47:32 763B 循环与分支程序设计 汇编程序
1
设计程序sy2-1.c,要求从键盘输入3个整数,输出其中的最小数。
2023/8/28 6:40:57 242B c语言
1
四则运算:从键盘输入一个十进制两位数的四则运算表达式,如23*56-(8*19)/6+67-8=,编程计算表达式的值,输出十进制结果(有可能是三位或四位十进制),+-*/位置任意。
并能反复执行直道对“还要继续吗?(y/n)”之类的提示回答“n”或“N”为止。
完整的汇编语言课程设计实验报告,并附有源代码
2023/8/24 18:15:50 92KB 汇编语言 四则运算 源代码
1
一、课程设计任务完成在如下两个题目中任选一个题目。
1、网络数据计算(1)在Linux系统下,使用TCP协议套接字编程;
(2)服务器应具有处理多个客户端连接并计算的能力;
(3)过程描述客户端:连接服务器后,从键盘输入一连串的整数及字符串,并将这些整数及字符串发送到服务器,并发送结束指令(自定义结束指令),等待服务器返回计算结果,显示结果后退出;
服务器:为每个客户连接创建一个进程,处理客户数据,显示每次收到一个整数或字符串,收到结束指令后将整数累加,并将累加结果返回客户端,并关闭连接,结束进程。
2、linux系统下实现聊天室(1)在Linux系统下,使用TCP协议套接字编程;
(2)服务器应具有处理多个客户端连接能力(设定最大连接数,如5个);
(3)具有群发和私聊的能力;
(4)过程描述客户端:连接服务器后,应能接收服务器发来信息并处理的能力,当收到聊天信息时,显示群发或私聊、信息发送客户及发送的信息,当收到客户加入或退出时,显示客户登录或退出,并更新客户列表;
每次可选择群发或私聊,群发时将键盘输入信息发送给服务器,私聊时,选择私聊客户并将输入信息发送给服务器。
选择退出时,结束进程或线程,关闭程序。
服务器:为每个客户连接创建一个进程或线程,处理客户信息,当有新客户加入或有客户退出时,将客户加入或退出信息发送给每个客户端;
当收到某客户的群发信息时,将信息转发给每个客户,当收到客户私聊时将信息转发给私聊客户;
客户退出时关闭相应的进程或线程。
二、课程设计时间一周三、课程设计说明书每名学生完成课程设计任务的同时,撰写课程设计说明书,见附件,可打印也可手写,但不得抄袭。
四、课程设计成绩评定标准课程设计根据学生在课程设计过程的出勤、学习态度及课程设计任务完成情况综合评定课程设计成绩,具体分值所占比例为:(1)出勤、上机态度占总成绩20%,若发现做与课程设计无关事情,每次扣5分;
(2)课程设计说明书占总成绩40%,若发现有抄袭行为,课程设计成绩为不及格;
(3)课程设计完成效果及答辩占总成绩40%。
按照优、良、中、及格和不及格五级给予最终成绩。
2023/8/19 19:15:55 62KB linux
1
散列表的设计与实现设计散列表实现电话号码查找系统。
【基本要求】1)设每个记录有下列数据项:电话号码、用户名、地址;
2)从键盘输入各记录,分别以电话号码和用户名为关键字建立散列表;
3)采用一定的方法解决冲突;
4)查找并显示给定电话号码的记录;
5)查找并显示给定用户名的记录。
自己做的很好的报告也有
2023/8/9 16:12:05 1.06MB C语言版 哈希表 电话薄
1
5.1试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。
5.2编写程序,从键盘接收一个小写字母,然后找出它的前导字符和后续字符,再按顺序输出5.3将AX寄存器中的16位数分成4组,每组4位,然后把这四组数分别放在AL、BL、CL、DL中。
5.4试编写一程序,要求比较两个字符串STRING1和STRING2所含字符是否相同,若相同则显示‘MATCH’,若不相同则显示‘NOTMATCH’。
5.5试编写一程序,要求能从键盘接收一个个位数N,然后响铃N次。
5.6编写程序,将一个包含有20个数据的数组M分成两个数组:正数数组P和负数数组N,并分别把这两个数组中的数据的个数显示出来。
5.7试编制一个汇编语言程序,求出首地址为DATA的100D字数组中的最小偶数,并把它放在AX中。
5.8把AX中存放的16位二进制数K看作是8个二进制的“四分之一字节”。
试编写一个程序,要求数一下值为3(即11B)的四分之一字节数,并将该数在终端上显示出来。
5.9试编写一汇编语言程序,要求从键盘接收一个四位的十六进制数,并在终端上显示与它等值的二进制数。
5.10设有一段英文,其字符变量名为ENG,并以$字符结束。
试编写一程序,查对单词SUN在该文中的出现次数,并以格式”SUNXXXX“显示出次数。
5.11从键盘输入一系列以$为结束的字符串,然后对其中的非数字字符进行计数,并显示出计数结果。
5.12有一个首地址为MEM的100D字数组,试编制程序删除数组中所有为零的项,并将后续项向前压缩,最后将数组的剩余部分补上零。
5.13在STRING到STRING+99单元中存放着一个字符串,试编制一程序测试该字符串中是否存在数字,如有,则把CL的第五位置1,否则置0.5.14在首地址为TABLE的数组中按递增次序存放着100H个16位补码数,试编写一个程序把出现次数最多的数及其出现的次数分别放在AX和CX中。
5.15数据段中已定义了一个有N个字数据的数组M,试编写一程序求出M中绝对值最大的数,把它放在数据段的M+2n单元中,并将该数的偏移地址存放在M+2(n+1)单元中。
5.16在首地址为DATA的字数组中,存放了100H个16位补码数,试编写一个程序求出它们的平均值放在AX寄存器中;
并求出数组中有多少个数小于此平均值,将结果放在BX寄存器中。
5.17试编写一个程序,把AX中的十六进制数转换为ASCII码,并将对应的ASCII码依次存放到MEM数组中的四个字节中,例如:当(AX)=2A49H时,程序执行完后,MEM中的4个字节的内容为39H,34H,41H和32H。
5.18把0~100D之间的30个数存入以GRADE为首地址的30个字数组中,GRADE+i表示学号i+1的学生的成绩。
另一个数组RANK为30个学生的名次表,其中RANK+i的内容是学号为i+1的学生的名次。
编写一程序,根据GRADE中的学生成绩,将学生名次填入RANK数组中。
5.19已知数组A包含15个互不相等的整数,试编写一程序,把既在A中又在B中出现的整数存在于数组中C中。
5.20设在A,B和C单元中存放着三个数,若三个数都不是0,则求出三树之和并存放于D单元中;
其中有一个数为0,则把其他两个数也清零。
试编写此程序。
2023/7/10 11:09:03 174KB 汇编语言 实验报告 练习题目
1
共 41 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡