c语言和计算机二级复习资料包含113道例题和详细答案.docx
- 文档编号:12869935
- 上传时间:2023-04-22
- 格式:DOCX
- 页数:99
- 大小:38.94KB
c语言和计算机二级复习资料包含113道例题和详细答案.docx
《c语言和计算机二级复习资料包含113道例题和详细答案.docx》由会员分享,可在线阅读,更多相关《c语言和计算机二级复习资料包含113道例题和详细答案.docx(99页珍藏版)》请在冰豆网上搜索。
c语言和计算机二级复习资料包含113道例题和详细答案
1.输入两个正整数,m和n,求其最大公约数和最小公倍数。
2.输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。
3.输入一个正整数求出它是几位数;输出原数和位数。
4.输入一个正整数,输出原数并逆序打印出各位数字。
5.从键盘上输入若干学生的一门课成绩,统计并输出最高成绩和最低成绩及相应的序号,当输入负数时结束输入。
6.从键盘上输入若干学生的一门课成绩,计算出平均分,当输入负数时结束输入。
将结果输出。
7.求1!
+2!
+3!
+……+20!
,将结果输出。
8.打印以下图案:
*
***
*****
*******
9.打印以下图案:
*
**
***
****
10.求下列试子的值:
1-1/2+1/3-1/4+……+1/99-1/100,将结果输出。
11.打印出100~999之间的所有水仙花数。
12.求Sn(Sn)=a+aa+aaa+…+aa…a之值,n,a由键盘输入。
13.打印以下图案:
*******
*******
*******
*******
14.打印以下图案:
1
121
12321
1234321
15.打印以下图案:
1234321
12321
121
1
16.编写一个统计学生成绩程序,完成以下功能:
输入4个学生的2门课成绩;求出全班的总平均分,将结果输出。
17.打印以下图案:
*****
*****
*****
*****
*****
18.给出年、月、日,计算该日是该年的第几天。
19.求一个3*3的整型矩阵对角线元素之和。
将原矩阵和求出的和输出。
20.求一个4*3的矩阵各行元素的平均值;将原矩阵和求出的平均值全部输出。
21.求一个3*4的矩阵各列元素的平均值;将原矩阵和求出的平均值全部输出。
22.求一个3*5的矩阵各列元素的最大值,将原矩阵和求出的最大值全部输出。
23.求一个4*3的矩阵各行元素的最大值,将原矩阵和求出的最大值全部输出。
24.求一个M*N的矩阵中元素的最大值,将原矩阵和求出的最大值全部输出。
25.判断一个N*N的矩阵是否为对称矩阵,将原矩阵输出,判断结果输出。
26.有一篇文章,有三行文字,每行有80个字符。
要求统计出其中英文大写字母、消协字母、数字、空格以及其他字符的个数。
27.将20个整数放到一维数组中,输出该数组的最大值和最小值。
28.将15个整数放到一维数组中,输出该数组中的最大值它的下标,然后将它和数组中的最前面的元素对换。
29.将字符数组str1种下标为偶数的元素赋给另一字符数组str2,并输出str1和str2。
30.编写一个程序,将两个字符串连接起来,不要使用strcat函数。
31.编写一个程序,将字符数组a中的全部字符复制到字符数组b中。
不要使用strcpy函数。
32.编写一个程序,找出3个字符串中的最大者,将它输出。
33.编写程序,输入任意一个1~7之间的整数,将他们转换成对应的英文单词。
例如:
1转换成Monday,7转换成Sunday。
34.编写程序,输入两个整数,和+、-、*、/之中的任意一个运算符,输出计算结果。
35.输入年号,计算这一年的2月份的天数,将结果输出。
36.输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,若能,计算面积。
37.输入三角形的三边a,b,c,判断a,b,c,能否构成三角形,何种类型的三角形:
等腰、等边、直角、等腰直角、一般。
38.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。
(用if语句编程)
39.输入奖金数a,计算并输出税率、应缴税款和实得奖金数。
(用switch语句编程)
40.输入学生的成绩,利用计算机将学生的成绩划分出等级并输出:
90~100:
A级;80~89:
B级;70~79:
C级;60~69:
D级;0~59:
E级;
41.编程序,求方程aX2+bX+c=0的解;输入a,b,c.
42.编程序,输入4个整数,按由小到大的顺序输出。
43.求满足1+2+3+…+n<500中最大的N,并求其和,编写程序实现。
44.把100~200之间的不能被3整除的数输出。
45.求Fibonacci数列前40个数,每行输出5个,将40个Fibonacci数输出。
46.按以下规律翻译密码:
将每一个字母变成它后面的字母,例如,将A变成B,B变成C,…,Z变成A,非字母字符不变,“!
”作为电文结束标志。
47.百元买百鸡问题:
公鸡每只5元,母鸡每只3元,小鸡3只一元,问一百元买一百只鸡有几种买法。
48.使用数组编程,计算出前20项fibonacci数列,要求一行打印5个数。
49.编程序求出两个3*4矩阵的和并将原矩阵和求出的和矩阵按原矩阵的形式分别输出。
50.将一个4*3的矩阵转置,并将原矩阵和求出的转置矩阵按原矩阵的形式分别输出。
51.输入一个字符,如果它是一个大写字母,则把它变成小写字母;如果它是小写字母,则把它变成大写字母;其它字符不变,请编程。
52.已知x和y存在下列对应关系,要求对输入的每个x值,计算出y值,请编程。
y=x*(x+2),2 53.已知x和y存在下列对应关系,要求对输入的每个x值,计算出y值,请编程。 y=0,x=a||x=-a;y=sqrt(a*a-x*x),-a 54.编程判断对输入的任何一个年份是否是闰年,将结果输出。 55.请编制程序要求输入整数a和不,若a2+b2大于100,则输出a2+b2百位以上的数字,否则输出两数之和。 56.请编制程序判断输入的正整数是否既是5又是7的整倍数。 若是,则输出yes;否则输出no. 57.编程实现: 计算1到100之间的奇数之和及偶数之和。 58.请编程实现: 求100个任意整数的累加和。 59.请编程实现: 求1到100之间所有能被3整除,但不能被5整除的数的和。 60.请编程实现: 输入任意正整数n,计算n! 并将结果输出,输出结果中没有小数部分。 61.请编程实现: 计算1至50中是7的倍数的数值之和。 62.请编程实现: 对任意100个整数,统计0的个数及正数的累加和。 63.请编程实现: 输入两个整数,判断它们之间的关系(=,<,>等),并清楚地将比较结果输出。 64.请编程实现: 输入几个整数,判断其中偶数的个数,并输出结果(要求: 数据的个数及原始数据由键盘输入)。 65.请编程实现: 输入几个整数,判断其中奇数的个数,并输出奇数的累加和。 (要求: 数据的个数及原始数据由键盘输入) 66.有一个两位数XY,X是十位,Y是个位;给出X+Y的值和X*Y的值;编程实现让用户猜测这个两位数十多少? 根据猜测给出不同的提示。 67.键盘输入的一个两位数XY,X是十位,Y是个位;请编程计算X+Y的值和X*Y的值。 68.用for循环语句计算1到20的和,并将结果输出。 69.从键盘输入一行字符,统计出输入的字符个数(注: 不要使用strlun函数编程)。 70.编程实现: 任意输入10个数,计算所有正数的和,负数的和以及10个数的和。 71.编程实现: 求任意20个数中的正数之和及正数的个数,并将结果输出。 72.编程实现: 对键盘输入的任意一个四位正整数,计算各位数字平方和。 如: 2345则: 计算22+32+42+52 73.有1020个西瓜,第一天卖一半多两个,以后每天卖剩下的一半多两个,问几天以后能卖完,请编程。 74.编程实现: 打印100以个位数为6且能被3整除的所有数。 75.编程实现: 从键盘输入若干个整数(数据个数应不少于50),其值在0至4的围,用-1作为输入结束的标志,统计每个整数的个数。 76.编写一个函数sort,将放到一维数组中的若干个数按从大到小的顺序排序;在主函数中输入若干个数到一个一维数组中,调用sort,对该数组进行排序,在主函数中将原数组和排好序的数组输出。 77.输入一个正整数,将其用质因子的乘积表示,并输出结果,格式为: 12=2×2×3。 78.输入一个正整数,求出它的质因子的和,并输出结果,格式为: 12的质因子和=2+2+3=7。 79.编写一个函数,判断一个正整数是否为完数: 如果一个数的除它本身以外的所有因数之和等于它本身,则它就是完数。 主函数中找出1000以的所有完数。 80.编写函数GCD,求两个正整数的最大公约数,主函数中输入任意5个正整数,调用函数GCD,求出这5个数的最大公约数和最小公倍数。 81.编函数isprime判断正整m是否为素数;如果是素数,返回正整数1,否则返回0;主函数中调用isprime,找出2到1000之间的所有素数。 82.一维数组a中的若干个数已按从小到大的顺序有序;在主函数中输入一个数,将其插入到该数组中,使得原数组依然按原序有序,分别输入原数组和插入新元素之后的数组。 83.有5个国家名,编程实现按字母先后顺序排序,然后分别输出原数组和排序之后的数组。 84.有一行文字,要求删去其中的某个字符,此行文字和要删的字符均由键盘输入,分别输出原文字和删除之后的文字(注: 原文字中的所有和要删除字符相同的字符完全删除)。 85.打印如图所示的辉三角,要求打印出n行,n由键盘输入。 1 11 121 1331 14641 15101051 ……… 86.编一个函数实现将一个整型的一维数组中的数逆序存放,不使用辅助数组。 主函数输入一个整型的一维数组,调用上述函数,将该数组逆置,将结果输出。 87.编写一个函数convert,求一个方阵的转置矩阵;主函数中输入方阵的阶数和方阵,在主函数中将原矩阵和转置矩阵按原格式输出。 88.求∏值,精度为10-5: ∏/4≈1-1/3+1/5-1/7+…… 89.用公式计算: e≈1+1/1! +1/2! …+1/n! ,精度为10-6。 90.有一分数序列 2/1,3/2,5/3,8/5,13/8,21/13 求该序列的前20项之和。 91.编一个子函数GCD,求两个正整数的最大公约数,主程序输入n个自然数,调GCD,求出这n个数的最大公约数。 92.写函数求sin(x)的值。 计算公式为: Sin(x)=X-X3/3! +X5/5! -X7/7! +…+(-1)n-1X2n-1/(2n-1)! 。 93.编一函数使用冒泡法对若干个整数按从小到大的顺序排序,主函数中输入若干个整数到一个一维数组中,调用排序函数,将其排序,最后将原数组和排好序的数组输出。 94.求一个m行n列的二维数组中的这样一个原素;它在它所在的行为最大,在它所在的列为最小。 95.编写一个函数求给定字符串长度,主函数中输入一个字符串,调用该子函数,求出该字符串的长度,输出。 96.编写一个函数将给定字符串复制到另一个字符串中去,主函数中输入一个字符串,调用该子函数,复制出另一字符串,将两个串输出。 97.写函数求Cos(x)=1+X2/2! -X4/4! +X6/6! -…+(-1)nX2n/(2n)! 。 98.编写一个函数将给定字符串中的大写字母转换成小写字母,主函数中输入一个字符串,调用该子函数,进行转换,将原字符串及转换后的字符串输出。 99.编写一个函数将给定的两个字符串连接成一个字符串: 格式为: strcat(ch1,ch2); 功能: 将ch2复制到ch1的后面; 主函数中输入两个字符串,调用该子函数,求出连接之后的字符串,将两个原字符串及连接之后的结果串输出。 100.用40元钱买苹果、西瓜和梨共100个,且三种水果都有。 已知苹果0.4元一个,西瓜4元一个,梨0.2元一个。 问可以买多少个? 编程输出所有购买方案。 101.编程: 建立一个3×3的二维整数数组,求两条对角线上元素值得和,并将结果输出。 (用函数调用方式编程) 102.编程计算: 1*2*3+3*4*5+……+99*100*101的值。 103.有一个5×4的矩阵,编程实现: 找出该矩阵中每行元素的最大值,并使该值成为该行的首列元素。 104.编写一个程序,使输入的一个字符串按反序存放在一字符数组中,然后输出。 要求: (1)在主调函数中输入字符串; (2)写函数完成由主调函数传递来的字符串按反序存放; (3)在主调函数中输出结果。 105.从键盘输入五个字符串,分别求出字符串中长度最长和最短的字符串,请编程。 (要求: 不要使用strlen(_)函数编程) 106.输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。 请编程实现。 107.写一个判断素数的函数,在主函数中调用素数的判断函数,求出2到1000之间的素数的累加和,将结果输出,请编程。 108.编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。 109.请编程实现: 将两个字符串s1和s2比较,如果s1>s2,输出一个正数;s1 要求: 不要用strcpy函数,两个串用gets函数读入,输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCⅡ码的差值。 110.编写一个函数,由实参传来一个字符串,把串中所有大写字母变成相应的小写字母;原串中所有的小写字母变成相应的大写字母,在主函数中输入原字符串和输出变换后的字符串,请编程。 111.编程实现: 由键盘输入的任意一组字符中统计出大写字母的个m和小写字母的个数n,并输出m、n中的较大者。 112.定义一个含有30个整形元素的数组,按顺序分别赋予从2开始的偶数,然后按顺序每五个数求出一个平均值,放在另一个数组中并输出,请编程。 113.输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一: (1)能同时被3,5,7整除; (2)能被其中两数(要指出哪两个数)整除; (3)能被其中一个数(要指出哪个数)整除。 1.输入两个正整数,m和n,求其最大公约数和最小公倍数。 #include voidmain() { inthcf(int,int);/*函数声明*/ intlcd(int,int,int);/*函数声明*/ intu,v,h,l; printf("Pleaseinputtwonumbers: \n"); scanf("%d,%d",&u,&v); h=hcf(u,v); printf("H.C.F=%d\n",h); l=lcd(u,v,h); printf("L.C.D=%d\n",l); } inthcf(intu,intv) { intt,r; if(v>u) {t=u;u=v;v=t;} while((r=u%v)! =0) {u=v;v=r;} return(v); } intlcd(intu,intv,inth) { return(u*v/h); } 2.输入一行字符,分别统计出其中字母、空格、数字和其他字符的个数。 #include intletter,digit,space,others; voidmain() { voidcount(char[]); chartext[80]; printf("Pleaseinputstring: \n"); gets(text); printf("string: \n"); puts(text); letter=0; digit=0; space=0; others=0; count(text); printf("letter: %d,digit: %d,space: %d,others: %d\n",letter,digit,space,others); } voidcount(charstr[]) { inti; for(i=0;str[i]! ='\0';i++) if((str[i]>='a'&&str[i]<='z')||(str[i]>='A'&&str[i]<='Z')) letter++; elseif(str[i]>='0'&&str[i]<='9') digit++; elseif(str[i]==32) space++; else others++; } 3.输入一个正整数求出它是几位数;输出原数和位数。 #include intdigit; voidmain() { voidcount(char[]); chartext[80]; printf("Pleaseinputnumbers: \n"); gets(text); printf("Numbers: \n"); puts(text); digit=0; count(text); printf("digit: %d\n",digit); } voidcount(charstr[]) { inti; for(i=0;str[i]! ='\0';i++) if(str[i]>='0'&&str[i]<='9') digit++; } 4.输入一个正整数,输出原数并逆序打印出各位数字。 #include voidinvertLongInt(long); voidmain() { unsignedlongiNumber; printf("Pleaseinputanumber: \n"); scanf("%ld",&iNumber); printf("Theinputnumberis: %ld\n",iNumber); printf("Theinversenumberis: "); invertLongInt(iNumber); } voidinvertLongInt(longx) { if(x>=0&&x<=9) printf("%d\n",x); else { printf("%d",x%10); invertLongInt(x/10); } } 5.从键盘上输入若干学生的一门课成绩,统计并输出最高成绩和最低成绩及相应的序号,当输入负数时结束输入。 6.从键盘上输入若干学生的一门课成绩,计算出平均分,当输入负数时结束输入。 将结果输出。 7.求1! +2! +3! +……+20! ,将结果输出。 #include voidmain() { floats=0,t=1; intn; for(n=1;n<=20;n++) { t=t*n; s=s+t; } printf("1! +2! +3! +……+20! =%e\n",s); } 8.打印以下图案: * *** ***** ******* #include voidmain() { inti,j,k; printf("Thepictureis: \n"); for(i=0;i<=3;i++) { for(j=0;j<=2-i;j++) printf(""); for(k=0;k<=2*i;k++) printf("*"); printf("\n"); } } 9.打印以下图案: * ** *** **** #include voidmain() { inti,j; printf("Thepictureis: \n"); for(i=0;i<=3;i++) { for(j=0;j<=i;j++) printf("*"); printf("\n"); } } 10.求下列试子的值: 1-1/2+1/3-1/4+……+1/99-1/100,将结果输出。 #include voidmain() { floatsum=1.0,t,s=1; inti; for(i=1;i<=100;i++) { t=s/i; sum=sum+t; s=-s; } printf("1-1/2+1/3-1/4+……+1/99-1/100=%5.4f\n",sum); } 11.打印出100~999之间的所有水仙花数。 #include voidmain() { inti,j,k,n; printf("100~999之间的所有水仙花数are: \n"); for(n=100;n<1000;n++) { i=n/100; j=n/10-i*10; k=n%10; if(n==i*i*i+j*j*j+k*k*k) printf("%d",n); } printf("\n"); } 12.求Sn=a+aa+aaa+…+aa…a之值,n,a由键盘输入。 #include voidmain() { inta,n,i=1,sn=0,tn=0; printf("a,n=: "); scanf("%d,%d",&a,&n); while(i<=n) { tn=tn+a; sn=sn+tn; a=a*10; ++i; } printf("a+aa+aaa+…+aa…a=%d\n",sn); } 13.打印以下图案: ******* ******* ******* ******* #include voidmain() { chara[7]={'*','*','*','*','*','*','*'}; inti,j,k; charspace=''; printf("Thepictureis: "); for(i=0;i<4;i++) { printf("\n"); printf(""); for(j=1;j<=i;j++) printf("%c",space); for(k=0;k<7;k++) printf("%c",a[k]); } printf("\n"); } 14.打印以下图案: 1 121 12321 1234321 15.打印以下图案: 1234321 12321 121 1 16.编写一个统计学生成绩程序,完成以下功能: 输入4个学生的2门课成绩;求出全班的总平均分,将结果输出。 #include #defineN4 structstudent { charnum[3]; charname[4]; floatscore[2]; floatavr; } stu[N]; voidmain() { inti,j; floatsum,average; for(i=0;i { printf("Inputscoresofstude
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 计算机 二级 复习资料 包含 113 例题 详细 答案