编程大餐——针对新手的练习题哦~
给大家来个好玩的,基本是针对菜鸟的练习题,称之“编程大餐”本文档中的题目选自网上的编程100例和趣味编程100例,以及一些公司面试试题和平时做过的一些练习题目。
题目编号说明:编号前两位说明该题的分数值,例如0812,表示如果您提供这个题目答案,获得8分
/************************************************************************************************
编号0101: 从键盘输入三角形的三边长,输出三角形面积。
编号0103: 从键盘输入a,b,c三个实数值,输出 a X*X + b X + c =0 这个一元二次方程的根。
编号0106: 从键盘输入两个整数,输出值大的那一个。
编号0107: 输入年月日三个整数,输出这一天是这年的第几天(注意闰年)。如果输入的数字不构成日期,输出0。
编号0108: 输入一个字符,输出这个字符的ASCII码,并且判断这个字符是不是字母(如果是,那么是大写还是小写);是不是数字。输出判断的结果。
编号0110: 输入三角形的三边(整数),输出是否构成三角形,如果构成,输出是等边、等腰还是一般三角形。
编号0201:企业发放的奖金根据利润提成。利润低于或等于10万元时,奖金可提10%;利润高
于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提
成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于
40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于
100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?
编号0210: 输入两个正整数m和n,求其最大公约数和最小公倍数。
编号0212:求1+2!+3!+...+10!的和
编号0220: 输入一行字符,分别统计出其英文字母、空格、数字和其它字符的个数。
编号0225:问555555的约数中最大的三位数是多少?
编号0229:个位数为6且能被3整除的五位数共有多少?
编号0230: 题目:打印出如下图案(菱形)
*
***
*****
*******
*****
***
* 最长行的*号数由键盘输入
编号0233:输入一个大于6的偶数,将其分解成两个素数和的形式(歌德巴赫猜想)
编号0236:取一个整数a从右端开始的4~7位。
编号0239:在歌星大赛中,有10个评委为参赛的选手打分,分数为1到100分。
选手最后得分为:去掉一个最高分和最低分后其余8个分数的平均值。
请编程从键盘输入10个评委的分数,输出最终选手得分。
编号0240: 写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出其长度。
编号0246:输出ASCII码表
编号0250:编写input()和output()函数输入,输出5个学生的数据记录。(结构:编号、姓名、成绩)
编号0255:键盘输入两个分数,编程比较这两个分数的大小
编号0260:验证角谷猜想。
问题:从1到n的任何一个自然数, 只要对n反复进行下列两种运算:
1)如果n是偶数, 就除以2 ;
2)如果n是奇数, 就乘以3加1,
最后的结果总是1。
例如输入22 输出 22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1
这个问题大约是在二十世纪五十年代被提出来的。在西方它常被称为西拉古斯Syracuse)猜想,因为据说这个问题首先是在美国的西拉古斯大学被研究的;
而在东方,这个问题由将它带到日本的日本数学家角谷静夫的名字命名,被称作角谷猜想。除此之外它还有着一大堆其他各种各样的名字,
大概都和研究和传播它的数学家或者地点有关的:克拉兹(Collatz)问题,哈斯(Hasse)算法问题,乌拉姆(Ulam)问题等等。
今天在数学文献里,大家就简单地把它称作“3x +1问题”。
因为这是个形式上很简单的问题,要理解这个问题所需要的知识不超过小学三年级的水平,所以每一个数学爱好者都可以来碰碰运气,试试是不是能证明它。
不过在这里要提醒大家的是,已经有无数数学家和数学爱好者尝试过,其中不乏天才和世界上第一流的数学家,他们都没有成功。
二十多年前,有人向数论学家保尔·厄尔多斯(Paul Erdos)介绍了这个问题,并且问他怎么看待现代数学对这问题无能为力的现象,
厄尔多斯回答说:“数学还没有准备好来回答这样的问题。”
角谷静夫曾用计算机验算到7×10^11 ,并未出现反例。
1992年李文斯(G.T.Leavens)和孚门南(M.Vermeulen)也以计算机对小于5.6×10^13的正整数进行验证,也未发现反例。
这个猜想至今无人证明,也无人推翻。
编号0301:输入正整数n,计算从1到n这n个数字共有多少个1?(例如,123有1个1;1012有2个1;111有3个1)
编号0302: 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
编号0303: 有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
编号0305: 打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
编号0310: 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月
后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
编号0315:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和。
编号0318:求0—7所能组成的奇数个数。
编号0320:计算调和级数 1+1/2+1/3+......+1/n
编号0327:100!的末尾有多少个零?
编号0328:某人从2000年1月1日起开始“三天打鱼两天晒网”,
问这个人在以后的某一天中是在“打鱼”,还是在“晒网”
编号0333:利用递归函数调用方式,将所输入的n个字符,以相反顺序打印出来。
编号0336:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
编号0339:构造N*N阶的拉丁方阵(2<=N<=9),使得方阵中的每一行和每一列中数字1到N只出现一次。
如N=4时:
1 2 3 4
2 3 4 1
3 4 1 2
4 1 2 3
编号0345:求13的13次方的最后三位数
编号0346:求完全数。
在中世纪,6被看成爱神纳维斯数,象征美满的婚姻,那么6具有什么性质呢?
6的约数,除去本身6以外,还有1、2和3,也就是 6=1*2*3碰巧的是 6=1+2+3。
如果把一个自然数的所有约数(不包括本身)加起来,恰好等于这个数时,这样的自然数就叫完全数。实际上 ,6是完全数家族中最小的一个成员。
再举一个例子: 28的约数有:1、2、4、7、14 而1+2+4+7+14=28。所以28是完全数。那么除了6和28之外, 你可以通过编程求出其他的完全数么?
编号0348:求亲和数对:若有两个整数a和b,把a的全部约数(不包括本身)相加,其结果恰好等于b,而把b的全部约数(不包括本身)相加,
其结果又恰好等于a,那么a和b就称为亲和数。它们就像恋人或亲密战友一样,你中有我,我中有你。
例如:220和 284。我们把220的所有约数相加:1+2+4+5+10+11+20+22+44+55+110=284。
然后我们再把284的所有约数相加:1+2+4+71+142=220。看明白了么?
我们可以认为完全数是特殊的亲和数,因为完全数自己和自己亲和。
你可以通过编程,求出其他的亲和数对么?
编号0350:求这样一个三位数,该三位数等于其每位数字的阶乘之和
编号0351:求具有abcd=(ab+cd)*(ab+cd)性质的四位数
编号0352:输入奇数,打印奇数阶幻方
编号0353:
还有几盏灯亮着
一条长廊里奥依次装有100盏电灯,从头到尾编号1、2、3、…99、100。每盏灯由一个拉线开关控制。开始,电灯全部都关着。
有100个学生从长廊穿过。第一个学生把号码凡是1的倍数的电灯的开关拉一下;接着第二个学生把号码凡是2的倍数的电灯的开关拉一下;
第三个学生把号码凡是3的倍数的电灯的开关拉一下;如此继续下去,最后第一百个学生把号码凡是100的倍数的电灯的开关拉一下。
100个学生按此规定走完以后,长廊里的电灯还有几盏亮着?
编号0360:某侦查队接到一项紧急任务,要求在A、B、C、D、E、F六个队员中尽可能多地挑若干人,
但有以下限制条件:A和B两人中至少去一人;A和D不能一起去;AE和F中要派两人去;
B和C都去或都不去;C和D两人去一个;若D不去,则E也不去。
问应当让谁去
编号0361:小明假期同爸爸一起去书店,他选中了六本书,每本书的单价分别为:3.1、1.7、2、5.3、0.9、7.2。
不巧的是,爸爸兜里只带了十几块钱,为了让小明过一个愉快的假期,爸爸仍然同意买书,但提出一个要求,
要小明从中选出若干本,使得单价相加所得和10最接近,应该怎么选呢?
编号0362:现有21根火柴,两人轮流取,每次可取1至4根,不可多取,也不能不取,谁取最后一根谁输。
编程实现人机对弈,人先机后,要求计算机“常胜”。
编号0366:计算e小数点后10位。e=2.71828......
小数点后100位 (编号1266)
小数点后1000000位以上,改编号为(6666),附带好处:可以不扣分旷课
编号0377:输入一个数,计算这个数的开方(小数点后10位),不得使用sqrt。
小数点后100位 (编号1277)
小数点后1000000位以上,改编号为(7777),附带好处:可以不扣分旷课
编号0388:计算圆周率的近似值(保留小数点后10位数字)。 方法:割圆术、近似值、各种级数求法
如果能算出小数点后100位数字以上,请改编号为(1288);
如果能算出小数点后1000000以上,改编号为(8888),附带好处:可以不扣分旷课
编号0392:反向输出一个链表。
编号0401: 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在
第10次落地时,共经过多少米?第10次反弹多高?
编号0405:显示当月月历
编号0410:输入年份,输出当年年历,最好同行显示两个月。
编号0409: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个
第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下
的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。
编号0410: 假定桌子上有三瓶啤酒,将每瓶中的酒平分给几个人喝,但喝各瓶酒的人数是不一样的,不过其中有一个人喝了每
一瓶中的酒,且加起来刚好是一瓶,请问喝这三瓶酒的各有多少人?
编号0413:使用数组精确计算M/N的值。如果M/N是无限循环小数,则计算并输出至它的第一循环节。
编号0414:一个n位数,判断它是不是回文数。即12321是回文数,从左到右与从右到左情况一样,对称。
编号0418:打印出杨辉三角形(要求打印行数从键盘输入)
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
编号0420:打印蛇形矩阵(从1开始的上三角矩阵,要求打印行数从键盘输入)
1 3 6 10 15
2 5 9 14
4 8 13
7 12
11
编号0429: 有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出
圈子,问最后留下的是原来第几号的那位。
编号0430:一个自然数的七进制表达式是一个三位数,而这个自然数的九进制表示也是一个三位数,
且这两个三位数的数码顺序正好相反,求这个三位数。
编号0434:一元钱人民币换成零钱,共有多少种不同的换法?(例如两个五毛、五个一毛等)
编号0444:在一个4*4的格子中,每个格子填上一个一位数字,使得每一行、每一列、两条对角线组成的四位数字都是回文素数。
编号0446:按递增顺序依次列出所有分母为40,分子小于40的最简真分数
编号0448:将1到9这九个数字分成三个3位数,要求第一个3位数,正好是第二个3位数的二倍,是第三个3位数的三倍,
问应当怎样分法?
编程0454:验证四方定理:所有的自然数至多只要用四个数的平方和就可以表示。
编号0457:完成两个超长正整数的加法。
编号0463:一幅扑克有52张牌,打牌时要平分给4个人,请设计一个程序完成自动发牌。
黑桃用S表示;红桃用H表示;方块用D表示;梅花用C表示
编号0555:猜数字游戏
猜数字可以算是一种益智类小游戏,一般两个人玩,也可以由一个人和电脑玩,可以在纸上、在网上都可以玩。这种游戏规则简单,但可以考验人的严谨和耐心。
这个游戏的规则比较简单,一般两个人玩,一方出数字,一方猜。出数字的人要想好一个没有重复数字的4位数(首位可以是0),不能让猜得人知道。
猜的人就可以开始猜。每猜一个数字,出数者就要根据这个数字给出几A几B,其中A前面的数字表示位置正确的数的个数,
而B前的数字表示数字正确而位置不对的数的个数。如正确答案为5234,而猜的人猜5346,则是1A2B,其中有一个5的位置对了,记为1A,
而3和4这两个数字对了,而位置没对,因此记为2B,合起来就是1A2B。 接着猜的人再根据出题者的几A几B继续猜,猜的人共有8次机会。
猜中,则猜的人获胜。8次都未猜中,出题人获胜。
这个游戏有三种设计方法:
1) 计算机随机产生一个4位无重复数字的4位数字,人来猜。(编号0555)
2) 玩家心中想好一个4位数字,计算机将它在8次之内猜出来。你一定要正确的回答几A几B的问题哟。(编号1255)
3) 同1)类似,但难度增大。计算机不随机产生数字,而是根据玩家输入的内容尽量让玩家猜不出来,也就是网上说的变底牌。(编号5555)
编号0602:
用0,1,2,3,4,5,6,7,8,9十个数码组成一个分数,要求不漏不重,而且分子、分母各五个数码,使它的值近似最等于圆周率PI,你能办到么?
例如:76591/24380=3.14155045119
95761/30482=3.14155895282
39480/12567=3.14155895282
97468/31025=3.14159548751
37869/12054=3.141612742658
95147/30286=3.14161658855
编号0614:验证2^(2^5)+1是质数(素数)么?难度:这个数字超过了int的范围;^是次方的意思
编号0630:八数码游戏(数字拼图)
编号0640--0646:求所有可能的以下形式的算式,每个算式中有九个数位,正好是1到9这九个数字。
XXX+XXX=XXX (168种可能)
X*XXXX=XXXX (2种可能)
XX*XXX=XXXX (7种可能)
X*XXX=XX*XXX(13种可能)
X*XXX=X*XXXX(28种可能)
XX*XX=X*XXXX(7种可能)
XX*XX=XX*XXX(11种可能)
编号0660--0663:编写程序求解下式中各字母所代表的数字,不同的字母代表不同的数字。X代表任意一个数字。
PEAR
- ARA
------------
PEA
SEVEN
THREE
+ TWO
-----------
TWELVE
X7X
___________
XX| XXXXX
X77
----------
X7X
X7X
-----------
XX
XX
-----------
0
X7XXX
___________
XXX| XXXXXXXX
XXXX
----------
XXX
XXX
-----------
XXXX
XXX
----------
XXXX
XXXX
-----------
0
编号0670--0672:将1、2、3、4、5、6、7、8、9九个数字分成以下三种分数形式之一,每个数字只能用一次,
使得该分数刚好等于一个整数。
XXXX XXXXX XXXX
X------ X------ XX------
XXXX XXX XXX
编号1000:Nim取子游戏
Nim取子游戏是由两个人面对若干堆硬币(或石子)进行的游戏。设有k>=1堆硬币,各堆分别含有N1,N2,……NK枚硬币。
游戏的目的就是选择最后剩下的硬币。游戏法则如下:
1.两个游戏人交替进行游戏(游戏人I和游戏人II);
2.当轮到每个游戏人取子时,选择这些堆中的一堆,并从所选的堆中取走至少一枚硬币(游戏人可以取走他所选堆中的全部硬币);
3.当所有的堆都变成空堆时,最后取子的游戏人即为胜者。
有兴趣的同学不妨考虑考虑,有没有必胜的策略呢?
编号1201:算200!,输出完整答案。如果能够算1000000!GOOD!去算圆周率!!
编号1208:囚徒放风
从前,有九名特别凶恶的江洋大盗,已被逮捕入狱。为了贯彻人道主义原则,他们每天都要被监狱看守人员带出去放风。
放风时分为三组,每组三人,戴上手铐。为了防止他们策划阴谋诡计,在六天中任何两名罪犯被铐在一起的机会只能有一次。
请问,狱吏应该怎样制定这样一个谨慎的放风计划?
补充一点:例如 A—B—C 。在这种情况下,由于被B分开,所以A和C并不算被铐在一起。
编号1219:十五女生散步
一位女教师带领15名女学生,每天都要散步一次。每次散步,她总是把女生们平均分成五组,试问:能够制定出一个分组计划,使一个星期(7天)内,
每一个女生和其他任何一名同学只有一次同组?
编号1221:S先生和P先生
有两个整数,2到99之间。两个先生S和P, S先生知道这两个数字的和,P先生知道这两个数的乘积,下面是这两个先生的对话:
S: 我知道,你不知道这两个数字是什么,我也不知道。
P: 我知道这两个数是什么了。
S: 我也知道这两个数是什么了。
请编程求出这两个数字。
编号1232:推箱子游戏
编号1243:加减乘除算24游戏(计算机出数字,人来猜)
编号1254:加减乘除算24游戏(人出数字,计算机来猜)
编号1266:贪吃蛇游戏
编号2222:翻转棋游戏
编号2233:扫雷游戏
编号3333:打字游戏(天上向下掉字母)
************************************************************************************************/
附件答案只有一部分,题目来源老师,答案来自周围..有什么意见尽管提,有什么没答案的题目能搞出来的就万分感谢了!!!
编程大餐答案.rar
(19.74 KB)