福建省二级C模拟题 5.docx
- 文档编号:26601652
- 上传时间:2023-06-20
- 格式:DOCX
- 页数:20
- 大小:38.99KB
福建省二级C模拟题 5.docx
《福建省二级C模拟题 5.docx》由会员分享,可在线阅读,更多相关《福建省二级C模拟题 5.docx(20页珍藏版)》请在冰豆网上搜索。
福建省二级C模拟题5
一、选择题
1.C语言的函数体由( b)括起来。
A)( )B){ }C)[]D)/**/
2.以下( c)是正确的字符常量。
A)”C”B)‘\\’’C)‘W’D)”\32a”
3.若有定义:
intx,a;则语句x=(a=3,a+1);运行后,x、a的值依次为(c )。
A)3,3B)4,4C)4,3D)3,4
4.设整型变量a为5,使b不为2的表达式是(ac )。
A)b=(++a)/2B)b=6-(--a)C)b=a%2D)b=a/2
5.getchar()函数的功能是从终端输入(d )。
A)一个整型变量B)一个实型变量值C)多个字符D)一个字符
6.若有定义:
intx=3,y=4;则表达式!
x||y的值为(a )。
A)1B)0C)3D)4
7.若有定义:
floatf=3.5;intz=8;则表达式f+z%3/4的值为(b).
A)3.75B)3.5C)3D)4
8.若有定义:
inta=1,b=2,c=3;则执行以下程序段后a,b,c的值分别为(d )。
if(a
A)a=1,b=2,c=3B)a=2,b=3,c=1C)a=2,b=3,c=3D)a=2,b=1,c=1
9.以下程序段运行后,循环体运行的次数为(b )。
inti=10,x;
for(;i<10;i++)x=x+i;
A)10B)0C)1D)无限
10.若有定义:
inta[5]={1,2,3,4,5};则语句a[1]=a[3]+a[2+2]-a[3-1];运行后a[1]的值为(a )。
A)6B)5C)1D)2
11.若有定义:
inta[3][3];则表达式&a[2][1]-a的值为( a)。
A)7B)8C)6D)9
12.以下程序段运行后屏幕输出为( )。
chara[]=”abc\0mls”;
printf(”%d”,strlen(a));
A)5B)8C)3D)4
13.以下程序运行后屏幕输出为( d)。
#include
inta=2,b=3;
intmax(inta,intb)
{intc;
c=a>b?
a:
b;
return(c);
}
main()
{inta=4;
printf(”%d”,max(a,b));
}
A)2,3B)2C)3D)4
14.若有定义:
#definePI3,则表达式PI*2*2的值为(a )
A)12B)4C)3D)不确定
15.以下程序段运行后*(++p)的值为(c )。
chara[]=”work”;
char*p;
p=a;
A)’w’B)存放’w’的地址C)’o’D)存放’o’的地址
16.以下程序段运行后x的值为( b)
inta[]={1,2,3},b[]={4,2,5};
int*p,*q;
inti,x;
p=a;q=b;
for(i=0;i<3;i++)
if(*(p+i)==*(q+i)
x=*(p+i)*2;
A)2B)4C)6D)不确定
17.下列对结构体类型变量定义不正确的是(c )。
A)structteacher
{intnum;
intage;
}teach1;
C)struct
{intnum;
intage;
}teacher;
structteacherteach1;
B)struct
{intnum;
intage;
}teach1,teach2
D)structteacher
{intnum;
intage;
};
structteacherteach1;
18.若有定义:
structnode
{intdata;
structnode*next;
};
及函数:
voidfun(structnode*head)
{structnode*p=head;
while(p)
{printf(”%d”,p->data);
p=p->next;
break;
}
}
调用时head是指向链表首结点的指针,整个链表的结构如下图:
head… NULL
则函数fun()的功能是(c )。
A)删除单向链表B)显示单向链表中的所有数据
C)显示单向链表中的第一个数据D)创建单向链表
19.若有定义inta=20,b=28,c;则执行语句c=(a&b)>>2后c的值为( b)
A)2B)5C)32D)92
20.以下程序运行后,屏幕显示:
writeok!
下列说法正确的是(d )。
#include
{FILE*fp;
fp=fopen(”data.txt”,”wt”);
if(fp!
=NULL)
{fprintf(fp,”%s\n”,”Filewritesuccessed!
\n”);
fclose(fp);
printf(”writeok!
\n”);
}
}
A)当前工作目录下存在data.txt文件,其中的内容是”writeok!
”
B)fcolse(fp)语句的功能是打开文件
C)当前工作目录下一定不存在data.txt文件
D)当前工作目录下一定存在data.txt文件
二、改错题(共2小题,每题10分)
1.程序cmody051.c,其功能是统计输入字符串中大写英文字母的个数。
如输入:
abcDEFGH123输出:
5
#include
#include
main()
{/**/charstr1/**/
inti,len,sum=0;
printf(”Pleaseinputastring:
\n”);
scanf(”%s”,str1);
len=strlen(str1);
for(i=0;i { if(str1[i]>=’A’&&str[i]<=’Z’) /**/sum--;/**/ } printf(”%d\n”,sum); getch(); } 2.程序cmody052.c其功能是实现从键盘依次输入的M个整数,输出其中所有的偶数。 例如: 输入: 2362384526输出: 623826 #include #include /**/#includeM5/**/ main() {inta[M],i; printf(“Pleaseinput5numbers: \n”); for(i=0;i scanf(”%d”,&a[i]); printf(”Evennumbers: \n”); for(i=0;i /**/if(a[i]/2==0)/**/ printf(”%d”,a[i]); printf(”\n”); getch(); } 三、填空题(共3小题,每题8分) 1.补充程序Ccon051.c,使其实现从键盘输入一个整数,输出该数的平方。 #include”stdio.h” main() {intx; printf(”Pleaseinputanumber: \n”); scanf(”%d”,/**//**/); printf(”%d*%d=%d\n”,x,x,/**//**/); getch(); } 2.补充程序Ccon052.c,使sort()函数用选择法对数组a中的m个元素从小到大排序。 #include #include voidsort(inta[],intm) {inti,j,k,t; for(i=0;i {k=i; for(j=i+1;j**//**/;j++) if(a[j] if(k! =i) {t=a[k];a[k]=a[i];a[i]=/**//**/;} } } voidmain() {inta[]={72,25,58,32,2,15,7,64}; inti,m=sizeof(a)/sizeof(int); sort(a,m); for(i=0;i printf(”%d”,a[i]); printf(”\n”); getch(); } 3.补充程序Ccon053.c,使其实现从键盘输入三个数中,输出最大值。 #include main() {floata,b,c,max; /**//**/ printf(”Pleaseinput3integer: \n”); scanf(”%f%f%f”,&a,&b,&c); max=fmax(a,b,c); printf(”Themaxnumberis: %.2f\n”,max); getch(); } floatfmax(floatx,floaty,floatz) {floatm,n; n=(n>z)? y: z; m=/**//**/ return(m);} 四、编程题(共2小题,每题8分) 1.打开程序cprog051.c,完成其中的f()函数,使其计算: 如: 输入: 0.4 输出f(0.40)=0.82 输入: 1.5 输出f(1.50)=1.24 输入: 780 输出f(780.00)=1.00 #include #include doublef(floatx) {/**/ /**/ } voidmain() { floatx; doubley; printf(”Pleaseinputanumber: \n”); scanf(”%f”,&x); y=f(x); printf(”f(%.2f)=%.2f\n”,x,y); getch(); } 2.打开考生文件夹中的cprog052.c,完成其中的函数fun(),使其判断一个矩阵是否为对称矩阵,若矩阵对称返回1,不对称返回0。 说明: 矩阵a是一个二维数组,若其中的第k行第j列的元素与第j行第k列的元素相同,则称其为对称矩阵,否则为非对称矩阵。 如输入 6312如 输入6912 31883188 128734822 输出: Yes输出: No #include #include intfun(inta[][3],intm) {/**/ /**/ } voidmain() {inta[3][3],i,j;intb; fun(a,20); for(i=0;i<3;i++) for(j=0;j<3;j++) scanf(”%d”,&a[i][j]); b=fun(a,3); if(b==1)printf(”Yes\n”); elseprintf(”No\n”); getch(); } a第一套参考答案: 一、选择题 1.D 2.B 3.A 4.B 5.D 6.B7.A 8.B 9.B 10.B 11.C12.A13.A14.D15.D16.D 17.B18.A19.A20.A 二、改错题 1.j=0;if((str1[i]%2==0)&&(i%2==0)) 2.if((i>10)&&(i%3==0))y+=1.0/i; 三、填空题 1.longintfor 2.(float)a/b;(int) 3.p+nmax<*qnum 四、编程题 1.doubley; y=(1+sin(x)+exp(x))/(1+x); returny; 2.inti,j,k=0,t; for(i=0;i if(a[i]>-20){b[k]=c[k]=a[i];k++;} for(i=0;i for(j=i+1;j if(c[i]>c[j]){t=c[i];c[i]=c[j];c[j]=t;} returnk; 第二套参考答案: 一、选择题 1.B 2.A 3.C 4.A 5.D 6.A 7.AC 8.B 9.D 10.A 11.B12.D13.A14.B15.C 16.B17.B18.D19.A20.A 二、改错题 1.inti,j,k;printf(“*”); 2.intfun()if(cock+hen+chicken==100) 三、填空题 1.403(b*10+a) 2.a=0,b=0;n! =0b++; 3.0num-a 四、编程题 1.doubley; y=(exp(x)+fabs(x-6))/(x+1.3); returny; 2.chart[20]; if(strcmp(a,b)>0){strcpy(t,a);strcpy(a,b);strcpy(b,t);} if(strcmp(a,c)>0){strcpy(t,a);strcpy(a,c);strcpy(c,t);} if(strcmp(b,c)>0){strcpy(t,b);strcpy(b,c);strcpy(c,t);} 第三套参考答案: 一、选择题 1.C 2.D 3.B 4.A 5.B 6.A 7.A 8.B 9.B 10.C 11.D12.D13.D14.A15.B 16.D17.B18.A19.C20.A 二、改错题 1.charch;switch(ch) 2.chartab[4][2]t[j]=tab[i][1]; 三、填空题 1.main()while 2.charstrstr[i]Λ15 3.floataverage(intpa[],intn);pa[k] 四、编程题 1.doubley; if(x<5)y=exp(x)+0.9; elseif(x==5)y=12.5; elsey=((sin(x)-7.8)/(2*x); returny; 2.inti,j,s=0; for(i=101;i<=200;i++) {for(j=2;j if(i%j==0)break; if(j>=i)s++; } returns; 第四套参考答案: 一、选择题 1.C 2.D 3.C 4.B 5.B 6.D 7.A 8.B 9.B 10.B 11.A12.B13.5+3=614.C15.D 16.117.C18.A19.A20.C 二、改错题 1.inti,len,sum=0;if(str1[i]>=’a’&&str[i]<=’z’) 2.scanf(“%d”,&a[i]);for(i=M-1;i>=0;i--) 三、填空题 1.charelseif 2.m-1a[j] 3.floata,floatb,floatca*a 四、编程题 1.if(x>0)return(fabs(x)+3.2)/(sin(x)+2); elsereturn0; 2.inti,j; a[0]=a[1]=1; for(i=2;i a[i]=a[i-1]+a[i-2]; 第五套参考答案: 一、选择题 1.B 2.C 3.C 4.AC 5.D 6.A 7.B 8.D 9.B 10.A 11.A12.C13.D14.A15.C 16.B17.C18.C19.B20.D 二、改错题 1. charstr[100];sum++; 2.defineM5if(a[i]%2==0) 三、填空题 1.&xx*x 2.mk=jt 3.floatfmax(floatx,floaty,floatz);n=(y>z)? y: z;m=(x>n)? x: n; 四、编程题 1.doubley; if(fabs(x)<700.0)y=sqrt(5.8+fabs(x))/(cos(x)+2.1); elsey=-1; returny; 2.该答案错误! inti,j; for(i=0;i for(j=0;j if(a[i][j]==a[j][i])return1; elsereturn0; 应改为: 第六套参考答案: 一、选择题 1.D 2.A 3.B 4.C 5.D 6.A 7.A 8.C 9.D 10.D 11.C12.B13.B14.C15.B 16.C17.D18.B19.A20.C 二、改错题 1.for(i=0;i 2.Ps1=s1;while(*ps1! =NULL) 三填空题、 1.j0sum+=a[i][0]; 2.intq(left+right)/2 3.floatrsqrt(x*x+y*y) 四、编程题 1.doubley; if(x<2)y=x; else if(x<5&&y>=2)y=3-tan(3.5-x); elsey=3*log10(x)-11; returny; 2.charcode; floatc; c=(f-32)*5.0/9; if(c<0)code=’W’; if(c>=0&&c<25)code=’B’; if(c>=25&&c<35)code=’0’; if(c>=35)code=’R’; returncode; 第七套参考答案: 一、选择题 1.D 2.B 3.A 4.B 5.A 6.C 7.A 8.C 9.B 10.D 11.D12.B13.D14.A15.D 16.A17.D18.B19.B20.B 二、改错题 1.scanf(“%f”,&a[i]);if(a[0]+a[1]>a[2]&&a[1]+a[2]>a[0]&&a[0]+a[2]>a[1]) 2.intfun()if(large+middle+small==100) 三、填空题 1.#include 2.p*=i;p=p*1.0/i; 3.findmax(a,sizeof(a)/sizeof(int))max=*array或max=array[0] 四、编程题 1.doulbey; if(x<=1600)y=0; if(x>1600&&x<=2100)y=(x-1600)*0.05; if(x>2100&&x<=3100)y=(x-1600)*0.1-25; if(x>3100)y=(x-1600)*0.15-125; returny; 2.inti,j,s=0,k=0; for(i=0;i for(j=0;j if(a[i][j]<0)continue; elseif(a[i][j]==0)break; else{b[k++]=a[i][j];s=s+a[i][j];} for(i=0;i returns; 第八套参考答案: 一、选择题 1.C 2.B 3.B 4.B 5.B 6.D 7.C 8.C 9.C 10.C 11.C12.A13.D14.C15.A16.A17.D18.A19.C20.C 二、改错题 1.for(i=100;i<=200;i++)rintf(“%d\n”,i); 2.intswap(intp1,intp2)*p1=*p2; 三、填空题 1.sum=0returnsum;sum(m) 2.kj=strlen(str)-1 3.STUtempps[i].num>ps[i+1].numflag==0 四、编程题 1.doubley; if(x<0)y=(x+2)*exp(x); elsey=(x+2)*log(2*x); returny; 2.char*a[5]; chart[20]; inti,j; for(i=0;i for(i=0;i for(j=i+1;j if(strcmp(a[i],a[j]>0) {strcpy(t,a[i]);strcpy(a[i],a[j]);strcpy(a[j],t);} 第九套参考答案: 一、选择题 1.C 2.A 3.C 4.B 5.D 6.A 7.C 8.D 9.B 10.A 11.A12.B13.B14.B15.B16.A17.D18.A19.C20.D 二、改错题 1.inta=0,c=0;printf(“totalofoddnumber: %d\n”,c-101); 2.for(z=0;z<10;z++)if(i==result) 三、填空题 1.max=min=a[0][0];max 2.s=0i+t*10 3.longfib(intn) {if(n==1||n==2)return1; elsereturnfib(n-1)+fib(n-2);} 四、编程题 1.doublex1,x2; x1=(-b
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 福建省二级C模拟题 福建省 二级 模拟