C语言上机练习题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
上机练习题
1.输入一个不超过五位的正整数,输出其逆数。例如输入12345,输出应为54321。
2.计算1+2+3…+n的值,n是从键盘输入的自然数。
3.从终端(键盘)读入20个数据到数组中,统计其中正数的个数,并计算这些正数之和。
4.从终端(键盘)将5个整数输入到数组a中,然后将a逆序复制到数组b中,并输出b中
各元素的值。
5.要将五张100元的大钞票,换成等值的50元,20元,10元,5元一张的小钞票,每种面
值至少1张,编程输出所有可能的换法,程序应适当考虑减少重复次数。
6.求n以内(不包括n)同时能被3和7整除的所有自然数之和的平方根s,n从键盘输入。
例如若n为1000时,函数值应为:s=153.909064。
7.一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但都没有记住车号,只记下
车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索找出车号。
8.输入1~10之间的一个数字,输出它对应的英文单词。
9.个位数为6且能被3整除但不能被5整除的三位自然数共有多少个,分别是哪些?
10.用自然语言描述程序逻辑如下,试写程序。
①设置环境;
②定义变量i、j、s,以及用于放置结果的变量sum,并令sum初值为0;
③i=1;
④如果i≤100,则转⑤,否则转⑧;
⑤令s=0,求前i个自然数之和,并放于变量s之中;
⑥sum=sum+s;
⑦i增加1,转④;
⑧输出和sum,结束。
11.用自然语言描述的程序逻辑为:
①设置环境;
②定义变量i、flag和password,并令flag=0,i=0;
③用户回答口令,将其赋于password变量;
④口令正确?如果是,则flag=1,转⑥。否则转⑤;
⑤回答三次口令了吗?如果没有,计数器加1后(i++),转③,否则转⑥;
⑥根据flag之值输出相应信息。
12.用自然语言描述的程序逻辑如下:
①设置环境;
②定义变量digit、x、y分别表示原始数、原始数的个位数和逆数;
③输入原始正整数x;
④从x中分解出个位数字digit;
⑤合并个位digit至逆数y中;
⑥原始数x缩小10倍:x=x/10;
⑦如果x非零,则转④;
⑧输出逆数y,结束
13.输入某三角形的三个边的长度,判断出这是个什么三角形(等腰、等边、任意,或不能构
成)。
14.输入10个数,分别统计其中正数、负数、零的个数。
15.先随机产生N个三位自然数输出,然后再输出其中同时是3、5、7倍数的数。(设N为100)
16.用for编程找出100~200中的完全平方数。
17.从终端输入三个正实数,判断这三个数能否构成直角三角形。
18.输入一行字符,统计其中有多少个字母(包括大写字母和小写字母)。
19.输入一个字串,判断它是否是对称串。如”abcdcba”是对称串,”123456789”不是。
20.随机产生N个大写字母输出,然后统计其中共有多少个元音字符。(设N为200)
21.找出三位自然数中的所有素数,要求判断x素数用自定义函数data(x)实现。
22.输出n行由“#”组成的矩形,每行“#”的个数为m个,其中n、m由终端(键盘)输入。
要求输出m个“#”功能由函数satr(m)函数实现。
23.若ax2+bx+c=0有实根,则求之。
24.从键盘输入两个字串,判断它们是否相同。
25.从键盘输入两个字串,输出其中较短的那个字串,并输出它的长度。
26.从键盘输入长度不等的两个字串,将短串连接于长串之后输出。
27.从键盘输入长度不等的两个字串,将长串连接于短串之后输出。
28.随机产生N个两位自然数,降序排列后输出。(设N为20)
29.从键盘输入两个字串,输出其中较长的那个字串,并输出它的长度。
30.从键盘输入10个战士的身高,输出平均身高,并找出哪些身高低于平均身高。
31.从键盘输入10个战士的身高,输出平均身高,并找出哪些身高高于平均身高。
32.从键盘输入10个战士的身高,输出最高、最低的身高。
33.“百钱百鸡”问题。百钱买百鸡,鸡翁一值钱三,鸡母一值钱二,鸡雏三值钱一,问鸡翁、
鸡母、鸡雏各几何?
34.有三个小孩,一个比一个大2岁,已知其年龄之和为39,问这三个小孩各几岁?
35.键盘输入长方体的长宽高l、w、h,求其体积及表面积。要求用自定义函数val(l,w,h)计算
长方体的体积和表面积,计算结果使用全局变量带回主函数。
36.计算:1/2+1/4+……+1/n,设n是由键盘输入的正偶数。
37.计算:1/1+1/3+……+1/n,设n是由键盘输入的正奇数。
38.计算:1/2-2/3+3/4-4/5……,前100项。
39.从终端输入3个数a、b、c,按从大到小的顺序输出。
40.公安人员审问四名窃贼嫌疑犯。已知,这四人当中仅有一名是窃贼,还知道这四人中每人
要么是诚实的,要么总是说谎的。在回答公安人员的问题中:甲说“乙没有偷,是丁偷的”,乙说“我没有偷,是丙偷的”,丙说“甲没有偷,是乙偷的”,丁说“我没有偷”。请根据这四人的答话判断谁是盗窃者。
41.求s=a+aa+aaa+aaaa+......+aa...a的值,其中a是1~9之间的一个数字,表达式项数从键盘输
入(设不超过10项)。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。
42.设N是一个四位数,它的9倍恰好是其反序数,求N。反序数就是将整数的数字倒过来形
成的整数。例如:1234的反序数是4321。
43.爱因斯坦出了一道这样的数学题:有一条长阶梯,若每步跨2阶,则最后剩一阶,若每步
跨3 阶,则最后剩2阶,若每步跨5阶,则最后剩4阶,若每步跨6阶则最后剩5阶。只有每次跨7阶,最后才正好一阶不剩。请问这条阶梯至少有多少阶?
44.输入任意一行字符,降序排列之。
45.输入一行字符串,按如下规则加密:如果是英文字母则大写变小写、小写变大写,对非英
文字符则保持不变。试写加密程序。
46.输入一行小写英文字母,按如下规则加密:a→c、b→d、…、x→z、y→a、z→b,试写加
密程序。
47.输入一行英文,已知各单词之间用1个空格相隔(设第一个单词前没有空格),统计这行
英文有多少个单词。