专升本考试C语言模拟试题.docx
- 文档编号:4955977
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:13
- 大小:20.04KB
专升本考试C语言模拟试题.docx
《专升本考试C语言模拟试题.docx》由会员分享,可在线阅读,更多相关《专升本考试C语言模拟试题.docx(13页珍藏版)》请在冰豆网上搜索。
专升本考试C语言模拟试题
2008年专升本考试C语言模拟试题
(2009-07-0422:
35:
50)
转载
标签:
c语言
分类:
考试
一.单项选择题
1. 以下定义语句中正确的是(C)
A)chara='A'b='B';B)floata=b=10.0;
C)inta=10,*b=&a;D)float*a,b=&a;
2.下列运算符中,优先级最高的是(A)。
A.-> B. ++ C.&& D.=
3.表达式!
(x>0&&y>0)等价于(A)。
A.!
(x>0)||!
(y>0) B.!
x>0||!
y>0 C. !
x>0&&!
y>0 D.!
(x>0)&&!
(y>0)
4.有以下程序
main()
{inta=666,b=888;
printf("%d\n",a,b);
}
程序运行后的输出结果是(B)
A)错误信息B)666C)888D)666,888
5.有以下程序
main()
{inti;
for(i=0;i<3;i++)
switch(i)
{
case0:
printf("%d",i);
case2:
printf("%d",i);
default:
printf("%d",i);
}
}
程序运行后的输出结果是(C)
A)022111B)021021C)000122D)012
6.若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是(C)
A)abs(x-y)<10
B)x-y>-10&&x-y<10
C)!
(x-y)<-10||!
(y-x)>10
D)(x-y)*(x-y)<100
7.数组定义为,inta[11][11];则数组a的元素个数为:
(D)
A.12 B. 144 C.100 D. 121
8.对于以下的变量定义,不正确的表达式是:
(D)。
structnode{
int j,k;
}x,*p=&x;
A. p->k=2; B. (*p).k=2;
C. x.k=2 D. x->k=2
9.不正确的赋值或赋初值的方式是(B)。
A. charstr[]=”string”;
B. charstr[10]; str=”string”;
C. char*p=”string”;
D. char*p;p=”string”;
10.设程序中不再定义新的变量,写出在函数main中可以使用的所有变量为:
(B)
#include
intz;
intp(intx)
{ staticinty;
return(x+y);
}
voidmain()
{ inta,b;
printf(“%dn”,p(a));
………
}
A.a,b B.a,b,z
C. a,b,y,z D. a,b,x,y,z
11.有以下程序
main()
{inti=0,x=0;
for(;;)
{
if(i==3||i==5)continue;
if(i==6)break;
i++;
s+=i;
};
printf("%d\n",s);
}
程序运行后的输出结果是(D)
A)10B)13C)21D)程序进入死循环
12.有以下程序
main()
{chara,b,c,d;
scanf("%c,%c,%d,%d",&a,&b,&c,&d);
printf("c,%c,%c,%c\n",a,b,c,d);
}
若运行时从键盘上输入:
6,5,65,66<回车>。
则输出结果是(A)
A)6,5,A,B
B)6,5,65,66
C)6,5,6,5
D)6,5,6,6
13.s12和s2已正确定义并分别指向两个字符串。
若要求:
当s1所指串大于s2所指串时,执行语句S;则以下选项中正确的是(D)
A)if(s1>s2)S;
B)if(strcmp(s1,s2))S;
C)if(strcmp(s2,s1)>0)S;
D)if(strcmp(s1,s2)>0)S;
14.有以下定义和语句
inta[3][2]={1,2,3,4,5,6,},*p[3];
p[0]=a[1];
则*p[0]+1)所代表的数组元素是(C)
A)a[0][1] B)a[1][0]
C)a[1][1] D)a[1][2]
15.程序中对fun函数有如下说明
void*fun();
此说明的含义是:
(C)
A)fun了数无返回值
B)fun函数的返回值可以是任意的数据类型
C)fun函数的返回值是无值型的指针类型
D)指针fun指向一个函数,该函数无返回值
16.有以下程序
voidfun(int*a,inti,intj)
{intt;
if(i {t=a;a=a[j];a[j]=t; i++;j--; fun(a,i,j); } } main() {intx[]={2,6,18},i; fun(x,0,3); for(i=0;i<4;i++)printf("%2d",x); printf("\n"); } 程序运行后的输出结果是(C) A)1268 B)8621 C)8162 D)8612 17.有以下说明和定义语句 structstudent {intage;charnum[8];}; structstudentstu[3]={{20,"200401"},{21,"200402"},{10\9,"200403"}}; structstudent*p=stu; 以下选项中引用结构体变量成员的表达式错误的是(D) A)(p++)->num B)p->num C)(*p).num D)stu[3].age 18.已定义ch为字符型变量,以下赋值语句中错误的是(A) A)ch='\'; B)ch=62+3; C)ch=NULL; D)ch='\xaa'; 19.以下选项中不能正确把cl定义成结构体变量的是(B) A)typedefstruct B)structcolorcl {intred;{intred; intgreen;intgreen; intblue;intblue; }COLOR;}; COLORcl; C)structcolor D)struct {intred;{intred; intgreen;intgreen; intblue;intblue; }cl;}cl; 20.有以下程序 fun(inta,intb) {if(a>b)return(a); elsereturn(b); } main() {intx=3,y=8,z=6,r; r=fun(fun(x,y),2*z); printf("%d\n",r); } 程序运行后的输出结果是(D) A)3B)6C)8D)12 21.有以下程序段 main() {inta=5,*b,**c; c=&b;b=&a; …… } 程序在执行了c=&b;b=&a;语句后,表达式: **c的值是(C) A)变量a的地址B)变量b中的值 C)变量a中的值D)变量b的地址 22.设有intx=11;则表达式(x++*1/3)的值是(A) A)3B)4C)11D)12 23.下列程序的输出结果是(C) A)3B)3.2C)0D)3.07 main() {doubled=3.2;intx,y; x=1.2;y=(x+3.8)/5.0; printf("%d\n",d*y); } 24.下列变量定义中合法的是(A) A)short_a=1-.le-1; B)doubleb=1+5e2.5; C)longdo=0xfdaL; D)float2_and=1-e-3; 25.以下循环体的执行次数是(C) A)3B)2C)1D)0 main() {inti,j; for(i=0,j=1;i<=j+1;i+=2,j--)printf("%d\n",i); } 26.以下叙述正确的是(D) A)do-while语句构成的循环不能用其它语句构成的循环来代替。 B)do-while语句构成的循环只能用break语句退出。 C)用do-while语句构成的循环,在while后的表达式为非零时结束循环。 D)用do-while语句构成的循环,在while后的表达式为零时结束循环。 27.下列程序执行后的输出结果是(A) A)GB)HC)ID)J main() {intx='f';printf("%c\n",'A'+(x-'a'+1));} 28.下列程序执行后的输出结果是(A) A)6B)7C)8D)9 voidfunc(int*a,intb[]) {b[0]=*a+6;} main() {inta,b[5]; a=0;b[0]=3; func(&a,b);printf("%d\n,b[0]); } 29.下列程序的运行结果是(B) A)a=%2,b=%5B)a=2,b=5 C)a=d,b=d D)a=%d,b=%d #include main() {inta=2,c=5; printf("a=%d,b=%d\n",a,c);} 30.设有数组定义: chararray[]="China";则数组array所占的空间为(C) A)4个字节 B)5个字节 C)6个字节 D)7个字节 31.下列程序的输出结果是(B) A)5B)6C)7D)8 structabc {inta,b,c;}; main() {structabcs[2]={{1,2,3},{4,5,6}};intt; t=s[0],a+s[1],b; printf("%d\n",t); } 32.若有以下调用语句,则不正确的fun函数的首部是(C) A)voidfun(intm,intx[]) B)voidfun(ints,inth[41]) C)voidfun(intp,int*s) D)voidfun(intn,inta) main() {… inta[50],n; … fun(n,&a[9]); … } 33.设已有定义: char*st="howareyou";下列程序段中正确的是(A) A)chara[11],*p;strcpy(p=a+1,&st[4]); B)chara[11];strcpy(++a,st); C)chara[11];strcpy(a,st); D)chara[],*p;strcpy(p=&a[1],st+2); 34.下列程序执行后的输出结果是(A) A)you&neB)youC)meD)err mai() {chararr[2][4]; strcpy(arr,"you");strcpy(arr[1],"me"); arr[0][3]='&'; printf("%s\n",arr); } 35.下列程序执行后的输出结果是(B) A)6B)8C)10D)12 #defineMA(x)x*(x-1) main() {inta=1,b=2;printf("%d\n",MA(1+a+b));} 36.变量a所占内存字节数是(C) A)4B)5C)6D)8 unionU {charst[4]; inti; longl; }; structA {intc; unionUu; }a; 二、填空题 1.表达式1<0<5的值是 1 。 3.表达式~(10>>1^~5)的值是 0 。 2.设变量已正确定义,在程序段B中填入正确的内容,使程序段A和程序段B等价。 程序段A for(k=s=0;k<=10;s+=a[k++]) if(a[k]<0)break; 程序段B for(k=0,s=0;;s+=a[k++]) if( a[k]<0||k>10 )break; 3.下列程序的输出结果是 100 。 #defineT10 #define MD3*T printf(“%d”,30/MD); 4.下列程序的输出结果是 k=5,s=15 。 intk,s; for(k=s=0;k<10&&s<=10;s+=k) k++; printf(“k=%d,s=%d”,k,s); 5.下列程序的输出结果是 5,9 。 #include intf(intm) { staticintk=2; k++; returnk+m; } voidmain() { ints; s=f (2); printf(“%d,%dn”,s,f(s)); } 6. 对于以下递归函数f,条用f(3)的返回值是 -2 。 f(intn) { return((n<=0)? n: f(n-1)+f(n-2)); } 7.下列程序的输出结果是 -10 。 intc[]={10,0,-10}; int*k=c+2; printf(“%d”,*k--); 8.下列程序的输出结果是 2 1 。 intk=1,j=2,*p=&k,*q=p; p=&j; printf(“%d%d”,*p,*q); 9.下列程序的输出结果是 un,g 。 #include char*f(char*str) { returnstr=”fun”; } voidmain() { char*str=”one”; printf(“%s,%cn”,f(str)+1,*f(str)+1); } 10.下列程序的输出结果是 1,3 。 #include voidp(int*x,inty) { ++*x; y--; } voidmain() { intx=0,y=3; p(&x,y); printf(“%d,%d”x,y); } 11.下列程序的输出结果是 1001 。 #include { intj,k,a[2][2]; for(k=1;k<3;k++) for(j=1;j<3;j++) a[k-1][j-1]=(k/j)*(j/k); for(k=0;k<2;k++) for(j=0;j<2;j++) printf(”%d”,a[k][j]); } 12.下面程序的功能是: 计算1到10之间奇数之和及偶数之和,请填空。 #include main() {inta,b,c,i; a=c=0; for(i=0;i<10;i+=2) {a+=i; b=i+1 ; c+=b; } printf("偶数之和=%d\n",a); printf("奇数之和=%d\n",c-11); } 13.下面程序的功能是: 输出100以内能被3整除且个位数为6的所有整数,请填空。 #include main() {inti,j; for(i=0; i<10 ;i++) {j=i*10+6; if( i%3! =0 )continue; printf("%d",j); } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 考试 语言 模拟 试题