信息学奥赛题库说课材料Word文档格式.docx
《信息学奥赛题库说课材料Word文档格式.docx》由会员分享,可在线阅读,更多相关《信息学奥赛题库说课材料Word文档格式.docx(89页珍藏版)》请在冰豆网上搜索。
and
(7<
8)
(8>
9)
or
(9<
10)
2
((3=3)
(3<
7))
选择结构
13、读入三个整数,从小到大输出。
14、从键盘输入一个数,判断它的奇偶性,如果是奇数则输出yes,否则输出no。
15、从键盘读入一个数,判断它的正负。
是正数,则输出"
+"
,是负数,则输出"
-"
。
16、从键盘输入一个数,如果是两位数那么输入yes否则输入no。
17、输入两个数a,b,输出较大数的平方值。
18、铁路托运行李规定:
行李重不超过50公斤的,托运费按每公斤0.15元计费;
如超50公斤,超过部分每公斤加收0.10元。
编一程序完成自动计费工作。
19、某超市为了促销,规定:
购物不足60元的按原价付款,超过60不足200的按九折付款,超过200元的,超过部分按八折付款。
编一程序完成超市的自动计费的工作。
20、打印某年某月有多少天。
(提示:
A、闰年的计算方法:
年数能被4整除,并且不能被100整除;
或者能被400整除的整数年份。
B、利用MOD运算可以判断一个数能否被另一个数整除)。
21、编写一个程序,功能是从键盘输入一个整数,判断它是否二位数,如果是,就打印它,然后结束程序,
22、编写一个程序,功能是从键盘输入三个整数,打印出其中最大的一个值。
23、当前小学生的成绩单由以前的百分制改为优秀、良好、合格、不合格四个等级的等级制。
编一程序完成分数的自动转换工作。
转换规则如下:
60分以下的为不合格;
60到69分为合格;
70到89分为良好;
90分以上的为优秀。
可以利用DIV运算来使程序更简明)
循环结构
分别用repeat,while循环做以下习题。
24、计算1—1000之间能同时被3和5整除的整数的和。
25、求所有的三位数中十位数能被个位数和百位数之和整除的数。
26、求水仙花数。
所谓水仙花数,是指一个三位数abc,如果满足a^3+b^3+c^3=abc,则abc是水仙花数。
27、求所有满足条件的四位数:
(1)这四位数是11的倍数;
(2)b+c=a;
28、计算下列式子的值:
28a
(1)1+3+……+99
28b
(2)1+2+4+8+…+1024
29、输入一个整数,计算它各位上数字的和。
(注意:
是任意位的整数)
30、输入一整数A,判断它是否质数。
若从2到A的平方根的范围内,没有一个数能整除A,则A是质数。
)
用for循环做以下习题
31、1+3+5+…..+…..99=?
32、1+1/2+1/3+1/4+……1/100=?
33、1*2+2*3+3*4+……+n*(n+1)=?
34、1+1/2!
+1/3!
+…..1/n!
=?
35、求水仙花数。
36、输入一整数A,判断它是否质数。
37、1+(1+3)+(1+3+5)+……(1+3+5+……+n)=?
n为奇数。
38、s=-1+3-5+7-9+……nn为奇数。
二、综合练习题
39、计算下列式子的值:
(1)1+2+……+10001a
(2)1+3+5+……+97+992a(3)1+2+4+8+…+10243a
40、输入一个四位数,求它各位上数字的和。
41、求所有的三位数中十位数能被个位数和百位数之和整除的数。
42、求水仙花数。
43、求所有满足条件的四位数:
44、输入一个整数,计算它各位上数字的和。
是任意位的整数)
45、输入一整数A,判断它是否质数。
46、求两个数的最小公倍数和最大公约数。
公约数一定小于等于两数中的小数,且能整除两数中的大数。
公倍数一定大于等于两数中的大数,且是大数的倍数,又能给两数中的小数整除。
47、编写一个译码程序,把一个英语句子译成数字代码。
译码规则是以数字1代替字母A,数字2代替字母B,……,26代替字母Z,如遇空格则打印一个星号‘*’,英文句子以‘.‘结束。
48、“百钱买百鸡”是我国古代的著名数学题。
题目这样描述:
3文钱可以买1只公鸡,2文钱可以买一只母鸡,1文钱可以买3只小鸡。
用100文钱买100只鸡,那么各有公鸡、母鸡、小鸡多少只?
与之相似,有"
鸡兔同笼"
问题。
49、输入一个正整数N,把它分解成质因子相乘的形式。
如:
36=1X2X2X3X3;
19=1X19
50、判断一字符串是否是回文数,如121、12321、ABA等(字符串输入时以‘.’结束)。
如输入:
12321.
输出:
yes
51、打印下列图案:
(输入N值来控制图案的规模,下列图案均以N=3为例)
#
@
*
&
&
51a51b51c51d
52、计算1—1000之间能同时被3和5整除的整数的和。
53、打印下列图形:
1
121
12321
1234321
54、一百匹马驮一百块瓦,一匹大马可以驮3块,一匹母马可驮2块,小马2匹可驮1块。
试编程求需要各种马多少匹?
55、有三种纪念邮票,第一种每套一张售价2元,第二种每套一张售价4元,第三种每套9张售价2元。
现用100元买了100张邮票,问这三种邮票各买几张?
56、赵、钱、孙、李、周五人围着一张圆桌吃饭。
饭后,周回忆说:
“吃饭时,赵坐在钱旁边,钱的左边是孙或李”;
李回忆说:
“钱坐在孙左边,我挨着孙坐”。
结果他们一句也没有说对。
请问,他们在怎样坐的?
57、找数。
一个三位数,各位数字互不相同,十位数字比个位、百位数字之和还要大,且十位、百位数字之和不是质数。
编程找出所有符合条件的三位数。
注:
1.不能手算后直接打印结果。
2.“质数”即“素数”,是指除1和自身外,再没有其它因数的大于1的自然数。
58、选人。
一个小组共五人,分别为A、B、C、D、E。
现有一项任务,要他们中的3个人去完成。
已知:
(1)A、C不能都去;
(2)B、C不能都不去;
(3)如果C去了,D、E就只能去一个,且必须去一个;
(4)B、C、D不能都去;
(5)如果B去了,D、E就不能都去。
编程找出此项任务该由哪三人去完成的所有组合。
59、输入一个字符串,内有数字和非数字字符。
如A123X456Y7A,302ATB567BC,打印字符串中所有连续(指不含非数字字符)的数字所组成的整数,并统计共有多少个整数。
60、甲、乙、丙、丁四人共有糖若干块,甲先拿出一些糖分给另外三人,使他们三人的糖数加倍;
乙拿出一些糖分给另外三人,也使他们三人的糖数加倍;
丙、丁也照此办理,此时甲、乙、丙、丁四人各有16块,编程求出四个人开始各有糖多少块。
61、截数问题:
任意一个自然数,我们可以将其平均截取成三个自然数。
例如自然数135768,可以截取成13,57,68三个自然数。
如果某自然数不能平均截取(位数不能被3整除),可将该自然数高位补零后截取。
现编程从键盘上输入一个自然数N(N的位数<
12),计算截取后第一个数加第三个数减第二个数的结果。
62、从键盘输入一段英文,将其中的英文单词分离出来:
已知单词之间的分隔符包括空格、问号、句号(小数点)和分号。
例如:
输入:
Thereareapples;
orangesandpeachesonthetable.
输出:
there
are
apples
oranges
and
peaches
on
the
table
63、A,B,C,D,E五个人合伙夜间捕鱼,凌晨时都疲惫不堪,各自在河边的树丛中找地方睡着了,日上三竿,E第一个醒来,他将鱼数了数,平分成五分,把多余的一条扔进河中,拿走一份回家去了,D第二个醒来,他并不知道有人已经走了,照样将鱼平分成五分,又扔掉多余的一条,拿走自己的一份,接着C,B,A依次醒来,也都按同样的办法分鱼(平分成五份,扔掉多余的一条,拿走自己的一份),问五人至少合伙捕到多少条鱼。
也许你能用数学办法推出鱼的条数,但我们的要求你编出一个程序,让计算机帮你算出鱼的总数。
64、试编程找出能被各位数字之和整除的一切两位数。
65、一个正整数的个位数字是6,如果把个位数字移到首位,所得到的数是原数的4倍,试编程找出满足条件的最小正整数。
66、某本书的页码从1开始,小明算了算,总共出现了202个数1,试编程求这本书一共有多少页?
67、从键盘上输入两个不超过32767的整数,试编程序用竖式加法形式显示计算结果。
例如:
输入123,85
显示:
123
+85
---------
208
68、有30个男人女人和小孩同在一家饭馆进餐,共花了五十先令,其中男宾3先令,女宾2先令,小孩1先令。
试编程求出男人女人小孩各多少人?
69、找出100到999之间的整数中所有等于它每位数字立方和的数
70、求所有满足条件的四位数:
(2)a,b,c,d均是小于10的互不相等的自然数;
(3)b+c=a;
(4)bc是完全平方数.
71、已知四位数3025有一个特殊性质:
它的前两位数字30和后两位数字25的和是55,而55的平方刚好等于该数(55*55=3025).试编一程序打印所有具有这种性质的四位数.
72、编程找出四个互不相等的自然数,它们之中任意两数之和为偶数,任意三数之和可以被3整除,而且这四个数的和越小越好(已知它们的和不大于50).
73、以不同的字母代表0--9之间的数字,现有如下等式成立:
a+bc+def=ghij,编程求出满足上述条件等式的个数并将所有等式打印输出.
74、下面的竖式表示,图中的"
*"
号只能用素数2,3,5,7代替,因此称为素数乘法竖式.
***
×
**
---------------
****
****
----------------
*****
编程找出此乘法竖式的所有可能方案.
75、出售金鱼:
出售金鱼者决定将缸里的金鱼分五次全部卖出:
第一次卖出全部金鱼的一半加二分之一条;
第二次卖出剩余金鱼的三分之一加三分之一条;
第三次卖出剩余金鱼的四分之一加四分之一条;
第四次卖出剩余金鱼的五分之一加五分之一条;
现在还剩下11条金鱼一次卖出.问缸里原来有多少条金鱼.
76、一个四位数是一个完全平方数,减去一个每位数字都相同的四位数(如1111,5555)后,仍是一个完全平方数.请编程打印出所有这样的四位数.
77、将1,2,3,4,5,6,7,8,9这九个数字组成三个三位数,使每个数都是完全平方数.
78、如果一个数从左边读和从右边读都是同一个数,就称为回文数.例如:
6886就是一个回文数.编程找出所有既是回文数又是素数的三位数.
79、有一个八位数12345679,若它乘以9,则得九位数111111111,试求:
素数
(1)当这个数乘以什么数时,才能得到全部由5所组成的九位数?
(2)当这个数乘以什么数时,才能得到全部由9所组成的九位数?
80、李先生和他的孙子同出生于20世纪,他的孙子与他的年龄之差为60岁,李先生和他的孙子出生年份被3,4,5,6除,余数分别为1,2,3,4.编程求出李先生和他的孙子各出生在哪一年.
81、一位妇女在河边洗碗.邻居问:
"
家里来了多少个客人?
她回答:
每两个客人合用一个菜碗,每三个客人合用一个汤碗,每四个客人合用一个饭碗,共用碗65个"
.问共来了多少客人?
82、16/64是一个分子和分母都是两位数的真分数,且分子的个位数与分母的十位数相同.非常奇怪的是:
如果把该分数的分子的个位数和分母的十位数同时划去,所得到的结果正好等于原分数约分后的结果.例16/64=1/4.编程找出所有满足上述条件的真分数.
83、公鸡每只值5文钱,母鸡每只值3文钱,小鸡3只值1文钱.今用100文钱买鸡共100只,问公鸡,母鸡,小鸡各儿只.
84、甲去买东西,要付给乙19元,而甲只有3元一张的钱,乙只有5元一张的钱.请为他们设计一个交换方案.
85、一米店有三箩米被盗去一部分,其中左箩剩1合,中箩剩14合,右箩剩1合.小偷甲说他用一马勺在左箩舀米,每次舀满,装到布袋.小偷乙说他用一只木鞋在中箩偷.小偷丙说他用一只漆碗在右箩中偷.作案物经标定:
马勺一次舀19合,木鞋一次舀17合,漆碗一次舀12合.问米店被偷走多少米?
甲乙丙各偷多少米?
86、五户人家共用一口井,如果用A家的绳2条,B家的绳1条接长,正好抵达水面;
又用B家绳3条,C家绳1条;
或用C家绳4条,D家绳1条;
或用D家绳5条,E家绳1条;
或用E家绳6条,A家绳1条接长,也都一样正好抵达水面,问井深和各家的绳子各长多少?
(不超过999的整数解).
87、有六箱货物,重分别是5吨、2吨、3.5吨、1.7吨、1吨、5.1吨。
现有一台货车,载重量10吨。
设计一个程序,使这次车运走的货物最多。
88、某电台组织一次智力竞赛,计划安排奖励30人。
准备了50件奖品。
得一等奖者可得3件,二等奖2件,三等奖1件。
希望把所有奖品都发到获奖者手中。
请找出所有方案(即各等奖各有多少人)。
89、从键盘输入二个整数a,b(b<
>
0),若a能被b整除,就打印"
YES"
否则打印"
NO"
90、从键盘输入一个整数,如果是奇数就直接打印,否则反复除以2,直到商为奇数为止,打印这个奇数商。
91、从键盘输入一个小于1000的正整数,若此数的各位数字之和能被7整除,则打印,否则不打印。
92、求100以内的所有素数。
93、输入一个大于1的自然数,打印出它的质因数分解式.如输入75则打印:
75=3*5*5.
94、某自然数N(1<
N<
100)的所有素因数的平方和等于N,请找出两个这样的自然数。
95求1992个1992相乘结果的最后三位数。
96从键盘输入两个自然数,求它们的最大公约数和最小公倍数。
97、一个自然数是素数,且它的数字位置经过任意对换后仍为素数,称为绝对素数.例如13.试找出所有这样的四位绝对素数。
98、编程验证对任意自然数N,如果各位数字平方和不是1,则求平方和的各位数字的平方和,最后必有145,42,20,4,16,37,58,89之无穷循环。
99、五位数4H97H能被3整除,且它的最低二位数字所组成的数7H能被6整除,求这个五位数字。
100、975*935*972*(),在()中填什么自然数使四个数的乘积末四位全为0,求出最小值。
101、修改31743的某一位上的数字,使之成为823的倍数。
102、一个自然数,若它的质因数至少是两重的(相同的质因数至少个数为二个,如36=2*2*3*3)则称该数为"
漂亮数"
.若相邻两个自然数都是"
就称它们为"
孪生漂亮数"
.例如8与9就是一对.请编程再找出一对"
103、任意输入二个自然数,若商为整数,则直接显示商;
否则把商分解成一个自然数和一个正的既约真分数之和才显示。
例如:
输入:
9,3显示:
9/3=3
输入:
8,6显示:
8/6=1+1/3
104、任意输入四个自然数a,b,c,d,看成二个分数a/b,c/d.求这二个分数之和.和的显示格式为:
输入3,2,1,6输出:
3/2+1/6=1+2/3。
105、在自然数中,各位数字之和的11倍正好等于自身的自然数只有一个.请找出这个自然数。
106、求所有不超过1000的这样的整数,它的平方的末二位数字相同但不为0。
107、P是一个大于3的质数,对某个自然数N,PN恰好是五位数,且至少有三个位上的数字相同,求P至少是多少。
108、编程求最小正整数M,N(0<
M)为何值时,1989m与1989n的最后三位数字相同。
109、验证下面结论:
一个各位数字不同且都不为0的N位数X(3<
=N<
=5),将组成该数的各位数字重新排列成一个最大数和一个最小数作减法,其差值再重复前述运算,若干次后必出现一个N位数Y,使之重复出现.
X=213,则有213→321-123=198
981-189=892
982-289=693
963-369=594
954-459=495
这时Y=954.
110、计算:
111、小明的妈妈是负责分发全厂工资的。
为使分发时有足够多的零钞,同时又尽量不使每个人领到的钱太零碎。
每个月她都要计算出各种面值的钞票(100元、50元、10元、5元、2元、1元,假设每个人的工资都是整数元)各需要多少张。
你能否为她设计一个程序,从键盘输入10个人的工资,再计算出各种面值的钞票各需要多少张?
112、任给一个自然数n,求出这个自然数不同因数的个数M.
113、给出一个数n的不同因数个数m,求最小满足要求的自然数n,即n有m个不同的因数。
例如输入2则输出2因为2有2个因数。
114、m,n为自然数,其上限为k,试编写程序,由键盘输入自然数k找出满足条件:
(n^2-mn-m^2)^2=1且使m^2+n^2达到最大的m,n。
115、求50到100中所有奇数。
116、商店卖水果,10斤以下8元每斤,100斤以下打9.5折,即8*0.95元每斤,100斤以上含100斤打9折。
输入购买水果的斤数,输出应付钱数,保留两位小数。
117、从键盘输入10个数,求出其中的最小数。
118、输出能被11整除且不含重复数字的三位数。
并统计个数。
119、已知一个四位数为ABCD,若A+C和B+D的值相等,则称这个四位数为交叉数,求四位数的交叉数和个数。
120、输入一个字符串,将其中所有的‘god’改为‘good’。
121、输入两个正整数a,b(1<
=a<
=b<
=1000),输出它们的最大公约数和最小公倍数。
如:
输入46,输出212。
122、从键盘随意输入10个整数,输出第5大数。
123、有一根长为514CM的钢筋,现在要截成23CM、15CM和19CM的短料,问在各至少截一根的前提下,问各截多少根,使所剩余料最少。
124、统计100以内素数的个数。
125、给出一个正整数,求出它的因子,并按下面的格式打印出来:
15=3*5,20=2*2*5,28=2*2*7
126、N的阶乘之和是1!
+2!
+…+n!
,n小于100。
127、求1到100中所有奇数。
128、求1到200中所有能被2、3、7整除的数。
129、输入一个学生的语文成绩0分到100分,如果是85分到100是优秀,输出“BEST”,如果是60分到84是及格,输出“GOOD”,如果是0分到59是不及格,输出“BAD”。
130、输入10个学生的语文成绩,分别统计成绩在85~100分,60~85分和60分以下,各分数段中的人数。
131、筐中有鸡蛋是7的倍数,二个二个一为,三个三个一数,四个四个一数,五个五个一烽均余1,求满足此条件的最小蛋数。
132、计算N!
其中N由键盘输入。
133、求1至200的和。
134、读入十个数,计算它们的和与积以及平均值。
135、任意输入一个三位数,反过来输出。
136、水仙花数是一个三位数,并且它的各数码的立方和正好等于它本身。
153=1×
1×
1+5×
5×
5+3×
3×
3。
137、求能被11整除,且数码的平方和是122的所有的三位数。
138、求能被11整除,且不含重复数字的三位数?
有多少个。
139、求2~1000中的完数,(因子和等于它本身的数为完数。
例如28的因子是1,2,4,7,14,且1+2+4+7+14=28,则28是完数)。
140、找2~1000中的亲密数对(如果A的因子和等于B,B的因子和等于A,且A不等于B,则称A,B为亲密数对)。
141、从键盘输入三个数,输出其中的最大数。
142、从键盘输入20个数,求出其中的最小数。
143、用循环语句从小到大依次输出26个大写字母,再返向输出。
144、输入两个运算量及一运算符,输出运算结果。
这相当于计算器计算。
145、非波拉契数列如下:
0,1,1,2,3,5,8,13,21…从第三项开始,每一项等于前两项的和。
编程求前20项。
146、有一个三位数,三个数字和为20,第三个数3倍与第二个数的2倍及第一个数三者之和为44,第一个数与第二个数和的2倍减去第三个烽的4倍为-14,求这个三位数。
147、父子二人,已知儿子年龄不大于40岁,父亲年龄不大于100岁,10年前父亲的年龄是儿子年龄的