2023年浙江省二级C语言程序编写题库.pdf
《2023年浙江省二级C语言程序编写题库.pdf》由会员分享,可在线阅读,更多相关《2023年浙江省二级C语言程序编写题库.pdf(43页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一、程序填空(1)找 Armstrong(水仙花)数:371=3*3*3+7*7*7+1*1*1(2)输入1 个整数后,输出该数的位数。(例:输入3214则输出4,输入-23156则输出5)。(3)求输入的整数各位数字之和,如输入234则输出9,输入-312则输出6。(4)调用函数f,将一个整数首尾倒置。例如:若程序输入12345,则输出54321;若程序输入-34567,则输出-76543。(5)调用函数f,从字符串中删除所有的数字字符。(6)调用find函数在输入的字符串中查找是否出现the”这个单词。假如查到返回出现的次数,假如未找到返回0。(7)输入的一个小写字母,将字母循环后移5 个
2、位置后输出。例如:”a变成f,变成“b。(8)将字符串S 中所有的字符c删除。(9)对 x=1,2.1 0,求 f(x)=x*x-5*x+sin(x)的最大值。(10)输入三个整数,按由小到大的顺序输出这三个数。(11)调用函数f,去除数组中的负数,输入数组x 7,输出结果为:1346(12)调用函数 f 计算代数多项式 1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x 当 x=1.7 时的值。(13)分别记录字符串中英文字母、数字、和其他字符出现的次数。(14)将输入的十进制整数n 通过函数DtoH函数转换为十六进制数,并将转换结果以字符串形式输出。(15)将输
3、入的十进制正整数n 通过函数Dec2Bin转换为二进制数,并将转换结果输出。0),求 m 使得2 的 m 次方小于或等于n,2 的m+1次方大于或等于n。二、程序改错(1)输入一个字符串,将组成字符串的所有非英文字母的字符删除后输出。(2)输入一个字符串,将组成字符串的所有字符先按顺序存放到字符串t 中,再将字符串中的字符按逆序连接到字符串t 后面。例如:输入“ABCD,则字符串t 为 ABCDDCBA”。(3)运营时输入10个数,然后分别输出其中的最大值、最小值。(4)用选择法对10个整数按升序排序。(5)输入x 和正数e ps,计算多项式1-x+x*x/2-x*x*x/3!+的和直到末项的
4、绝对值小于eps为止。(6)运营时若输入a、n 分别为3、6,则输出下列表达式的值:3+33+333+3333+33333+333333。(7)用递归法将一个六位整数n 转换称字符串。例如:输入123456,应输出字符串123456”。(8)输入n,再输入n 个点的平面坐标,然后输出那些距离坐标原点不超过5 的点的坐标值。(9)运营时输入n,则输出n 的所有质数因子。例如:n=13860,则输出2、2、3、3、5、7、11。三、编写程序(1)在正整数中找出1 个最小的、被 3、5、7、9 除余数分别为1、3、5、7 的数,将该数以格式%d”写入到考生文献夹中Paper子文献夹下的新建文献Des
5、ignl.dat中。(2)若 a、b 为 1对密切数,则 a 的因子和等于b、b 的因子和等于a、且 a 不等于b.如:220、284是 1对密切数,284、220也是1对密切数。在 65000内找出所有的密切数对,并将每对密切数用语句fprintf(p,%6d,%6d n,a,b)写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(3)设计程序:计算字符串s 中每个字符的权重值,所谓权重值就是字符在字符串中的位置值与该字符的ASCII码值的乘积。位置值从1开始依此递增。将每个字符的权重值,以格式“d”写入到源程序目录中Paper子目录下的新建文献design.dat中。
6、(4)将数组a 的每一行均除以该行上绝对值最大的元素,然后将a 数组写入到考生文献夹中Paper子文献夹下的新建文献Design1.dat。(5)z=f(x,y)=(3.14*x-y)/(x+y),若 x、y 取值为区间 1,6 的整数,找出使z 取最小值的x1、y1,并将x1、y 1以格式 d,%d写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(6)z=f(x,y)=10*cos(x-4)+5*sin(y-2),若 x、y 取值为区间 0,10 的整数,找出使z 取最小值的x1、y1,并将x1、y1以格式 d,%d写入到考生文献夹中Paper子文献夹下的新建文献De
7、sign2.dat。(7)设计程序:数组元素x i、y i 表达平面上某点坐标,记录所有各点间最短距离,并将其值以格式”f写到源程序目录中Paper子目录下的新建文献design.dat中。(8)设计程序:在数组x 的 10个数中求平均值v,找出与v 相差最小的数组元素并将其以格式.5f写到考生目录中Paper子目录下的新建文献design.dat中。(9)对 x=1,2,.1O,求函数f(x)=x-10*cos(x)-5*sin(x)的最大值,并将该数以格式.3f写入到考生文献夹中Paper子文献夹下的新建文献Design1.dat。(1 0)将字符串s 中的所有字符按ASCII值从小到大重
8、新排序后,将排序后的字符串写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat,(1 1)在整数数组a 中找出偶数放到b 数组中,对 b 数组按从小到大的顺序进行排序后以格式“3d”每行3 个数写入到考生文献夹中Paper子文献夹下的新建文献Design1.dat。(1 2)计算多项式a0+a1*x+a2*x*x+a3*x*x*x+.+a9*x*x*x*x*x*x*x*x*x的值,并将其值以格式 f写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(1 3)运用公式B/4-1T/3+1/5-1/7+公式计算n 的近似值,直到某一项的绝对值小于le-6为止
9、。(n/4 的结果不包含此项)将计算结果以格式”.6 写入到考生文献夹中Paper子文献夹下的新建文献Design1.dat。(1 4)计算表达式1+2!+3!+12!的值,并将计算结果以格式“Id”写入考生文献夹中Paper子文献夹下的新建文献 Design2.dat。(1 5)计算数列1,-1/3!,1/5!,-1/7!,1/9!.的和至某项的绝对值小于1 e-5时为止(该项不累加),将求和的结果以格式.6f”写入到考生文献夹中Paper子文献夹下的新建文献Designl.dat中。(1 6)计算多项式a0+a1*sin(x)+a2*sin(x*x)+a3*sin(x*x*x)+a9*si
10、n(x*x*x*x*x*x*x*x*x)的值,并将结果以格式%.6f”写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat中。(1 7)有数列:2/1,3/2,5/3,8/5,13/8,21/13.求出数列的前40项的和。将计算结果以格式 写入到考生文献夹中Paper子文献夹下的新建文献Designl.dat中。(1 8)累加a 字符串各个字符的ASCII码值,然后将累加和以格式“d”写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat中。(19)计算2 的平方根、3 的平方根.10的平方根之和,规定计算结果具有小数点后10位有效位数,并以格式.10f n写
11、入到考生文献夹中Paper子文献夹下的新建文献Design2.dat中。(20)x i,y i 分别表达平面上的一个点的坐标,求下列10个点与点(1.0,1.0)的距离的总和,并将结果以格式.6f写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(2 1)在正整数中找出1 个最小的、被 3、5、7、9 除余数分别为1、3、5、7 的数,将该数以格式%d写入到考生文献夹中Paper子文献夹下的新建文献Design1.dat中。(2 2)寻找并输出11至 999之间的数m,它满足m、m*m、m*m*m均为回文数。说明:所谓回文数是指各位数字左右时称,例如121、676、942
12、49等。满足上述条件的数如m=11,mA2=121,mA3=1331皆为回文数。请编制函数intJSValue(longm)实现此功能,假如是回文数,则函数返回1,反之则返回0。最后把结果写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(2 3)数组元素xi、y i 表达平面上某点坐标,记录10个点中处在圆(方程为:(x-1)*(x-1)+(y+0.5)*(y+0.5)=25)内的点数k,并将变量k 的值以格式 d写入到考生文献夹中Paper子文献夹下的新建文献Designl.dat。(2 4)某公司1999年年产量11.5万件,生产能力每年提高9.8%,求出产量能超过
13、X万件的年份,结果由函数Year返回。分别计算当x=20和 x=30时的结果,将计算结果写入到考生文献夹中Paper子文献夹下的新建文献 Design1.dat。(2 5)求斐波那契(Fibonacci)数列中其前40项之和,(斐波那契数列的定义为后一项为前两项之和),并将求和的结果以格式 d写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(2 6)求斐波那契(Fabonacci)数列中大于t 的最小的一个数,结果由函数JSValue返回,其中斐波那契数列F(n)的定义为:F(0)=0,F(1)=1F(n)=F(n-1)+F(n-2)分别计算当t=1000和 t=300
14、0时的结果,将计算结果写入到考生文献夹中Paper子文献夹下的新建文献Designl.dat.(2 7)已知公鸡每只5 元、母鸡每只3 元、小鸡1 元3 只。求出用100元买100只鸡的解。将得到的解按公鸡、母鸡和小鸡的只数以格式 d,%d,%d写入到考生文献夹中Paper子文献夹下的新建文献Designl.dat。(2 8)记录满足条件x*x+y*y+z*z=2023的所有解的个数,(注意:若 a、b c 是一个解,则a、c b 也是一个解,等 等)。并将记录结果以格式 d”写入到考生文献夹中Paper子文献夹下的新建文献Design1.dat。(2 9)将数组a 的每1行均除以该行上的主对
15、角线元素(第1 行除以a00,第 2 行除以a 1 1.),然后将 a 数组写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(3 0)计算500800区间内素数的个数ent和素数和sum。请编写函数JSValue。实现程序的规定。最后把ent和sum的值写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(31)将满足条件pow(1.05,n)v1e6vpow(1.05,n+1)的n及其相应pow(1.05,n)值以格式”4%.0f写入到考生文献夹中Paper子文献夹下的新建文献Design2.dat。(1 )找 Armstrong(水仙花)数:37
16、1=3*3*3+7*7*7+1*1*1#include#includevoid main()int i,a,b,c;for(i=100;i=999;i+)a=i/100;1/b=i%100/10;c=i%10;if(2)/a*a*a+b*b*b+c*c*c=iprintf(%d is a Armstrong number!n i);)(2)输入1个整数后,输出该数的位数。(例:输入3214则输出4,输入-23156则输出5)。#include void main()int n,k=0;scanf(%d,&n);while(_ 1)/n!=0k+;2;/n=n/1 0printf(d n,k);
17、)(3)求输入的整数各位数字之和,如输入234则输出9,输入612则输出60#include#include void main()(int n,s=0;scanf(M%d,&n);1/if(n0)n=-n;while(n!=0)2/s+=n%10;n=n/10;)printf(%d n,s);)4)调用函数f,将一个整数首尾倒置。例如:若程序输入12345,贝 U 输出54321;若程序输入-34567,则输出-76543cinclude#include long f(long n)long m,y=0;m=fabs(n);while(m!=0)y=y*10+m%10;_1_/m=m/10:
18、)if(n=0)return y;else 2/return-y;)void main()(printf(H%ld C,f(12345);printf(%ld n0,f(-34567);)(5)调用函数f,从字符串中删除所有的数字字符。#include#include include void f(char*s)int i=0;while(si!=0)if(isdigit(si)_ 1_(s+i,s+i+1);strcpy2 i+;/else)void main()char str 80;gets(str);f(str);puts(str);)(6)调用find函数在输入的字符串中查找是否出现
19、the”这个单词。假如查到返回出现的次数,假如未找到返回0。#include int find(char*str)char*fstr=the;int i=O,j,n=O;while(str i!=Y)f or(1)/j=0;j=3i+;)return n;)void main()char a 80;gets(a);printf(%d,find(a);)(7)输入的一个小写字母,将字母循环后移5个位置后输出.例如:“a”变成十,变成b。include void main()char c;c=getchar();if(1)/c=目&c=v,&ca+5)%26+a,;putchar(c);(8)将字
20、符串s中所有的字符e删除。#include void main()char s 80;int i,j;gets(s);f o r(i=j=0;1;i+)/si!=0if(s i !=c)sD=s i;2/j+;)sO=0;puts(s);)(9)对x=1,2,.,1 0.求f(x)=x*x5*x+sin(x)的最大值。include#include#define f(x)x*x-5*x+sin(x)void main()int x;float max;1/max=f(1);for(x=2;xmax)max=f(x);printf(%f n,max);)(1 0)输入三个整数,按由小到大的顺序输
21、出这三个数。#include void s wa p(1)/int*pa,int*pb/*互换两个数的位置7int temp;temp=*pa;*pa=*pb;*pb=temp;)void main()int a,b,c,temp;scanf(%d%d%d,&a,&b,&c);if(ab)swap(&a,&b);if(bc)swap(&b,&c);if(2)/if(ab)swap(&a,&b);printf(%d,%d,%d,a,b,c);)(11)调用函数f,去除数组中的负数,输入数组x 7,输出结果为:134 6#include /数组元素的删除void f(int*a,int*m)int
22、 i.j;for(i=0;i*m;i+)if(a i 0)for(j=i-;j*m-1;j+)a0=a0+1;1;/*m=*m-1;)void main()int i,n=7,x 7=1,-2,3,4,-5,6,-7);2;/f(x,&n);for(i=0;in;i+)printf(%5d,x i);printfCn);)(1 2)调用函数 f 计算代数多项式 1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x 当 x=1.7 时的值。#include float f(float,float*,int);void main()float b5=1.1,2.2,3.3
23、,4.4,5.5;printf(%f n,1 f(1.7,b,5);)float f(1)/float x,float*a,int nfloat y=a 0,t=1;int i;for(i=1;in;i+)t=t*x;y=y+ai*t;2/return y;)1 3)分别记录字符串中英文字母、数字、和其他字符出现的次数。#include#include void main()char a 80;int n 3=0,i;gets(a);1/for(i=0;ai!=0,;i+)if(tolower(a i)=*a,&tolower(ai)v=z)/记录字母个数7n 0+;else if(2)/*记
24、录数字个数*/ai=0&ai=,9,n 1+;elsen 2+;)for(i=0;i3;i+)printf(M%d nM,n i);)(1 4)将输入的十进制整数n通过函数DtoH函数转换为十六进制数,并将转换结果以字符串形式输出。(例如:输入十进制数7 9,将输出卜六进制4f。)#include#include char trans(int x)(if(x10)return O+x;else 1/return a+x-10;)int DtoH(int n.char*str)(int i=0;while(n!=0)(2H stri=trans(n%16);n/=16;i+;return i-1
25、;)void main()(int i,k,n;char*str;scanf(%d,&n);k=DtoH(n,str);for(i=0;i=k;i+)printf(%c,str k-i);)(1 5)将输入的十进制正整数n通过函数Dec2Bin转换为二进制数,并将转换结果输出。#include void Dec2Bin(int m)(int bin 32,j;for(j=0;m!=0;j+)(bi n j =1;/m%2m=m/2;)for(;j!=0;j-)printf(%d,2);/binj-1)void main()(int n;scanf(M%d,&n);Dec2Bin(n);(1 6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 浙江省 二级 语言 程序 编写 题库
限制150内