专升本C语言历年考试
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
及答案专升本C语言历年考试题及答案一、单项选择题1. C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。 A、”.c” B、“.obj” C、“.exe” D、“.bas”2. 以下选项中不正确的整型常量是_C____。 A、12L B、-10 C、1,900 D、123U3. 表达式___C___的值是0。A、3%5 B、3/5.0 C、3/5 D、3<54. 表达式!(x>0||y>0)等价于__D___。A、!x>0||!y>0 B、!(x>0)||!(y>0) C、!x>0&&!y>0 D、!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。A、4&&3 B、+a C、a=b=5 D、int(3.14)6. 若变量已正确定义,执行语句scanf("%d%d%d",&k1,&k2,&k3);时,___B___是正确的输入。 A、2030,40 B、203040 C、20,3040 D、20,30,407. 执行语句printf(”__D____”, 2);将得到出错信息。A、%d B、%o C、%x D、%f8. 设变量定义为“ints[]="hello\nworld\n";”,则数组s中有__B____个元素。A、12 B、13 C、14 D、159. 设变量定义为“inta[2]={1,3},*p=&a[0]+1;”,则*p的值是___B__。A、2 B、3 C、4 D、&a[0]+110. 若变量已正确定义并赋值,表达式-k++等价于__A____。A、-(k++) B、(-k)++ C、-(k+1) D、-(++k)11. 在C语言程序中,在函数内部定义的变量称为__D____。A、全局变量 B、全程变量 C、外部变量 D、内部变量12. 若x是整型变量,表达式(x=10.0/4.0)的值是__D___。A、2.5 B、2.0 C、3 D、213. 对于以下的变量定义,表达式__A____是正确的。 structnode{ chars[10]; intk; }p[4];A、p->k=2 B、p[0].s=“abc” C、p[0]->k=2 D、p->s=‘a’14. 下列运算符中,优先级从高到低依次为__D___。A、&&,!,|| B、||,&&,! C、&&,||,! D、!,&&,||15. 下列程序段的输出结果是__B___。int *p, *q, k=1,j=10;p=&j;q=&k; p=q;(*p)++;printf("%d",*q);A、1 B、2 C、10 D、1116.以下各选项企图说明一种新的类型名,其中正确的是水量(C)A)typedefv1int;B)typedefv2=int;C)typedefv1intv3;D)typedefv4:int;17.以下选项中,非法的字符常量是(C)A)‘\t’B)‘\17’C)“n”D)‘\xaa’18.以下程序的输出结果是(C)main(){inti,a[10];for(i=9;i>=0;i--)a[i]=10-i;printf(“%d%d%d”,a[2],a[5],a[8]);}A)258B)741C)852D)36919.以下程序的输出结果是(B)main(){charst[20]=“hello\0\t\\\”;printf(%d%d\n”,strlen(st),sizeof(st));}A)99B)520C)1320D)202020.以下程序的输出结果是(D)main(){inta,b;for(a=1,b=1;a<=100;a++){if(b>=10)break;if(b%3==1){b+=3;continue;}}printf(“%d\n”,a);}A)101B)6C)5D)421.以下程序的输出结果是(D)unionmyun{struct{intx,y,z;}u;intk;}a;main(){a.u.x=4;a.u.y=5;a.u.z=6;a.k=0;printf(%d\n”,a.u.x);}A)4B)5C)6D)022.以下程序段的输出结果是(A)chars[]="\\141\141abc\t";printf("%d\n",strlen(s));A)9B)12C)13D)1423.以下程序的输出结果是(B)main(){charch[3][5]={"AAAA","BBB","CC"};printf("\"%s\"\n",ch[1]);}A)"AAAA"B)"BBB"C)"BBBCC"D)"CC"24.不合法的main函数命令行参数表示形式是(C)A)main(inta,char*c[])B)main(intarc,char**arv)C)main(intargc,char*argv)D)main(intargv,char*argc[])25.有以下程序main(){char*s[]={"one","two","three"},*p;p=s[1];printf("%c,%s\n",*(p+1),s[0]);}执行后输出结果是(C)A)n,twoB)t,oneC)w,oneD)o,two26.设有如下说明typedefstruct{intn;charc;doublex;}STD;则以下选项中,能正确定义结构体数组并赋初值的语句是(A)A)STDtt[2]={{1,'A',62},{2,'B',75}};B)STDtt[2]={1,"A",62},2,"B",75};C)structtt[2]={{1,'A'},{2,'B'}};D)structtt[2]={{1,"A",62.5},{2,"B",75.0}};27.若变量c为char类型,则能正确判断出c为小写字母的表达式是( D )。A)'a'<=c<='z' B)(c>='a')||(c<='z')C)('a'<=c)and('z'>=c) D)(c>='a')&&(c<='z')二、填空题1.设ch是字符型变量,判断ch为英文字母的表达式是:(ch>=’A’&&ch,=’Z’)||(ch>=’a’&&ch<=’z’)__。2. 计算下列分段函数的if语句是_if(x>0)y=1;elseif(x=0)y=0;elsey=-1;___。 1 x>0y= 0 x=0 -1 x<03. 表达式!!5的值是__1____。4. 下列程序段的输出结果是___12___。printf("%xn",(0x19<<1)&0x17);5. 下列程序段的输出结果是__k=4s=6___。 intk,s; for(k=0,s=0;k<10;k++) if(s>k)break; elses+=k;printf("k=%ds=%d",k,s);6. 下列程序段的输出结果是__15___。 #defineMIN(x,y) (x)<(y)?(x):(y) printf("%d",10*MIN(10,15));7. 下列程序在运行时可能会出错,原因是__指针变量s未赋初值____。 #includevoidmain(){ char*s; gets(s); puts(s);}8. 下列程序段的输出是___6 0__。#include intf(intm) { staticintk=0; ints=0; for(;k<=m;k++)s++; returns;}voidmain(){ ints1,s2; s1=f(5); s2=f(3); printf("%d%d\n",s1,s2);}9. 下列程序段的输出结果是__fgh___。 char *st[]={"abcd","efgh","ijkl","mnop"};printf("%s",*(st+1)+1);10. 用typedef定义一个含10个元素的整型数组ARR。 typedef int ARR[10]; 11.以下程序调用findmax函数返回数组中的最大值,请填空。findmax(int*a,intn){int*p,*s;for(p=a,s=a;p-aif( *p>*s )s=p;return(*s);}main(){intx[5]={12,21,13,6,18};printf("%d\n",findmax(x,5));} 三、程序(段)填空题1.设变量x,y,z已正确定义和赋值,请仔细阅读程序段A,然后在程序段B中填入正确的内容,使程序段A和程序段B有相同的功能。程序段A 程序段B x=x+y;y=x-y;x=x-y;z=x+y; z=x ; x=y ;y=z;z=x+y; 2.请仔细阅读函数f1,然后在函数f2中填入正确的内容,使函数f1和函数f2有相同的功能。char*f1(chars[],chart[]){ intk; for(k=0;t[k]!='';k++) s[k]=t[k]; s[k]=''; returns;}