收藏 分销(赏)

C语言测试题目.doc

上传人:s4****5z 文档编号:8822511 上传时间:2025-03-03 格式:DOC 页数:6 大小:63KB 下载积分:10 金币
下载 相关 举报
C语言测试题目.doc_第1页
第1页 / 共6页
C语言测试题目.doc_第2页
第2页 / 共6页


点击查看更多>>
资源描述
一、 顺序结构 1. 从键盘输入一个大于0的实数,编程计算并输出以该数位半径的圆面积、圆周长及球体积(取圆周率为3.14)要求输出时有适当的文字说明 测试数据:输入 2.5 输出圆周长15.700000 圆面积 19.625000 球体积为65.416667 2. 从键盘输入两个大于0的实数,编程计算并输出以其为长和宽的矩形的周长和面积。要求输出时有适当的文字说明 测试数据:输入 1.2 3.5 输出矩形周长9.400000 矩形面积4.200000 3. 从键盘输入一个华氏温度值,计算并输出其摄氏温度的值。 提示:摄氏温度c=(5/9)*(f-32) f为华氏温度 测试数据:输入华氏温度值 100 输出摄氏温度值 37.777778 4. 从键盘输入三个实数,计算并输出它们的和及积。 测试数据:输入 1.1 2.2 3.5 输出和 6.800000 积8.470000 5、从键盘输入三个整数,计算并输出它们的和及平均值 测试数据:输入 2 5 7 输出和 14.000000 平均值 4.666667 6、输入一个三位数,依次输出该数的符号和百位、十位、个位数字。 测试数据:输入 -752 输出和 符号 - 百位 7 十位 5 个位 2 5. 二、 选择结构 1. 从键盘输入一个字符,判断它如果是小写字母输出其对应大写字母;如果是大写字母输出其对应小写字母;如果是数字输出数字本身;如果是空格,输出“space”;如果不是上述情况,输出“other”。 2. 从键盘输入三个实数a、b、c,输出其中最大的数。 测试数据: 输入5.3 6.5 2.1 输出最大数 6.5 3. 从键盘输入一个正整数,判断它能否被 3或者被 5整除, 如至少能被这两个数中的一个整除则输出“yes”,否则输出“no”。 测试数据:(1)输入 12 输出 yes (2)输入 16 输出no 4. 从键盘输入1到7之间的某个正整数,输出表示一星期中相应的某一天的英文单词:Monday、 Tuesday等等,用switch语句做。 测试数据: 输入 7 输出 Sunday 5. 从键盘输入一百分制成绩(实数),将其转换为成绩等级并输出:大于等于90分为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。 测试数据: 输入 63 输出 D 6. 从键盘输入一个3位正整数,判断并输出该数是否是“水仙花数”,若是则输出“yes”,否则输出“no”(“水仙花数”是指一个3为数,其各位数字的立方和等于该数本身。例如153=13+53+33) 测试数据:(1) 输入 407 输出 yes (1) 输入 150 输出no 7、某商场举行促销活动,根据顾客购买商品的总金额v给予相应的折扣,金额越大,折扣越高,具体如下: v<200元 没有折扣 200≤v<400元 5%折扣 400≤v<800元 10%折扣 800≤v<1600元 15%折扣 1600≤v元 20%折扣 编程实现输入顾客购买商品的总金额,输出顾客实际需要支付的金额积极优惠的金额。 测试数据: 输入 3000 输出应付金额2400.000000元 优惠 600.000000元 7. 8. 三角形判断。从键盘输入3个正整数作为三角形3条边的边长值,判断这3条边能否构成三角形,如果能构成三角形,再判断是等边三角形、等腰三角形还是一般三角形,输出器相应的结果(“不能构成三角形”,“一般三角形”,“等腰三角形”,“等边三角形”)注:等腰三角形不包括三条边都相等的特例 测试数据:(1) 输入 3 2 1 输出 “不能构成三角形” (2) 输入 3 5 6 输出“一般三角形” (3) 输入 3 5 3 输出“等腰三角形” (2) 输入 3 3 3 输出“等边三角形” 9. 从键盘输入表示月份的一个正整数,输入其对应的季度。用switch语句编程。 测试数据:(1) 输入 3 输出 “第一季度” (2) 输入15 输出 “月份输入错误” 10. 从键盘x的值,根据下面的函数计算并输出y的值。 y= 测试数据:(1) 输入 0 输出 20 (2) 输入15.3 输出 45.300000 (3) 输入-10.5 输出 -0.500000 一、 二、 循环结构 1. 编程计算并输出n的阶乘(n为从键盘输入的任意一个小于20的正整数) 测试数据:输入 3 输出 6 2. 编程计算输出1到 100之间的奇数之和。 输出结果 2500 3. 编写求的程序。 输出结果 2046 4. 求(即求1!+2!+3!+...+20!) 。 输出结果 268040729 5. 编程计算并输出1+(1+2)+(1+2+3)+……+(1+2+3+……+n)的和,n为从键盘输入的一个正整数。 测试数据:输入 3 输出 6 6. 有一分数序列,编程计算并输出这个数列的前20项之和。(要求结果保留两位小数) 输出结果 32.66 7. 编程输出1-100之间所有素数 8. 输入两个正整数 m和 n,求其最大公约数和最小公倍数。 测试数据: 输入 m=12, n=24 输出 最大公约数 12 最小公倍数 24 9. 编程输出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如 153是一个水仙花数,因为 153= 输出结果:水仙花数有:153 370 371 407 10. 3025这个数具有一种独特的性质:将它平分为两段,即30和25,使之相加后求平方,即(30+25),恰好等于3025本身。请求出具有这样性质的全部四位数。 输出结果: 2025 3025 9801 11. 两位数13和62具有很有趣的性质:把它们个位数字和十位数字对调,其乘积不变,即13*62=31*26。编程序求共有多少对这种性质的两位数(个位与十位相同的不在此列,如11、22,重复出现的不在此列,如 13*62与62*13)。 输出结果:共有64对 12. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6 的因子为1、2、3,而6=1+2+3,因此6 是“完数”。编程序找出1000之内的所有完数。 输出结果 6 28 496 13. 有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的最小四位数。 输出结果 8712 14. 给出一个不多于4位的正整数,要求:①求出它是几位数②按逆序打印出各位数字。 测试数据: 输入 5632 输出 它是4位数 逆序为 2365 15. 编程输出如下九九乘法表. 16. 古代数学中的百马百担问题。假设大马一次驮4担,中马一次驮2担,小马4匹驮1担,三种马一共驮100担粮食。编程列出所有可能的方案(每种马均有),并统计共有多少种方案 输出结果 共有19种方案 17. 编程输出1600——2000年间所有闰年的年号,要求每5个年份为一行输出。 注:某年份能被4整除但不能被100整除或者能被400整除则称为闰年 18. 编程求s=1+(1+2)+(1+2+3)+……+(1+2+3+……+n),n为从键盘输入的一个正整数。 三、 数组 1. 从键盘输入10个数,编程计算并输出它们的和及平均数。 2. 有一个整数数组,内放10个整数。编程输出其中最小数和它的下标,然后把它和数组中最前面的元素对换位置重新输出该数组。 3. 从键盘输入一个3×3的矩阵,编程分别计算并输出两条对角线上元素之和 4. 输出如下形式的杨辉三角形的n行(n为从键盘输入的一个正整数,例如输入n值为6时,输出如下形式的杨辉三角形) 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 5. 从键盘输入一行英文字符,编程输出其中的单词个数(单词之间以空格分隔)。 四、 函数 1. 编写函数,求级数S=1+2+3+...n,并在主函数中求: #include <stdio.h> int f(int); void main( ) { float s; s=(float)(f(3)+f(4)+f(5))/(f(5)+f(6)+f(7)); printf("SUM=%f\n",s); } int f( ) { } 输出结果 SUM=0.484375 2. 编写一个递归函数f(n),求1+2+3+……+n的值 #include"stdio.h" int f(int n) { } main() {int x,s; scanf("%d",&x); s=f(x); printf("%d",s); } 3. 以下给定程序的功能是:读入一个整数(2≤k≤10000),打印它的所有质因子(所有为素数的因子)。如:若输入2310,则应输出2、3、5、7、11. 请补充完整程序中函数f()的定义,使程序能得到正确的结果。注意:不要修改main()函数,也不得更改程序的结构 #include"stdio.h" int f(int n) { } main() {int j,k; scanf("%d",&k); for(j=2;j<=k;j++) if((!(k%j))&&f(j)) printf("%4d",j); } 4. 以下程序中,fun()函数的功能是:根据形参m计算如下公式的值: t=1+1/2+1/3+1/4+……+1/m 例如:输入5,则应输出2.283333 请补充完整程序中函数fun()的定义,使程序能得到正确的结果。注意:不要修改main()函数,也不得更改程序的结构 #include"stdio.h" double fun(int m) { } main() {int m; scanf("%d",&m); printf("t=%lf",fun(m)); } 5. 编写一个函数num(),求二维数组所有元素的和,要求二维数组的行、列以及数组通过函数参数传递,并通过主函数调用求2行3列的数组的所有元素之和。 #include <stdio.h> int num( ) { } void main() { int a[2][3],i,j; int p=0,n=2,m=3; for(i=0;i<2;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); p=num(a,n,m); printf("%d",p); } 6. 在主函数中初始化一个3行4列的矩阵并将每个元素都输出,然后调用子函数sum(),分别计算每一行的元素之和,将和直接存放在每行的第一个元素中,返回主函数之后输出各行元素的和。 #include <stdio.h> void sum( ) { } void main() {int a[3][4],i,j; for(i=0;i<3;i++) for(j=0;j<4;j++) scanf("%d",&a[i][j]); sum(a,3,4); for(i=0;i<3;i++) {printf("%3d",a[i][0]); printf("\n"); } } 五、指针 1. 用指针的方法,把输入的一个字符串按逆序重新排序其字符,并输出。 2. 用指针的方法,将键盘输入的两个字符串连接起来形成一个新字符串。 3. 用指针的方法,将键盘上输入的一串数值字符串转换为数值输出。如输入:‘-132’,则输出为:-132。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服