ImageVerifierCode 换一换
格式:DOCX , 页数:12 ,大小:34.60KB ,
资源ID:16747397      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16747397.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(专升本C++复习题Word文档格式.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

专升本C++复习题Word文档格式.docx

1、求最大公约数的方法有两种:第一种方法:穷举法(1) 、比较x、y中较小的值取出来,放到div中(2) 、div到1之间,如果有被x和y整除的数,则这个数就是最大公约数。第二种方法:辗转相除法(1)、对于已知两数x、y,先比较x和y的大小,使得xy(2)、x除以y得余数,即r = x mod y;(3)、若余数r=0,则y为求得的最大公约数,循环结束;否则执行第 (4) 步。(4) 、x = y ,y = r,重复执行第 (2) 步求56和17的最大公约数。56 除以 16 得余数8,8不为零;所以继续16除以 8得余数0;余数为0,因此8为最大公约数。五、输出图形题15、输入整数n,输出n行的

2、如下图案:* * * * * * * *16、输入整数n,输出n行的如下图案: * * * *17、输入奇数n(9=n=1),输出n行的如下图案(以输入9为例): 1 222 33333 4444444555555555 6666666 77777 888 918、输入奇数n,输出n行的如下图案: * * *六、字母译码20、(循环译码)编写程序,实现对任意字符串的加密操作。其中,对大小写字母的加密规则为:AD,BE,CFMP,NQ, XA,ZC。ad,be,cfmp,nq, xa,zc要求:输入一行电文,将其中的字母字符号进行加密,其他字符不变。加密后,在下一行输出。21、 (对称译码)有一

3、行电文,按下面规律进行加密:A-Z a-z B-Y b-y C-X c-x 即第1个字母变成第26个字母, 第i个字母变成第(26-i+1)个字母。非字母字符不变。要求编写程序进行相应的加密操作。七、递推公式22、猴子吃桃: 猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半加一个。到第n天早上想再吃时,只剩下一个桃子了。求第一天共摘了多少。输入一个n的值,求桃子总数。23、 一对兔子从出生后第3个月起每个月都生一对兔子。小兔子到第3个月又生一对兔子。假设所有兔子都不死,求第n个月的兔子对数,并输出。

4、(N由键盘输入)(要求:在主函数中从键盘输入n的值,用函数int Fib(int n),求解第n个月的兔子数,并将计算的兔子数返回给主函数,由主函数输出)九、求方程的根和定积分:24、用迭代法求x=a1/2。求平方根的迭代公式为xn+1=1/2(xn+a/xn),要求前后两次求出的x的差的绝对值小于10-5。用迭代法求平方根的算法:(1)设定一个x的初值x0=a/2;(2)用以上公式求出x的下一个值x1;(3)再将x1代入以上公式的右侧的xn,求出x的下一个值x2;(4)如此继续下去,直到前后两次求出的x的值(xn和xn+1)满足以下关系:|xn+1-xn|10-525、求方程ax2+bx+c

5、=0的根,用3个函数分别求当b2-4ac大于零、等于0和小于0时的根,并输出结果。从主函数输入a,b,c的值。26、用牛顿迭代法求方程的根。方程为ax3+bx2+cx+d=0。系数a,b,c,d的值依次为1,2,3,4,由主函数输入。求x在1附近的一个根。求出根后由主函数输出。牛顿迭代法的公式是x=x0-f(x)/f”(x),设迭代到|x-x0|=10-5时结束。用牛顿迭代法求根的函数的算法如下:dox0=x;计算f(x0)的值计算f(x0)的导数f(x0)的值计算近似根x=x0-f(x0)/f(x0)until(|x-x0|ai+1,则ai和ai+1的值互换),这样经过一趟冒泡排序后,假设最

6、后下移的元素为ak,则无序区中值较大的几个元素到达下端并从小到大依次存放在ak+1,ak+2,.an-1中,这样无序区范围变为(a0,a1,a2,.,ak)。在当前无序区内进行下一趟冒泡排序。这个过程一直到某一趟排序中不出现元素交换的动作,排序结束。整个排序过程最多执行n-1遍。这种排序方法是通过相邻元素之间的比较与交换,使值较小的元素逐渐从后部移向前部(从下标较大的单元移向下标较小的单元),就象水底下的气泡一样逐渐向上冒。故称为冒泡排序法。给定10个数,放入数组中,使用冒泡排序法由小到大排序后输出。32、选择排序的基本思想:1)从n个数中选择最小的一个,把它和第一个数组元素交换;2)从剩下的

