- 博客(11)
- 收藏
- 关注
原创 实现对称矩阵的压缩存储。【输入形式】输入一个5阶对称矩阵。矩阵元素均为整型。【输出形式】输出进行压缩存储后的一维数组,元素值之间以空格区分。【样例输入】3 6
要求:初始5阶矩阵用二维数组存储,压缩存储在一维数组中。压缩存储过程以函数形式实现。输出进行压缩存储后的一维数组,元素值之间以空格区分。输入一个5阶对称矩阵。实现对称矩阵的压缩存储。
2023-04-12 21:47:53
531
原创 【问题描述】给定两个用链表表示的整数,每个节点包含一个数位。这些数位是反向存放的,也就是个位排在链表首部。编写函数对这两个整数求和,并用链表形式返回结果。输入:(7 -> 1 -> 6) +
给定两个用链表表示的整数,每个节点包含一个数位。这些数位是反向存放的,也就是个位排在链表首部。编写函数对这两个整数求和,并用链表形式返回结果。//tc是新链表的尾部,hc是头部,和倒叙插入这个新链表。输入:(7 -> 1 -> 6) + (5 -> 9 -> 2),即617 + 295。也可能会出现,某个整数不存在的情况(即链表为空链的情况)while(a&&b)//a和b都没结束的时候。样例中的e,表示输入以非法整数作为输入结束;//在链表末尾插入结点,并返回尾指针。//函数返回结果链表。
2023-04-08 21:22:30
338
原创 午后,幼儿园老师给小朋友分玩具,玩具数量和小朋友数量相同。玩具都放在箱子里,有积木和玩偶两种,有的小朋友喜欢积木,有的喜欢玩偶。小朋友排队按次序拿玩具:如果排在最前面的小朋友喜欢箱子最上面的玩
玩具都放在箱子里,有积木和玩偶两种,有的小朋友喜欢积木,有的喜欢玩偶。1010:表示玩具放入箱子的顺序为:玩偶,积木,玩偶,积木,即当前最上面的是积木;队头小朋友喜欢积木,当前玩具为积木,拿走玩具,离队;队头小朋友喜欢玩偶,当前玩具为玩偶,拿走玩具,离队;队头小朋友喜欢玩偶,当前玩具为积木,放弃,排到队尾;队列变为:1001;队头小朋友喜欢玩偶,当前玩具为积木,放弃,排到队尾;队列变为:0011;队头小朋友喜欢积木,当前玩具为积木,拿走玩具,离队;队头小朋友喜欢玩偶,当前玩具为玩偶,拿走玩具,离队;
2023-04-03 22:46:00
480
原创 【问题描述】写两个函数,分别求两个正整数的最大公约数和最小公倍数,主函数调用这两个函数,并输出结果。两个正整数(a,b<100)由键盘输入。【输入形式】两个正整数(以空格分隔)【输出形式】最大
【问题描述】写两个函数,分别求两个正整数的最大公约数和最小公倍数,主函数调用这两个函数,并输出结果。两个正整数(a,b<100)由键盘输入。这里面的scanf录入一个数成功会返回1,失败会返回0,录入两个数成功会返回2。最大公约数的求法:辗转相除法 首先确定数字大小以及他们所在的位置。【输出形式】最大公约数 最小公倍数(以空格分隔)【输入形式】两个正整数(以空格分隔)原a*原b/现b就是最小公倍数。}当c=0时b为最大公约数。例如a>b c=a%b。【样例输入】6 15。【样例输出】3 30。
2023-04-03 11:26:57
586
原创 1. 字符统计【问题描述】输入字符串,统计字符串中字母(包括大小写)、空格的个数。【输入形式】输入多个字符串(包括字母、空格、数字和其他字符),每个字符串为一行。(字符串长度最大不超过1
EOF的判断条件,所以要先对第一个位置上的值进行判断,字符串剩余的部分进行简单的判断,统计,就可以了。这题有特殊说明,没有具体输入到底有几个字符串,我们可以使用while(scanf(“%d”,&n)!注意:这种类型的题目输入,是输入一个字符串,计算其字母个数和空格个数并输出。而不是所有字符串输入结束,再计算。输入多个字符串(包括字母、空格、数字和其他字符),每个字符串为一行。输入字符串,统计字符串中字母(包括大小写)、空格的个数。输出每个字符串的字母个数 空格个数(以空格作为分隔符)
2023-04-03 11:08:29
2015
原创 【问题描述】在带头结点单链表中查找最大值,将其值与最后一个元素交换,输出交换后的单链表各元素。【输入形式】循环输入若干个整数,以字母结束输入,建立带头结点的单链表。【输出形式】输出最
/因为是带头结点的单链表 所以先定位到第一个元素。在带头结点单链表中查找最大值,将其值与最后一个元素交换,输出交换后的单链表各元素。p=p->next;//通过循环打印 输出单链表。//创建带头结点的单链表。//找出最大值 并更换位置。s=s->next;//通过循环找到链表的最后一个元素。//q是为了表示最大值所在的位置。q->data=e;//最大值与最后一个元素的更换。p->next=q;
2023-03-30 19:32:59
292
原创 从键盘中读入最多不超过50个学生的学生信息(包括空格隔开的学号、姓名、年龄)【输入形式】每次键盘读入最多不超过50个学生的学生信息:第一行为学生人数;后面每一行为空格隔开的学生学号、姓
分别以姓名顺序(从低到高)和年龄顺序(从低到高)将学生信息输出,每行输出一位学生的信息,其中学号占3位,姓名占6位,年龄占3位。//通过循环输入学生学号,姓名,年龄。else if(s[i].name[p]==s[j].name[p])//如果姓名当前字母相等,p++进入下一个字母的比较。if(s[i].name[p]>s[j].name[p])//通过三重循环嵌套判断姓名字母大小,然后进行排序。
2023-03-29 19:24:44
1097
原创 实现可变长顺序表的查找算法。任务要求:通过顺序表的初始化、插入建立顺序表,根据查找要求,返回查找结果。【输入形式】第一行输入整数N(1<=N<=100),M(1<=M<=100)。N表示创建长
第一行输入整数N(1<=N<=100),M(1<=M<=100)。//因为顺序表从0开始计数,但数字位置从1开始,输出i+1。任务要求:通过顺序表的初始化、插入建立顺序表,根据查找要求,返回查找结果。/*补充代码,实现n个元素顺序表的创建,m个关键字值的查找*/对于每个查找关键值,若找到,输出其在顺序表的位序,若未找到,输出“no”。/*在i位置插入元素:插入成功返回1,不成功返回0*//*初始化顺序表:创建成功返回1,不成功返回0*/
2023-03-29 19:22:42
90
原创 表达式括弧匹配的检测【问题描述】利用栈的基本操作,完成表达式括弧匹配的检测。(假设表达式中只有()、[]、{}三类括弧)【输入形式】输入若干个表达式(字符串形式)。(提示:使用scanf
利用栈的基本操作,完成表达式括弧匹配的检测。(假设表达式中只有()、[]、{}三类括弧)输入若干个表达式(字符串形式)。(提示:使用scanf("%s",a)==1)若表达式括弧匹配,则输出“match”;否则输出"not match"//循环读取若干表达式,并输出判断结果。//判断表达式括弧匹配。表达式括弧匹配的检测。
2023-03-27 23:18:02
453
原创 栈的应用-数制转换【问题描述】利用栈实现十进制向二进制的转换。【输入形式】输入若干个十进制正整数,输出它们的二进制形式。(提示:输入采用scanf(“%d“,&x)==1)【输出形
思路 通过循环输入数字,先进行入栈,转换,再判断是否为空栈,出栈。//补充代码:实现输入若干整数,转换为二进制输出。//数制转换:将x的二进制形式存储在栈中。
2023-03-26 22:30:27
296
1
原创 设带头结点的单链表表示的线性表L=(a1,a2,a3,a4,……,an),试用复杂度为O(n)的算法,原地将L改造为L=(a1,a3, ……,a2,a4, ……)。【输入形式】第一行输入单链表
2.首先遍历链表,把尾结点置空,然后把奇数位置上的节点从头插入,偶数位置上的节点从尾部插入,最后连接起来。有三种方法 1.创立两个数组 然后一个存储奇数位置的节点,一个存储偶数位置的节点;3(我用的这种方法)从头到尾移形换影不断更换奇数位置上的节点与偶数位置上的节点。p->next=r;//前三行是对位置上数值的改变。//下面的部分是对指针位置的改变。这部分写个1 2 3 4 5 6 7 8两三个例子基本上就领悟了。这题的思路很简单,就是输入,建立,改变,输出。其中的重点可能就是改变链表的节点位置;
2023-03-25 23:09:34
384
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人