C语言测试题目.doc_第1页
C语言测试题目.doc_第2页
C语言测试题目.doc_第3页
C语言测试题目.doc_第4页
C语言测试题目.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一、 顺序结构1. 从键盘输入一个大于0的实数,编程计算并输出以该数位半径的圆面积、圆周长及球体积(取圆周率为3.14)要求输出时有适当的文字说明测试数据:输入 2.5输出圆周长15.700000 圆面积 19.625000 球体积为65.4166672. 从键盘输入两个大于0的实数,编程计算并输出以其为长和宽的矩形的周长和面积。要求输出时有适当的文字说明测试数据:输入 1.2 3.5输出矩形周长9.400000 矩形面积4.2000003. 从键盘输入一个华氏温度值,计算并输出其摄氏温度的值。提示:摄氏温度c=(5/9)*(f-32) f为华氏温度测试数据:输入华氏温度值 100输出摄氏温度值 37.7777784. 从键盘输入三个实数,计算并输出它们的和及积。测试数据:输入 1.1 2.2 3.5输出和 6.800000 积8.4700005、从键盘输入三个整数,计算并输出它们的和及平均值测试数据:输入 2 5 7输出和 14.000000 平均值 4.6666676、输入一个三位数,依次输出该数的符号和百位、十位、个位数字。测试数据:输入 -752输出和 符号 - 百位 7 十位 5 个位 25.二、 选择结构1. 从键盘输入一个字符,判断它如果是小写字母输出其对应大写字母;如果是大写字母输出其对应小写字母;如果是数字输出数字本身;如果是空格,输出“space”;如果不是上述情况,输出“other”。2. 从键盘输入三个实数a、b、c,输出其中最大的数。测试数据: 输入5.3 6.5 2.1 输出最大数 6.53. 从键盘输入一个正整数,判断它能否被 3或者被 5整除, 如至少能被这两个数中的一个整除则输出“yes”,否则输出“no”。测试数据:(1)输入 12 输出 yes (2)输入 16 输出no4. 从键盘输入1到7之间的某个正整数,输出表示一星期中相应的某一天的英文单词:Monday、 Tuesday等等,用switch语句做。测试数据: 输入 7 输出 Sunday5. 从键盘输入一百分制成绩(实数),将其转换为成绩等级并输出:大于等于90分为A,8089分为B,7079分为C,6069分为D,60分以下为E。测试数据: 输入 63 输出 D6. 从键盘输入一个3位正整数,判断并输出该数是否是“水仙花数”,若是则输出“yes”,否则输出“no”(“水仙花数”是指一个3为数,其各位数字的立方和等于该数本身。例如153=13+53+33)测试数据:(1) 输入 407 输出 yes(1) 输入 150 输出no7、某商场举行促销活动,根据顾客购买商品的总金额v给予相应的折扣,金额越大,折扣越高,具体如下: v200元 没有折扣200v400元 5%折扣400v800元 10%折扣800v1600元 15%折扣1600v元 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 输出 62. 编程计算输出1到 100之间的奇数之和。输出结果 25003. 编写求的程序。输出结果 20464. 求(即求1!+2!+3!+.+20!) 。输出结果 2680407295. 编程计算并输出1+(1+2)+(1+2+3)+(1+2+3+n)的和,n为从键盘输入的一个正整数。测试数据:输入 3 输出 66. 有一分数序列,编程计算并输出这个数列的前20项之和。(要求结果保留两位小数)输出结果 32.667. 编程输出1-100之间所有素数8. 输入两个正整数 m和 n,求其最大公约数和最小公倍数。测试数据: 输入 m12, n24 输出 最大公约数 12 最小公倍数 249. 编程输出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如 153是一个水仙花数,因为 153输出结果:水仙花数有:153 370 371 40710. 3025这个数具有一种独特的性质:将它平分为两段,即30和25,使之相加后求平方,即(30+25),恰好等于3025本身。请求出具有这样性质的全部四位数。输出结果: 2025 3025 980111. 两位数13和62具有很有趣的性质:把它们个位数字和十位数字对调,其乘积不变,即13*6231*26。编程序求共有多少对这种性质的两位数(个位与十位相同的不在此列,如11、22,重复出现的不在此列,如 13*62与62*13)。输出结果:共有64对12. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如,6 的因子为1、2、3,而6=1+2+3,因此6 是“完数”。编程序找出1000之内的所有完数。输出结果 6 28 496 13. 有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的最小四位数。输出结果 871214. 给出一个不多于4位的正整数,要求:求出它是几位数按逆序打印出各位数字。测试数据: 输入 5632 输出 它是4位数 逆序为 236515. 编程输出如下九九乘法表.16. 古代数学中的百马百担问题。假设大马一次驮4担,中马一次驮2担,小马4匹驮1担,三种马一共驮100担粮食。编程列出所有可能的方案(每种马均有),并统计共有多少种方案输出结果 共有19种方案17. 编程输出16002000年间所有闰年的年号,要求每5个年份为一行输出。注:某年份能被4整除但不能被100整除或者能被400整除则称为闰年18. 编程求s=1+(1+2)+(1+2+3)+(1+2+3+n),n为从键盘输入的一个正整数。三、 数组1. 从键盘输入10个数,编程计算并输出它们的和及平均数。2. 有一个整数数组,内放10个整数。编程输出其中最小数和它的下标,然后把它和数组中最前面的元素对换位置重新输出该数组。3. 从键盘输入一个33的矩阵,编程分别计算并输出两条对角线上元素之和4. 输出如下形式的杨辉三角形的n行(n为从键盘输入的一个正整数,例如输入n值为6时,输出如下形式的杨辉三角形)11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 15. 从键盘输入一行英文字符,编程输出其中的单词个数(单词之间以空格分隔)。四、 函数1. 编写函数,求级数S=1+2+3+.n,并在主函数中求:#include int f(int);void main( ) float s; s=(float)(f(3)+f(4)+f(5)/(f(5)+f(6)+f(7); printf(SUM=%fn,s);int f( )输出结果 SUM=0.4843752. 编写一个递归函数f(n),求1+2+3+n的值#includestdio.hint f(int n) main()int x,s;scanf(%d,&x);s=f(x);printf(%d,s);3. 以下给定程序的功能是:读入一个整数(2k10000),打印它的所有质因子(所有为素数的因子)。如:若输入2310,则应输出2、3、5、7、11.请补充完整程序中函数f()的定义,使程序能得到正确的结果。注意:不要修改main()函数,也不得更改程序的结构#includestdio.hint 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()函数,也不得更改程序的结构#includestdio.hdouble fun(int m) main()int m;scanf(%d,&m);printf(t=%lf,fun(m);5. 编写一个函数num(),求二维数组所有元素的和,要求二维数组的行、列以及数组通过函数参数传递,并通过主函数调用求2行3列的数组的所有元素之和。#include int num( ) void main() int a23,i,j; int p=0,n=2,m=3; for(i=0;i2;i+) for(j=0;j3;j+) scanf(%d,&aij); p=num(a,n,m); printf(%d,p); 6. 在主函数中初始化一个3行4列的矩阵并将每个元素都输出,然后调用子函数sum(),分别计算每一行的元素之和,将和直接存放在每行的第一个元素中,返回主函数之后输出各行元素的和。#include void sum( ) void main()int a34,i,j; for(i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论