7、n-1个数中选择最小的一个,把它和第二个数组元素交换;3)依此类推,直到从最后两个元素中选出倒数第二小的元素并把它和倒数第二个元素交换为止。如要按选择排序法对数组30 50 21 39 20排序,则各趟排序后的结果如下所示(带下划线的数表示参加交换的数):开始: 30 50 21 39 20第一趟排序:20 50 21 39 30第二趟排序:20 21 50 39 30第三趟排序:20 21 30 39 50第四趟排序:给定10个数,放入数组中,使用选择排序法由小到大排序后输出。33、直接插入排序(Insertion Sort)基本思想: 将n个元素的数列分为已有序和无序两个部分。每次处理就是

8、将无序数列的第一个元素与有序数列的元素从后往前逐个进行比较,找出插入位置,将该元素插入到有序数列的合适位置中。 Step1 从有序数列a1和无序数列a2,a3,an开始进行排序; Step2 处理第i个元素时(i=2,3,n),数列a1,a2,ai-1是已有序的,而数列ai,ai+1,an是无序的。用ai与ai-1、ai-2,a1进行比较,找出合适的位置将ai插入。 Step3 重复Step2,共进行n-1的插入处理,数列全部有序。34、归并就是将两个有序表合并成一个有序表的过程。如两个有序表(7,12,15,20)和(4,8,10,17),归并后得(4,7,8,10,12,15,17,20)

9、35、给出n(1=nap+1,则将两者交换;第二趟对所有的奇数下标q,比较aq和aq+1,若aqaq+1,则将两者交换:第三趟对偶数下标,第四趟对奇数下标,依次类推,直至整个数组元素有序排列为止。十二、查找、删除和插入某个指定的数37、 写一个函数,用二分法(折半法)在已按从小到大排序的整型数组 list (数组包含len 个元素) 中查找一个整数 n,若 n 在数组中,函数返回数 n 在数组中的下标;否则返回 -1。所谓二分法查找是:初始查找区间的下界为 0,上界为 len - 1,查找区间的中间元素下标为 k = (下界 + 上界) / 2 ;若 listk 等于 n ,查找成功;若 li

10、stk n,则新的查找区间的下界不变,上界改为 k - 1;否则新的查找区间的下界改为 k + 1,上界不变。在新区间内继续用二分法查找。38、随机产生15个值为100,200的整数存于数组中,输入一个数后,在数组中用顺序查找法查找该数,并删除数组中所有与该数相同的数。39、有一个已排好序的数组,今输入一个数,要求按原来排序的规律将它插入数组中。输入先输入n (2=10),表示一维数组的大小。按从小到大输入数组n个元素的值。(假设为整型数) 再输入要插入的值 输出 输出插完数后的数组值。输出在一行内(以空格分隔每个数)十三、其他有关一维数组的处理40、输入n个元素的数组,删除其中所有相同的数,

11、只保留第一个相同的数,并输出。如输入8个元素的数组3,2,5,7,1,2,4,7,删除后变为3,2,5,7,1,4。41、将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。=100),表示一维数组的大小。再输入数组n个元素的值。输出逆序值。42、有n个人围成一圈,顺序排号。从第1个人开始报数(从13报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号。输入n,为整数(n=10000)。输出最后留下的人原来排的号码。如输入10,则输出为4。43、编一程序,输入月份号,输出该月的英文月名。例如、输入“3”,则输出Match,要求用数组储存以下数据

12、。January,February,Match,April,May,June,July,August,September,October,November,December。输入一个数字n (1=12)。输出月份的英文单词。44、输入一行字符串,内有数字和非数字字符(包括空格),如: a123x456,1768?0302tab5876 将其中连续的数字作为一个整数,依此存放到一数组a中。例如,123放在a0,456放在a1统计共有多少整数,并输出这些数。输入一个字符串(字符个数不超过200个),内含整数个数不超过50个。输出整数个数,占一行;输出这些整数,每个一行;如输入为:a123x456,

13、1768?0302tab5876则输出:51234561768302587645、有n个整数,循环向右移动m位后,输出结果。如:5个元素的数组:1 2 3 4 5,循环向右移动1位后,为5 1 2 3 4;若循环向右移动2位后,为4 5 1 2 3。循环移位功能在函数void move(int a,int n,int m)中实现)输入n(n=200),m两个整数,占一行。接着输入n个整数。输出循环移位后的结果,占一行。十四、二维数组46、有一个nm的矩阵,要求编程序求出:每行元素的最大值,以及其所在的行号和列号。求出所有元素的最大值,以及其所在的行号和列号。先输入n,m (2=100,2=m=

14、100) 在输入矩阵中各元素的值。先输出每行元素的最大值的下标及其值,每个占一行;再输出所有元素的最大值的下标及其值。47、有一个nn的矩阵,求正对角元素的和及反对角元素的和、矩阵的转置。48、8位选手参加百米决赛,选手号码及参赛成绩保存在二维数组sz中,编程实现按升序输出7位选手号码及成绩。49、打印以下杨辉三角形。1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 .输入n (1N=10),表示杨辉三角形的行数。输出n行杨辉三角形。要求每5格输一个数,数字右对齐。50、找二维数组的鞍点,即该位置上的元素在该行上最大,在该列上最小(也可以没有鞍点)。=10

