级编程练习题.docx
- 文档编号:23100195
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:13
- 大小:34.46KB
级编程练习题.docx
《级编程练习题.docx》由会员分享,可在线阅读,更多相关《级编程练习题.docx(13页珍藏版)》请在冰豆网上搜索。
级编程练习题
一、简单问题:
1.编程求下列式子的值,
y=1-1/2+1/3-1/4+…+1/99-1/100
并将结果输出,格式为:
1-1/2+1/3-1/4+…+1/99-1/100=表达式的值
2.请编程实现:
由键盘输入的任意一组字符,统计其中大写字母的个数m和小写字母的个数n,并输出m、n中的较大者。
3.编程,求全部水仙花数。
所谓水仙花数是指一个三位数,其各位数字立方的和等于该数。
如:
153=13+53+33。
4.请编制程序判断输入的正整数是否既是5又是7的整倍数。
若是,则输出yes;否则输出no。
5.请编程实现:
对于给定的一个百分制成绩,输出相应的五分制成绩。
设:
90分以上为‘A’,80—89分为‘B’,70—79分为‘C’,60—69分为‘D’,60分以下为‘E’。
6.输入一行字符,将其中的字母变成其后续的第3个字母,输出。
例:
a→d,x→a;y→b;编程实现。
7.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词.例如:
1转换成Monday,7转换成Sunday.
8.输入三角形的三边a,b,c,判断能否构成三角形.若能,计算面积.
9.编程序,输入a,b,c,求方程ax2+bx+c=0的解。
10.计算出前20项fibonacci数列,要求一行打印5个数.
11.输出100~10000之间个位数为3的所有素数。
12.百钱买百鸡问题:
公鸡每只5元,母鸡每只3元,小鸡3只一元,问一百元买一百只鸡有几种买法.
13.请编制程序要求输入整数a和b,若a2+b2大于100,则输出a2+b2百位以上的数字,否则输出两数之和。
14.编程实现:
对键盘输入的任意一个四位正整数,计算各位数字平方和。
如:
2345,则:
计算22+32+42+52
15.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程.
16.编程,输出200以内所有完全平方数C(满足C2=A2+B2)及其个数。
17.设N是一个四位数,它的9倍恰好是其反序数(例如:
123的反序数是321),编程,输出所有满足条件的N。
18.编程,输出555555的约数中最大的三位数。
19.编程,输出所有个位数为6且能被31整除的五位数及其个数。
20.编写程序,输入两个整数,和+、-、*、/、%之中的任意一个运算符,输出计算结果.
21.计算:
1+1/(1+2)+1/(1+2+3)+…+1/(1+2+…+n),n由键盘输入。
22.编程计算:
1*2*3+3*4*5+…+99*100*101的值.
二、比较简单问题:
1.编一个函数GCD,求两个无符号整数的最大公约数。
主函数输入两个正整数m和n,调用GCD,求出m和n的最大公约数和最小公倍数.并输出。
2.请编程实现:
建立一个4*4的二维整型数组,求对角线元素的和。
3.写一个判断素数的函数prime,在主函数中输入10个整数,调用prime,输出这10个整数中的素数的累加和。
4.从键盘上输入若干学生的一门课成绩,存入一个数组中,当输入负数时结束输入.输出最高成绩和最低成绩及相应的序号。
5.编程计算:
1!
+2!
+3!
+…+20!
,并将结果输出.输出格式:
1!
+2!
+3!
+…+20!
=表达式的值
6.有一个3*4的矩阵,编程实现:
找出该矩阵中每行元素的最大值,存入一个一维数组中。
输出原始矩阵和结果矩阵。
7.将若干个整数放到一维数组中,找出该数组中的最大值和它的下标。
然后将它和数组中的最前面的元素对换。
8.编写一个函数converse,将一维数组中的数逆序存放,不允许使用辅助数组。
主函数输入原始数据,调用converse,实现逆置。
并将原数组和逆置后的数组输出
9.编写函数,将给定的字符串的大写字母转变成小写字母;其它字符不变。
主函数输入一个字符串,调用该函数对其进行转换,分别输出原串和转换之后的串。
10.编写一个函数,将字符数组a中的全部字符复制到字符数组b中.不要使用strcpy函数.主函数输入任意一个字符串,调该函数,复制出另一个字符串。
将两个串输出。
11.判断一个N*N的矩阵是否为对称矩阵.将原矩阵输出,判断结果输出.
12.给出年、月、日,计算该日是该年的第几天?
13.编写一个子函数fun,求两个矩阵的乘积矩阵;主程序中输入两个矩阵的阶数和元素值,调用fun,求出乘积矩阵,在主程序中将原矩阵和乘积矩阵输出。
14.打印出如图所示的杨辉三角,要求打印出n行,n由键盘输入.
1
11
121
1331
……
15.编写一个程序,将两个字符串连接起来.不要使用strcat函数;
16.编写一个程序,找出N个字符串中的最大者.将它输出.
17.编程序求矩阵中的一个元素:
该元素在所在行最小,在所在列最大.
18.编写一个函数sort,将放到一维数组中的若干个数按从小到大的顺序排序;在主函数中输入若干个数到一个一维数组中,调用sort,对该数组进行排序,在主函数中将原数组和排好序的数组输出.
19.写函数求sin(x)的值.计算公式为:
Sin(x)=x-x3/3!
+x5/5!
-x7/7!
+…+(-1)n-1x2n-1/(2n-1)!
20.编写函数GCD,求两个正整数的最大公约数,主函数中输入任意5个正整数,调函数GCD,求出这5个数的最大公约数和最小公倍数.
21.输入一个正整数,求出它的质因子的和,并输出结果,
格式为:
12的质因子和=2+2+3=7
22.有5个国家名,编程实现按字母先后顺序排列,然后分别输出原数组和排序之后的数组.
23.一维数组a中的若干个数已按从小到大的顺序有序;在主函数中输入一个数,将其插入到该数组中,使得原数组依然按原序有序.分别输出原数组和插入新元素之后的数组.
24.打印以下图案:
*
* * *
* * * * *
* * * * * * *
25.有一篇文章,有三行文字,每行有80个字符.要求统计出其中英文大写字母、小写字母、数字、空格以及其他字符的个数。
26.编写一个函数sort,将放到一维数组中的若干个数按从大到小的顺序排序;在主函数中输入若干个数到一个一维数组中,调用sort,对该数组进行排序,在主函数中将原数组和排好序的数组输出.
27.有一个5*4的矩阵,编程实现:
找出该矩阵中每行元素的最大值,并使该值成为该行的首列元素。
28.写函数求cos(x)的值.计算公式为:
Cos(x)=-1+x2/2!
-x4/4!
+x6/6!
-…+(-1)nx2n/(2n)!
29.从键盘输入五个字符串,分别求出字符串中长度最长和最短的字符串.请编程.(要求:
不要使用strlen()函数编程)
30.如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。
求3000以内的全部亲密数。
31.一个数如果恰好等于它的各因子(该数本身除外)之和(如:
6=3+2+1),则称其为“完数”;若因子之和大于该数,则称其为“盈数”。
求出2到60之间所有“完数”和“盈数”,并以如下形式输出:
E:
e1e2e3......(ei为完数)
G:
g1g2g3......(gi为盈数)
32.设a、b、c均是0到9之间的数字,abc、bcc是两个三位数,且有:
abc+bcc=532。
编程,输出满足条件的所有a、b、c的值。
33.全排有46名战士,会骑马的有30人,会摔跤的有19人,会拳击的有24人。
还知道不少人是多面手,会骑马和摔跤的有14人,会摔跤和拳击的有12人,会拳击和骑马的有8人。
编程,输出三项全能的有几人?
34.编写程序通过调用随机数函数给5*6的二维数组元素赋10-40的整数,求出二维数组每行元素平均值,将二维数组和平均值数组输出。
35.有一张由9个学生每人8个数据组成的二维数据表。
编写程序,要求将学生的总成绩按降序(由大到小)排列,计算并输出总分第二名学生的平均成绩。
姓名学号年龄政治语文数学计算机体育总分
李明1198189999887
张力2168990958090
王英3179177889578
赵锐4187984959396
周密5159592989993
吴川6177888858680
孙康7149185948288
郑重8159092949095
胡琴9167585879490
三、比较难的问题:
1.有一行文字,要求删去其中的某个字符,此行文字和要删的字符均由键盘输入,分别输出原文字和删除之后的文字(注:
原文字中的所有和要删除字符相同的字符全部删除)。
2.编写一个子函数replace,将给定字符串中的所有指定子串用另一串替换;主程序中输入一个字符串数组,调用replace将它的每个串替换,在主程序中将原数组和替换后的数组输出。
3.口袋中有12个球,其中3红,3白和6黑,从中任取8个球,编程,输出
所有不同的取法。
输出形式如下:
REDWHITEBLACK
1:
026
2:
035
......
4.小明有五本新书,要借给A、B、C三位小朋友,每人每次只能借一本,编程,输出所有不同的借法。
5.一辆卡车违犯交通规则,撞人逃跑。
现场三人目击事件,但都没记住车号,只记下车号的一些特征。
甲说:
牌照的前两位数字是相同的;乙说:
牌照的后两位数字是相同的;丙是位数学家,他说:
四位的车号刚好是一个整数的平方。
根据以上线索,编程,输出车号。
6.编程,输出1000到100000之间所有满足下列条件的所有整数及其个数:
整数的各位数字之和等于5。
7.有一正整数等差数列,其前四项之和是26,前四项之积是880,编程,输出此数列的前四项。
8.一个自然数被8除余1,所得的商被8除也余1,再将第二次的商被8除后余7,最后得到一个商为a。
又知这个自然数被17除余4,所得的商被17除余15,最后得到一个商是a的2倍。
编程,输出这个自然数。
9.请编写一个函数voidfun(intm,intk,intxx[]),该函数的功能是:
将大于整数m且紧靠m的k个非素数存入所指的数组中。
例如,若输入15,5,则应输出16,18,20,21,22。
10.一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,且这两个三位数的数码顺序正好相反,编程,输出这个三位数。
11.三对情侣参加婚礼,三个新郎为A、B、C,三个新娘为X、Y、Z。
有人不知道谁和谁结婚,于是询问了六位新人中的三位,但听到的回答是:
A说他将和X结婚;X说她的未婚夫是C;C说他将和Z结婚。
这人听后知道他们在说假话。
编程,输出谁将和谁结婚。
12.某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,但有以下限制条件:
1.A和B二人中至少去一人2.A和D不能一起去
3.A、E和F三人中要派二人去4.B和C都去或都不去
5.C和D两人中去一个6.若D不去,则E也不去
编程,输出选中的人选。
13.有A、B、C、D、E,每人额头上贴了一张或黑或白的纸。
5人对坐,都可看到其他人的颜色,但都不知道自己的颜色。
5人相互观察:
A说:
有三人额头上贴白纸,一人额头上贴的是黑纸
B说:
我看见其他四人额头上贴的都是黑纸
C说:
有一人额头上贴白纸,其他三人贴的是黑纸
D说:
我看见四人额头上贴的都是白纸
E什么也没说
现在已知额头贴黑纸的人说的都是谎话,额头贴白纸的人说的都是实话。
编程,输出这五人中额头贴白纸的人选和额头贴黑纸的人选。
14.求解爱因斯坦数学题。
有一条长阶梯,若每步跨2阶,则最后剩余1阶,若每步跨3阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。
若每次跨7阶,最后才正好一阶不剩。
编程,输出这条阶梯共有多少阶?
15.我国古代数学名著<<孙子算经>>中,提出了闻名于世的“孙子问题”,即:
今有物不知其数,三个三个地数,剩二个;五个五个地数,剩三个;七个七个地数,剩二个。
编程,输出该物的个数。
16.有1,2,2,3,4,5六个数字,请输出它们所有不同的排序结果,如“322145”、“232154”等,其中4不能在第三位,3与5不能相连!
17.编程,从键盘输入1个人的工资(1000—9999之间的整数),计算给这个人发工资时,需面值100元,50元,20元,10元,5元,2元和1元的人民币各多少张?
输出总张数最少的10种方案
18.有一堆硬币,面值只有1分、2分和5分三种。
其中有57枚面值不是5分,有77枚面值不是2分;有72枚面值不是1分。
问1分、2分和5分的硬币各有多少?
编程,输出全部可能的答案。
19.编程,求解下列算式中各字母所代表的数字并输出。
PEAR
- ARA ───────
PEA
20.面包bread、奶油butter和咖啡coffee在一起可以组成一个算式:
BREAD
BREAD
+BUTTER
COFFEE
设A、B、C、D、E、F、O、R、T和U均代表数字0~9之一。
编程,输出各字母所代表的数字。
21.在给定范围内查找并输出所有由两个不同数字组成的六位回文数。
一个整数如果与其反序数相等,则称该整数为回文数。
例如,112211是回文数并且112211是由两个不同的数字1和2组成的,因此112211是符合上述条件的数。
【编程要求】
(1).编写函数intpalin(longm1,longm2,longx[]),在m1m2范围内查找所有由两个不同数字组成的回文数并依次保存到x指向的数组中。
函数返回x数组中回文数的个数。
(2).编写main函数,调用palin函数查找100000120000范围内所有由两个不同数字组成的六位回文数并将这些数保存到一维数组中,将该一维数组中的数据输出到屏幕并保存到文件myf2.out中。
【测试数据与运行结果】
输出结果:
100001101101110011112211113311114411115511
116611117711118811119911
22.【编程要求】
(1).编写函数intprime_m(intn,intx[],longy[]),在2n范围内查找同时符合以下条件的整数m:
2m-1是素数、2m-1的反序数是奇数、2m-1的十进制表示中包含数字1。
将2n范围内符合上述条件的所有整数m依次保存到x指向的数组中,将与m对应的整数2m-1依次保存到y指向的数组中。
函数返回x数组中保存的整数个数。
(2).编写main函数,接收键盘输入的n值,调用prime_m函数找到2n范围内所有符合给定条件的整数m及整数2m-1并将它们分别保存在两个一维数组中,将两个一维数组中的数据按所示格式输出到屏幕并保存到文件myf2.out中。
【测试数据与运行结果】
测试数据:
n=20
输出结果:
531
7127
17131071
23.【编程要求】
(1).编写函数intDel_findgcd(inta[],intn,int*f),对于a指向的数组中前n个元素,删除所有下标值为奇数的数组元素中保存的整数,求得数组中剩余的n/2(或n/2+1)个整数的最大公约数并将其保存到f指向的变量中。
函数返回a数组中剩余整数的个数。
(2).编写main函数,声明一个一维数组并用测试数据初始化,调用Del_findgcd函数删除数组中的所有满足条件的整数并求出剩余整数的最大公约数,将数组中剩余的整数和这些整数的最大公约数输出到屏幕并保存到文件myf2.out中。
【测试数据与运行结果】
测试数据:
68911121315161819(n=10)
输出结果:
69121518,maxcommondivisor=3
24.【程序功能】
产生Fibonacci数列的前40个数,再找出其中的所有素数。
Fibonacci数列为:
1,1,2,3,5,8,13,21,34,55,89,....。
【编程要求】
(1).编写函数voidFibonprime(longf[],intn),产生Fibonacci数列的前n个数,再将其中的所有素数放入数组f中,函数返回f数组中素数的个数。
(2).编写main函数,调用Fibonprime函数求出Fibonacci数列前40个数(n=40)中的素数,将这些素数输出到屏幕并保存到文件myf2.out中。
【测试数据与运行结果】
运行结果:
2351389233159728657514229
25.用以下级数展开式求ln(x+
)(-1≤x≤1)的近似值,允许误差为10-6。
ln(x+
)=
【编程要求】
(1).编写函数doublefun(doublex,doubleeps),计算
的近似值(直到最后一项的绝对值小于eps)并作为函数返回值。
(2).编写main函数,接收键盘输入的x值及允许误差eps值并确保-1≤x≤1,用x和eps作为实参调用fun函数,将x、eps值和计算结果输出到屏幕及结果文件myf2.out中。
最后将考生本人的准考证号字符串也保存到结果文件myf2.out中。
【测试数据与运行结果】
测试数据:
x=0.5,eps=1e-6
运行结果:
x=0.500000,eps=0.000001,sum=0.481212
26.【编程要求】
(1)create函数的功能是:
创建一个有N个元素的整型一维数组(N及N个整数由键盘输入),对该数组N个元素从小到大排序,函数返回该动态数组的首地址。
(2)insert函数的功能是:
在p指向的有n个元素的有序数组中插入整数x,使得p数组的n+1个元素仍按从小到大有序。
(3)主函数完成函数调用,和结果输出。
27.【编程要求】
(1)编写函数fun和f,函数fun()的功能是:
计算
S=f(-n)+f(-n+1)+…+f(0)+f
(1)+f
(2)+…f(n)的值。
例如,当n为5时,函数值应为10.407143。
f(x)函数定义如下:
(2)主函数输入n值,调用fun,将计算结果输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程 练习题