全国计算机二级C语言操作题题库.docx
- 文档编号:26210693
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:31
- 大小:66.24KB
全国计算机二级C语言操作题题库.docx
《全国计算机二级C语言操作题题库.docx》由会员分享,可在线阅读,更多相关《全国计算机二级C语言操作题题库.docx(31页珍藏版)》请在冰豆网上搜索。
全国计算机二级C语言操作题题库
1.程序Cmody021.c输出如下所示图形:
*
***
*****
*******
*********
#include
voidmain()
{
inti,j;for(i=1;i<=5;i++)
{
for(j=1;j<=5-i;j++)printf("");
for(j=1;j<=2*i-1;j++)
printf("*");
printf("\n");
}
}
2.程序Cmody032.c的功能是:
输出201-300之间的所有素数,统计总个数。
#include
#include
voidmain()
{
intnum;
printf("\n");
num=fun();
printf("\nThetotalofprimeis%d",num);
getch();
}
intfun()
{
intm,i,k,n=0;
for(m=201;m<=300;m++)
{
k=sqrt(m+1);
for(i=2;i<=k;i++)
/**/if(m/i==0)/**/
break;
/**/if(i==k)/**/
{
printf("%-4d",m);
n++;
if(n%10==0)printf("\n");
}
}
returnn;
}
3.
程序Cmody041.c,其功能是统计输入字符串中小写英文字母的个数。
如输入:
abcdEFGHIJK123
输出:
4
#include
#include
main()
{
charstr1[128];
/**/inti,len,sum=0;/**/
gets(str1);
len=strlen(str1);
for(i=0;i { /**/if(str1[i]>='a'&&str1[i]<='z')/**/ sum++; } printf("%d\n",sum); getch(); } 4.程序Cmody051.c,其功能是统计输入字符串中大写英文字母的个数。 如输入: abcDEFGH123 输出: 5 #include #include main() { /**/charstr1[128]/**/ inti,len,sum=0; printf("Pleaseinputastring: \n"); scanf("%s",str1); len=strlen(str1); for(i=0;i { if(str1[i]>='A'&&str1[i]<='Z') /**/sum++;/**/ } printf("%d\n",sum); getch(); } 5.程序Cmody061.c,其功能是将字符串中'0'-'8'的数字字符变为比它大1的数字字符,将'9'变为'0'。 如输入: abc12cd56EF89GH4 输出: abc23cd67EF90GH5 #include #include main() { charstr1[128],str2[128]; inti,len; gets(str1); len=strlen(str1); /**/for(i=0;i { if(str1[i]>='0'&&str1[i]<='8') str2[i]=str1[i]+1; elseif(str1[i]=='9') str2[i]='0'; elsestr2[i]=str1[i]; } /**/str2[i]='\n';/**/ puts(str2); getch(); } 6.程序Cmody091.C,其功能是计算1至100之间的奇数之和,偶数之和。 #include voidmain() { intb,i; /**/inta=c=0;/**/ /**/for(i=0,i<=100,i+=2)/**/ { a+=i; b=i+1; c+=b; } printf("totalofevennumbers: %d\n",a); printf("totalofoddnumbers: %d\n",c-101); getch(); } 7.程序Cmody101.c,其功能是计算如下所示的数学表达式: #include #defineF(x)(x*x-2.3*x+5.6)/(x+8.2) voidmain() { floata=6.0,b=3.0,c; /**/floats;/**/ printf("\nPleaseinputc: "); scanf("%f",/**/&c/**/); /**/s=F(a)+F(b)-F(c));/**/ printf("\ns=%.2f\n,s"); getch(); } 8.程序Cmody111.C,输出如下所示图形: @ @@ @@@ @@@@ @@@@@ @@@@@@ #include #include voidmain() { /**/inti,j;/**/ /**/for(i=6;i>=1;i--)/**/ { printf("@"); for(j=1;j<=6-i;j++) printf("@"); printf(/**/"\r"/**/); } getch(); } 9.打开Cprog011.C,完成其中的函数fun1,该函数的数学表达式是: #include #include doublefun1(doublex) { Return((1+sin(x)+exp(x))/(x+1)); } voidmain() { clrscr(); printf("fun1(0.76)=%8.3lf\n",fun1(0.76)); printf("fun1(3.00)=%8.3lf\n",fun1(3.00)); printf("fun1(3.76)=%8.3lf\n",fun1(3.76)); } 打开Cprog021.C,完成其中的函数fun1,该函数的数学表达式是: 例如: fun1(0.76)=3.582 fun1(3.00)=5.369 fun1(3.76)=8.931 #include #include doublefun1(doublex) { Return((exp(x)+fabs(x-6))/(x+1.3)); } voidmain() { clrscr(); printf("fun1(0.76)=%8.3lf\n",fun1(0.76)); printf("fun1(3.00)=%8.3lf\n",fun1(3.00)); printf("fun1(3.76)=%8.3lf\n",fun1(3.76)); } 打开Cprog031.C,完成其中的函数fun1,该函数的数学表达式是: 例如: fun1(0.76)=1.200 fun1(3.00)=10.000 fun1(3.76)=8.520 --------Cprog031.C-------------------------------------------------------------------------------- #include #include doublefun1(doublex) { If(x<3)x=1.2; Elseif(x=3)x=10; Elsex=2*x+1; Return(x); } voidmain() { clrscr(); printf("fun1(0.76)=%8.3lf\n",fun1(0.76)); printf("fun1(3.00)=%8.3lf\n",fun1(3.00)); printf("fun1(3.76)=%8.3lf\n",fun1(3.76)); } 打开程序Cprog041.C,完成其中fun()函数,使其计算: 如输入: 12输出f(12.000)=10.387 输入: 32.25输出f(32.250)=12.935 输入: 0.113输出f(0.113)=1568 ---------Cprog041.C------------------------------------------------------------------------------- #include #include doublef(floatx) { /**/ If(x<=0)return(0);x=0; Elsererurn((sqrt(x)+3.2)/(sin(x)+2))x=(sqrt(x)+3.2)/(sin(x)+2); Return(x); /**/ } voidmain() { floatx; doubley; printf("Pleaseinputanumber: \n"); scanf("%f",&x); y=f(x); printf("f(%.3f)=%.3f\n",x,y); getch(); } 1.打开程序Cprog051.C,完成其中的f()函数,使其计算: 如输入: 0.4输出: f(0.40)=0.82 输入: 1.5输出: f(1.50)=1.24 输入: 7.80输出: f(780.00)=-1.00 -------------Cprog051.C-------------------------------------------------------------------------- #include #include doublef(floatx) { /**/ If(x>=-700&&x<=700)x=(sqrt(5.8+fabs(x))/(cos(x)+2.1)); Elsex=-1; Return(x); /**/ } voidmain() { floatx; doubley; printf("pleaseinputanumber: \n"); scanf("%f",&x); y=f(x); printf("f(%0.2f)=%0.2f\n",x,y); getchar(); } 1.打开程序Cprog061.C,完成其中的f()函数,使其计算: 如输入: 0.8输出: f(0.80)=0.96 输入: 4.5输出;f(4.50)=107.05 输入;725输出;f(725.00)=-1.00 ----------Cprog061.C------------------------------------------------------------------------------- #include #include doublef(floatx) { /**/ If(x<=300&&x>=-300)return((x*x*x)/log10(fabs(x)+2.6)); Elsereturn(-1); /**/ } voidmain() { floatx; doubley; printf("Pleaseiuputanumber: \n"); scanf("%f",&x); y=f(x); printf("f(%0.2f)=%0.2f\n",x,y); getch(); } 1.打开程序Cprog071.C,完成其中的f(x)的函数,使对其输入的一个月工资数额,求应交税款。 设应交税款的计算公式如下: 例如输入: 1825输出: f(1825)=11.25 输入: 2700输出: f(2700)=85.00 输入: 5655输出: f(5655)=483.25 -----------Cprog071.C----------------------------------------------------------------------------- #include #include doublef(floatx) { /**/ If(x<=1600)x=0; Elseif(x>1600&&x<=2100)x=(x-1600)*5%; Elseif(x>2100&&x<=3100)x=(x-1600)*10%-25; Elsex=(x-1600)*15%-125; Return(x); /**/ } voidmain() { floatx; doubley; clrscr(); printf("Pleaseinputanumber: \n"); scanf("%f",&x); y=f(x); printf("f(%.2f)=%.2f\n",x,y); getch(); } 打开程序Cprog081.C,完成其中的f(x)函数,使其计算: 如输入: -1.2输出: f(-1.200)=0.241 输入: 6输出: f(6.000)=19.879 --------------Cprog081.C--------------------------------------------------------------------------- #include #include doublef(floatx) { If(x<=0)return((x+2)*exp(x)); Elsereturn((x+2)*log(2*x)); } voidmain() { floatx; doubley; printf("Pleaseinputanumber: \n"); scanf("%f",&x); y=f(x); printf("f(%.3f)=%.3f\n",x,y); getch(); } 1.打开程序CPROG091.C,完成其中的f()函数,使其返回方程 的两个根中较大的根,求根公式为 ,其中假设: 且 -------------CPROG091.C------------------------------------------------------------------------- #include #include doublef(floata,floatb,floatc) { /**/ Doublex1,x2; x1=(-b+sqrt(b*b-4*a*c))/(2*a); X2=(-b-sqrt(b*b-4*a*c))/(2*a); If(x1>x2)return(x1); Elsereturn(x2); /**/ } voidmain() { floatx; printf("Thebiggerrootis%.2f\n",f(1,5,6)); getch(); } 打开考生文件夹中的Cprog111.c,完成其中的函数fun,该表达式是: 例如: 当 时,函数的值为4.724444。 该函数返回数组a中的次大数(即仅次于最大数的数)。 ------------------------Cprog111.c------------------------------------------------------------------ #include voidmain() { doublex; intn; doublefun(doublex,intn); printf("Pleaseenterx,n: "); scanf("%lf%d",&x,&n); printf("fun=%lf\n",fun(x,n)); getch(); } doublefun(doublex,intn) { /**/doubley If(n==0)y=1; Elseif(n==1)y=x; Elseif(n>1)y=(2n-1)*x-fun(x,n-1)-(n-1)fun(x,n-2)/n Return(y) /**/ } 补充程序Ccon0112.C,其功能是求下列级数的部分和。 例如: 当m=100,x=2时,ex=7.389057 -------Ccon0112.C--------------------------------------------------------------------------- #include main() { inti,m; floatx,s,tem; scanf("%d,%f",&m,&x); /**/tem=1;s=1;/**/ for(i=1;/**/i<=m/**/;i++) { tem*=x/i; s+=tem; } printf("e**%.2f=%f\n",x,s); getch(); } 1.补充程序Ccon091.C,输入一个3行3列的整型数组,求其最大值和最小值。 如输入: 123 456 789 输出: max=9 min=1 -------Ccon091.C--------------------------------------------------------------------------- #include"stdio.h" #defineROW3 #defineCOL3 voidmain() { inta[ROW][COL],i,j,max,min; for(i=0;i for(j=0;j scanf("%d",&a[i][j]); /**/max=min=a[0][0];/**/ for(i=0;i for(j=0;j { if(/**/a[i][j]>max/**/) max=a[i][j]; if(a[i][j] /**/min=a[i][j];/**/ } printf("max=%d\n",max); printf("min=%d\n",min); } 程序Cmody011.c的功能是: 从字符串数组str1中取出ACSII码值为偶数且下标为偶数的字符依次存放到字符串t中。 例如,若str1所指的字符串为: 4AZ18c? Ge9a0z! 则t所指的字符为: 4Z8z 注意: 数组下标从0开始。 #include #include #include #include voidmain() { charstr1[100],t[200]; inti,j; /**/i=0;j=0;/**/ strcpy(str1,"4AZ18c? Ge9a0z! "); for(i=0;i { /**/if((str1[i]%2==0)&&(i%2==0))/**/ { t[j]=str1[i]; j++; } } t[j]='\0'; printf("\nOriginalstring: %s\n",str1); printf("\nResultstring: %s\n",t); } 程序Cmody012.c中,函数fun(intn)的功能是: 根据参数n,计算大于10的最小n个能被3整除的正整数的倒数之和。 #include #include #include #include #defineM50 doublefun(intn) { doubley=0.0; inti,j; j=0; for(i=1;;i++) { /**/if((i>10)&&(i%3==0))/**/ { /**/y+=1/i;/**/ j++; } if(j==n)break; } returny; } voidmain() { clrscr(); printf("fun(8)=%8.3lf\n",fun(8)); } .程序Cmody022.c的功能是求解百元买百鸡问题: 设一只公鸡2元、一只母鸡1元、一只小鸡0.5元。 问一百元买一百只鸡,公鸡、母鸡、小鸡数可分别为多少? 有多少种分配方案? #include #include /*doublefun();/**/ { inthen,cock,chicken,n=0; clrscr(); for(cock=0;cock<=50;cock+=1) for(hen=0;hen<=100;hen=hen+1) { chicken=2*(100-hen-2*cock); /**/if(cock+hen+chicken==100)/**/ { n++; printf("%d-->hen: %d,cock: %d,chicken: %d\n",n,hen,cock,chicken); if(n==20)getch(); } } returnn; } voidmain() { intnum; num=fun(); printf("\nThereare%dsolutions.\n",num); getch(); } 1.程序Cmody031.c的功能是: 从键盘上输入两个整数,及一个运算符(+、-、*、/或%),进行相应的运算后输出运算的结果。 如输入: 1+2 将输出: 1+2=3 #include #include voidmain() { intm,n,result,flag=0; /**/charch;/**/ clrscr(); printf("Inputanexpression: "); scanf("%d%c%
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全国计算机 二级 语言 操作 题库