15、0, 2若有鞍点,输出所有鞍点的行和列及其值,每个占一行。若没有鞍点,则输出no,占一行51、二维数组循环右移动:如3x4的二维数组循环向右移动2位。1 2 3 4 5 6 7 8 1 3 5 7 循环移动后为:3 4 1 2 7 8 5 6 5 7 1 3 先输入n,m (1=100, 1m=100)再输入矩阵中各元素的值。最后输入循环移动的位数。输出循环移动位后矩阵中各元素的值。52、有一个班n个学生,5门课程。1)、输入n个学生的学号和5门课的成绩;2)、求5门课程的平均分;3)、找出有两门以上课程不及格的学生,输出他们的学号、全部课程成绩;4)、找出全部课程成绩在85分或85分以上的学

16、生的学号。(学生的记录由学号和5门课成绩组成,学生用结构体表示)十五、有关进制问题53、将十进制转换成二进制、八进制或十六进制。54、对8位二进制整数求补的算法。该算法的计算过程如下:从二进制数的低位(最右位)开始,依次向高位逐位查看,之到首次遇到“1”时,停止查看。然后,对该“1”位左面的更高位(如果有的话),逐位求反,所得的结果就是对原二进制数求补的结果。对二进制整数10101000求补的结果是01011000。设8位二进制整数中的各位,从低位到高位,依次存放在整型数组BIT的BIT1BIT8中。例如,二进制整数10101000存放在数组BIT后,就有BIT1=0,Bit2=0,Bit7=

17、0,Bit8=1。十六、函数55、计算a!+b!+c!+d!的值。用一个函数fac(n)计算n!。a、b、c、d的值由主函数输入,最终的值由主函数输出。输入一行,包含a、b、c、d,以空格分隔。输出的计算结果占一行。56、计算从n个人中选k个人组成委员会的不同组合数。(利用函数计算n!)分别输入n和k。输出组合数,占一行。57、 编一个程序,在主函数中输入10个英文单词,用另一个函数对它们按字典顺序排序,然后在主函数中输出这10个已排好序的单词。58、输入两个集合,分别存放在两个数组中。如a=3,2,1,4,5;b=3,5,8,6,9;a和b的并集为c=1,2,3,4,5,6,8,9;a和b的

18、交集为d=3,5;(要求用指向数组元素的指针变量处理;编写void merge(int az,int bz,int n,int m)函数,完成交集功能;编写void session(int az,int bz,int n,int m) 函数,完成交集功能。) 先输入n,表示集合a的元素个数;(1输入集合a的n个元素值(为整数,无重复值);输入m ,表示集合b的元素个数;MCBC-B-A66、请将第3、8、12、14(辗转相除法)、22、23、45、53、56题,分别用递归法求解。十九、穷举法求解问题67、两个乒乓球队进行比赛,各出3人。甲队为A、B、C3人,乙队为X、Y、Z3人,已抽签决定比赛名单。有人向队员打听比赛的名单,A说他不和X比,C说不和X、Z比。请编写程序找出3对赛手的名单。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1