![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
N诺刷题
一些机考题刷题
平平无奇我要摘星星
这个作者很懒,什么都没留下…
展开
-
L1-002 打印沙漏
所谓“沙漏形状”,是指每行输出奇数个符号;符号数先从大到小顺序递减到1,再从小到大顺序递增;代码思想:先通过循环计数最上层的符号个数,在根据循环打印出上半部分,由计算出的最上层个数再倒叙打印出下半部分。本题要求你写个程序把给定的符号打印成沙漏的形状。输出格式:首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。输入格式:输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。原创 2023-03-21 19:51:31 · 80 阅读 · 0 评论 -
21.幂次方
输入描述:输入两个整数X和N,用空格隔开,其中X,N<=10^9。注意可能数字太大导致运算结果溢出,所以每次运算结束后进行求余。题目描述:对任意正整数N,求XN%233333的值。输出描述:输出X^N对233333取模的结果。要求运算的时间复杂度为O(logN)。共7次乘法运算完毕。原创 2023-03-25 21:03:02 · 222 阅读 · 0 评论 -
20.二元组整数
题目描述:输入N个整数,输出这个整数两两组合且不重复的所有二元组,要求从小到大输出并且用括号的形式。输入描述:第一行输入一个整数N,N<=30。第二行输入N个整数。输出描述:按题意输出。原创 2023-03-25 20:34:28 · 195 阅读 · 0 评论 -
19.链表合并
共开辟了三条链表空间,前两条存输入的链表,最后一条用来存合并的节点。原创 2023-03-25 18:21:04 · 57 阅读 · 0 评论 -
18.单链表
题目描述:从键盘输入5个整数,将这些整数插入到一个链表中,并按从小到大次序排列,最后输出这些整数。题目主要考察是否会建链表,我先用冒泡排序进行排序,在加入到链表中,用链表输出。输入描述:输入5个整数。输出描述:按题意输出。原创 2023-03-25 17:40:37 · 80 阅读 · 0 评论 -
17.击鼓传花
题目描述:有N个小朋友围成一圈玩击鼓传花游戏,将小朋友编号为1~N,从1号开始传花,每次传3个,拿到花的小朋友表演节目后退出,任给N,问最后一个表演的小朋友编号是多少?例如:5个小朋友,从1号开始传花,第一个表演的是3号,第二个表演的是1号,第三个表演的是5号,第四个表演的是2号,最后一个表演的是4号。判题系统原来定义结构体时没加typedef,导致编译错误,一定要加上typedef,并记得移动指针。输出描述:输出最后一个表演的小朋友编号在单独的一行。输入描述:输入一个整数N,N不超过100。原创 2023-03-25 17:09:18 · 298 阅读 · 0 评论 -
16.复数
题目描述:复数可以写成A+Bi的形式,其中A是实部,B是虚部。注意字符输出前的空格,如果不处理,字符的值就是空格的值。从键盘输入两个复数,做加法或乘法并输出结果。输出描述:输出运算结果,并保留1位小数。输入:4.2 2.5 2 -1.5 +输入描述:输入两个复试以及+或*号。输入:2.5 3 -1 2.4 *输出:-9.7 3.0。输出:6.2 1.0。原创 2023-03-19 14:40:33 · 67 阅读 · 0 评论 -
15.字母频率
题目描述:从键盘输入一个字符串(可能含有数字、字母、其他可见字符),输出出现频率最高的英文字母及次数,忽略字母的大小写(如大写A和小写a均视为a)。输入:There are 10,000 soldiers in the town.输入描述:输入一行字符串,字符串长度不超过1000。注意将大写字母转换为小写字母。输出描述:按题意输出。原创 2023-03-19 14:00:06 · 107 阅读 · 0 评论 -
14.最长连续因子
没有考虑10以内的数字的特殊情况,只正确80%,还有10以内数字测试用例。此方法为暴力算法,无任何技巧。输出描述:输出其最长连续因子,如果有多个最长,输出最小的那个。题目描述:输入一个整数,输出其最长连续因子。输入描述:输入一个整数N,N<=10000。原创 2023-03-19 11:31:20 · 163 阅读 · 0 评论 -
13.删除字符串2
文章的代码部分判断条件修改为本题的符合条件,就可完成本题。两题思想相同,删掉字符段的条件不同而已。题目描述:给你一个字符串S,要求你将字符串中出现的所有"gzu"子串删除,输出删除之后的S。输入描述:输入一行字符串S,长度不超过100。输出描述:输出进行删除操作之后的S。原创 2023-03-18 23:22:08 · 91 阅读 · 0 评论 -
12.删除最大最小数
题目原来测试用例通过为75%,认为代码逻辑并没有错,也不知道具体错哪,后来看题解,有同学也出现这个问题,指出当最大值和最小值相同的情况,就输出一个任意值。我认为最大值最小值相同的话,那么意味着整个数组都相同,则可认为不输出。输入描述:第一行输入一个整数N,N<=100。第二个输入N个整数。题目描述:给你N个整数,要求删除最大和最小的数之后按原顺序输出。输出描述:按题意输出。原创 2023-03-18 23:15:08 · 215 阅读 · 0 评论 -
11.字符分类
发现情况:在VS2017中出现“烫烫”,因为最后没有加上’\0’,总共输出了整个数组的字符。但平台并未报错,可在VS2017中加入一句"zimu[a] = ‘\0’;题目描述:从键盘上输入一个字符串,将该字符串分为数字、字母、其他字符三个部分输出。输入描述:输入一串字符串,长度不超过100。输出描述:按题意输出。原创 2023-03-18 16:33:01 · 91 阅读 · 0 评论 -
10.随机数
其中C语言的随机数rand()函数,需要加上函数库#include <stdlib.h>。从X到Y,有Y-X+1个数,所以要产生从X到Y的数,只需要这样写k=rand()%(Y-X+1)+X。题目描述:从1—20之间随机抽取5个数,输出抽取出来的5个数之和与剩余未被抽取的15个数之和的总和。个人对题目的理解:求1到20的累加和。若有什么新的理解欢迎指点。输出描述:输出一个答案在单独的一行。原创 2023-03-18 16:18:49 · 92 阅读 · 0 评论 -
9.删除字符串
题目描述:给你一个字符串S,要求你将字符串中出现的所有"gzu"(不区分大小写)子串删除,输出删除之后的S。就是说出现“Gzu”、“GZU”、“GZu”、"gzU"都可以删除。输入描述:输入一行字符串S,长度不超过100。注意移动位置后将最后三个重复的值清空。输出描述:输出进行删除操作之后的S。原创 2023-03-18 16:00:36 · 144 阅读 · 1 评论 -
8.0和1的个数
此题只需要统计1和0的个数,用辗转相除法判断0和1的个数就可,代码中可不统计0的个数,因为int型的二进制个数为32位,只需将32减掉1的个数就可。题目描述:给定一个int型整数,输出这个整数的二进制的0和1的个数。输出描述:输出这个整数的二进制的0和1的个数。输入描述:输入一个整数n。原创 2023-03-18 15:36:06 · 64 阅读 · 0 评论 -
7.C与语言简单加密算法
方法二C语言中scanf()函数提供的“%[]”格式串可以用来进行多个字符的输入,并对结束符进行自定义,对于%[]还可以用^+任意字符(包括 EOF)来结束字符串的输入,如%[^EOF]就是直到有EOF 输入,字符串才中止。题目描述:编写加密程序,加密规则为:将所有字母转化为该字母后的第三个字母,即A->D、B->E、C->F、…输入任意字符串,输出加密后的结果。2.对于后三个字母得特殊处理,且只能是加2来求余再加上首字母的值,因为加上的首字母值多含了一个1。输入描述:输入一行字符串,长度小于100。原创 2023-03-18 15:10:31 · 1392 阅读 · 0 评论 -
6.判断素数
题目描述:输入一个整数,判断该整数是否为素数,若是,输出该整数,若否,输出大于该整数的第一个素数。(例如,输入为14,输出17,因为17是大于14的第一个素数)输入描述:输入一个整数n,n最大为10000。输出描述:按题意输出。原创 2023-03-18 14:43:48 · 118 阅读 · 0 评论 -
5.计算日期
题目描述:今天是2012年4月12日星期四,编写程序,输入今天开始到12月31日之间的任意日期,输出那一天是星期几。例如输入“5(回车)20(回车)”(5月20日),输出应为“Sunday”。我在VS2017测了几个用例,没发现错误,能帮菜根花看看哪里错了吗?(ps:太穷了,没有N诺会员,还不能看哪个测试用例错误)输入描述:输入第一行为月份。输入第二行为这个月的第几天。输出描述:输入这一天是星期几。原创 2023-03-18 11:39:34 · 182 阅读 · 1 评论 -
4.字符移动
代码思想:找出第一个数字记录它的位置后接着找出第一个非数字,将第一个非数字换到第一个数字的位置,并将这两者中间的数据片段向后移动一个位置,将数字放到移动后空的位置,接着找出第一个非数字,若没有则不改变位置。解决1:因为原来写的提交错误。换VS2017找出错误原因,scanf_s(“%s”, st)出现的错误,要加上数组的长度,改为scanf_s(“%s”, st,100),在VS2017才能运行成功。题目描述:输入一个字符串,将其中的数字字符移动到非数字字符之后,并保持数字字符和非数字字符输入时的顺序。原创 2023-03-18 10:33:32 · 234 阅读 · 0 评论 -
3.输入n个数进行排序
用了最简单、最粗暴容易想到的办法,对空间占用不是很好,在过程中出现了少取地址符的错误,以及函数的使用错误,误写为“bulletsort(ji[ ], a);”,实际上数组名是一级指针,不需要在后面加上[ ]。输入描述:第一行输入一个整数n,表示总共有多少个数,n<=1000。第二行输入n个整数,用空格隔开。题目描述:输入n个数进行排序,要求先按奇偶后按从小到大的顺序排序。输出描述:输出排序之后的结果。原创 2023-03-17 17:37:06 · 605 阅读 · 0 评论 -
2.能被5和6同时整除的数
由于对python语法不是很熟,出现了逻辑与的错误,使用&运行的结果没有判断是否能被6整除,换成and运行结果才正确。且python的print()输出函数是自带换行的。题目描述:输出100到1000之间能被5和6同时整除的数,输出格式为每10个数为一行。输出描述:按题目意思输出,相邻两个数之间用空格隔开(注意每一行末尾没有空格)。python语言的代码。原创 2023-03-17 16:40:29 · 592 阅读 · 0 评论 -
1.字符串翻转
]表示python中的列表,[n : m : k],n代表的是取值开始的索引,该索引将被取到,m代表的是取值结束的索引,该值不能被取到。k代表的是间隔,间隔可正可负,正值代表正向顺序跳取,负值代表反向跳取。[-1]: 列表最后一项;[:-1]: 从第一项到最后一项;[::-1]: 代表从全列表倒序取;[n::-1]: 从索引n开始倒序取值。输入描述:输入一个字符串在单独的一行,字符串长度<100。输出描述:将字符串反序输出。python语言代码`原创 2023-03-17 15:38:28 · 123 阅读 · 0 评论