《2023年C语言题库材料.pdf》由会员分享,可在线阅读,更多相关《2023年C语言题库材料.pdf(17页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、C语言题库1.若要用f ope n 函数打开一个新的二进制文献,该文献要既能读也能写,则文献方式字符串应是(D)。A、r b+B、a b+C、a b D、w b+2.设有如下定义:s t r u c t s k i n t a;f l oa t b;d a t a,*p;若要使P 指向d a t a 中的a 域,对的的赋值语句是(C)。A、p=(s t r u c t s k*)d a t a,a;*p=d a t a.a;C p=&d a t a.a;D、p=&d a t a,a;3 .对结构体类型的变量的成员的访问,无论数据类型如何都可使用的运算符是(B)。A、&B、.C、*D、-4.下列
2、关于指针定义的描述,错误的是(A)。A、指针是一种变量,该变量用来存放某个变量的值B、指针是一种变量,该变量用来存放某个变量的地址值C、指针变量的类型与它所指向的变量类型一致D、指针变量的命名规则与标记符相同5.设有如下的程序段:c h a r s t r =He l l o;c h a r *pt r;pt r=s t r;执行完上面的程序段后,*(pt r+5)的值为(D).A、不拟定的值B、o 的地址C、oD、06.若有以下的定义:i n t t 3 2;能对的表达t 数组元素地址的表达式是(D)。A、&t l B、t 3 C、&t 3 2D,t 27.下列说法中对的的是(B).A、函数
3、调用不占运营时间,只占编译时间.B、宏替换不占运营时间,只占编译时间.C、有参数的宏定义,就是函数.D、在定义宏时,宏名与带参数的括弧之间可以加空格.8.以下叙述中对的的是(C)。A、全局变量的作用域一定比局部变量的作用域范围大B、未在定义语句中赋初值的a u t o变量和s t a t i c 变量的初值都是随机值C、静态(s t a t i c)类别变量的生存期贯穿于整个程序的运营期间D、函数的形参都属于全局变量9.下列叙述中对的的是(B)。A、C语言的子程序有过程和函数两种B、C语言所有函数都是外部函数C、C语言的函数可以嵌套定义D、C 语言编译时不检查语法1 0.函数的形式参数系统默认
4、存储类型说明是(D)。A、s t a t i cB、e x t e r nC、r e g i s t e rD、a u t o1 1 .以下对C 语言函数的描述中,对的的是(B)。A、C函数既可以嵌套定义又可以递归调用B、C程序必须由一个或一个以上的函数组成C、函数必须有返回值,否则不能使用函数D、C 程序中有调用关系的所有函数必须放在同一个程序文献中1 2.以下不能对的进行字符串赋初值的语句是(A)。A、c h a r s t r 5 二 g ood!;B、c h a r s t r 5 =,g ,o,o,d ;C c h a r *s t r=g ood!;D、c h a r s t r
5、口 二 g ood!;1 3 .选择对的的输入语句(B).(其中:c h a r s t r i n g 1 0;)使得s t r i n g 的内容为H e l l o”.A、s c a n f(%c ,&s t r i n g);BN s c a n f(%s ,s t r i n g);C、s c a n f (枇 ,s t r i n g);D、s c a n f(%s ,f e s t r i n g);1 4.以下对二维数组a 的对的说明是(D)。A、i n t a 3 B、f l o a t a (3,4)C、f l o a t a(3)(4)D、d o u b l e a l
6、41 5.下列数组说明中,对的的是(B)。A、s t a t i c c h a r s t r l 口,s t r 2 ;s t r 2=“Ch i n a ;s t r c py (s t r l,s t r 2);BN s t a t i c c h a r s t r 口=“Ch i n a”;C、s t a t i c c h a r s t r ;s t r=Ch i n a”;D、s t a t i c c h a r s t r l 5,s t r 2 口=“Ch i n a ;s t r l=s t r 2;1 6.若有说明i n t a 3 若;则对a 数组元素的对的引用是
7、(C)。A、a l,3 B、a 2 4C、a l+l 0 D、a(2)(l)1 7.以下对的的描述是(A).A、只能在循环体内和s w i t c h 语句内使用b r e a k 语句B、c o n t i n u e 语句的作用是终止整个循环的执行C、从多层嵌套的外层循环中退出时.,只能使用g o t o 语句D、在循环体内使用b r e a k 和 c o n t i n u e 语句的作用相同1 8.在C语言中,为了结束由w h i l e 语句构成的循环,w h i l e 后一对圆括号中表达式的值应当为(C)。A、非0B、1C、0D、T r u e1 9.针对f o r 循环语句,
8、f o r(表达式1;表达式2;表达式3),下列说法对的的是(C).A、三个表达式和中间分隔分号均可省略B、三个表达式和中间分隔分号均不能省略C、三个表达式可省略,但中间分隔分号不能省略D、三个表达式不能省略,但中间分隔分号可省略2 0 .若i 为整型变量,则以下循环执行次数是(A)。f o r(i=2;i=0;)pr i n t f(机T,i 一);A、0 次B、2 次C、无限次D、1 次2 1 .已知键盘输入a=4,b=3,下面程序输出的结果是(C).m a i n O i n t a,b,s;s c a n f(%d%d”,&a,&b);s=a;i f(a 1 6【)、1 52 2 .算
9、术运算符、赋值运算符和关系运算符的运算优先级按从高到低的顺序依次为(A)。A、算术运算、关系运算、赋值运算B、关系运算、赋值运算、算术运算C、算术运算、赋值运算、关系运算D、关系运算、算术运算、赋值运算2 3.在C语言中,能代表逻辑值“真的是(B)。A、大于。的数B、非0的数C、非0整数D、T r u e2 4.表达关系x 0且y=1 0的C语言表达式为(D).A、(x=0)AN D(y 0,y=1 0C、(x 0)&(y pr i n t f (x=%7.2 f,y=%7.2 f,&x,&y);D、pr i n t f (x=%7.5f,y=%7.5f n”,x,y);2 8.已知i、_ j
10、、k 为i n t 型变量,若从键盘输入:1,2,3 回车,使i 的值为1、j的值为2、k 的值为3,以下选项中对的的输入语句是(C)。A、s c a n f(%d%d%d”,&i,&_ j,&k);B、s c a n f (2 d%2 d%2 d”,&i,&j,&k);C、s c a n f(%d,%d,%d,&i,&j,&k);D、s c a n f (i=%d,j=%d,k=%d/,,&i,&j,&k);2 9.根据下面的程序,对的的输出形式是(A);m a i n O(i n t i=5,j=1 0;pr i n t f (i=%d,i);pr i n t f (j=%d ,j);3
11、0 .若变量已对的定义并赋值,下面符合C语言语法的表达式是(A)。A、a=b=c+2B、a:=b+lC、i n t 1 8.5%3D、a=a+7=c+B3 1 .对于赋值语句c h a r c x=0 3 7;判断对的的是:(D).A、e x 的值是四个字符B、不合法,不能赋值C、e x 的值是三个字符D、e x 的值是一个字符3 2 .设有说明:c h a r w;i n t x;f l o a t y;d o u b l e z;则表达式w*x+z-y 值的数据类型为(D).A、c h a rB、i n tC、f l o a tD、d o u b l e3 3.先用语句定义字符型变量c,然
12、后要将字符a 赋给c,则下列语句中对的的是(B)。A、C=97B、c=a;C、c=97”;D、c=a;3 4.已定义c h 为字符型变量,以下赋值语句中错误的是(A)。A、c h=,;B、c h=N U L L;C c h=x a a;D、c h=62+3;3 5.以下选项中合法的用户标记符是(D)。A、l o n gB、A.d a tC 3 Dm a xDN 2 T e s t3 6.下列对的的标记符是(0.A、a+bB、6aC、_ d oD、%y3 7.执行下列语句后变量x 和y 的 值 是(A)oy=1 0;x=y+;A、x=1 0,y=l lB、x=l l,y=l lC、x=l l,y
13、=1 0I)、x=1 0,y=1 03 8.假设所有变量均为整型,则表达式所=2,b=5,b+,a+b)的 值 是(C)。A、2B、6C、8D、73 9.若i n t a=2,则执行完表达式a-=a+=a*a 后,a 的值是(C)。A、-4B、-8C、0D、-240 .下列四组选项中,均不是C语言关键字的选项是(B)。A、w h i l e g o po wB、d e f i n e I F t y peC、i n c l u d e s c a n f c a s eDN g e t c c h a r pr i n t f41 .在一个C程 序 中(A)oA、m a i n 函数可以在任何
14、地方出现m a i n 函数必须出现在固定位置C、m a i n 函数必须出现在所有函数之前D、ma i n 函数必须出现在所有函数之后42.C语言中用于结构化程序设计的三种基本结构是(B)。A、i f s wi t c h b r e a kB、顺序结构、选择结构、循环结构C、i f f o r、c o n t i n u eDN f o r wh i 1e d o-wh i l e43.C语言源程序文献通过C编译程序编译连接之后生成一个后缀为(A)的可执行文献A、.e xeB、.b a sC、.o b jD、.c44.C语言的程序一行写不下时,可以(C).A、用分号换行B、用逗号换行C、用
15、反斜线换行D、在任意标记符后用回车键换行45.对字符数组不对的的赋值方式是了.A、c h a r c =c h i n a ;B、c h a r s t r i n g;s t r i n g=c h i n a”;C c h a r c 10;c 10=c h i n a ;D c h a r s t r i n g=c h i n a”;46.对a u t o 存储类型的变量,若不赋值,则其值是(B).A、0 B、随机的C、系统自动赋值0D、根据情况赋值47.构成C语言程序的基本单位是(C)。A、子例程B、子程序C、函数D、过程48.用下面的s c a n f 函数输入数据,使得i=12,
16、j=202,不对的的键盘输入方法是(C).(用 CR 表达回车,U 表达空格)ma i n()i n t i,j;s c a n f (%2d%3d”,&i,&j);)A、12 CR 202 CR B、12202 CR C、12,202 CR D、12U 202 CR 49 .在位运算中,操作数每右移一位,其结果相称于(C)。A、操作数乘以16B、操作数除以16C、操作数除以2【)、操作数乘以250.执行下面程序段后,b 的值为:一Bi n t x=12;c h a r z=A;i n t b;b=(x&6)&(z,a );A、3B、1C、2I)、0填空L C 语言源程序的基本单位是一函数2.
17、表 达 式 a+=b相称于表达式_ _ a=a+b a=b+a。3.int x=2;z=+x+l;则 z 的值为_ 4.4.已 知 i=5,写出语句i*=i+l;执行后整型变量i 的值是_30.5.执行下列语句的结果是4,4_,a=3;printf(%d,+a);p rin tf a+);6.输入整型变量a 的 值.int a;scanf(机T,&a_);7.设 x=5l+2,x 的值 为1.8.已知 a=10,b=15,c=l,d=2,e=0,则表达式 a+&e+&c+的值为_0一.9.以 下 do-w hile语句中循环体的执行次数是_3_.a=10;b=0;do b+=2;a-=2+b;
18、while(a=0);10.执行语句char str81=abcdef;后,字符串s t r 结束标志存储在s tr_6 _ (在括号内填写下标值)中.11.字符串的结束标志是_0 0 0.12.求字符串长度的库函数是一strlen,只写函数名即可.13.函数调用时的实参和形参之间的数据是单向的_ 值一传递.14.C语言中一个函数由函数首部和一函数体 两部分组成.15.设x的值为15,n 的值为2,则表达式x*=n+3运 算 后 x 的值是_75.程序改错1./*ERR0R*/*ERROR*/记录全班某门功课期末考试的平均分数和最高分数,设全班人数为30名。#d e f i n e N 30m
19、a i n()(i n t i,s u m,s c o r e N ,h i g h;f l o a t a ve r a g e;f o r(i=0;i ,c=a;student=30;a+=a-=(b=4)*(a=3);【参考答案】int student,a,b;3.#include stdio.hmain()int a,b,t;do(scanf(d,%d,&a,&b);)/*ERR0R*/while(a=0&b=0);if(a=b)/*ERR0R*/t=a;a=b;b=t;printf(,za=%d,b=%d”,a,b);【参考答案】while(a=0|b=0);程序填空1.mainOI
20、int i,j;/*FiLL*/scanf(z/%d,%d/z,);i+;j+;printf(绘d,%dn,i,j);)【参考答案】&i,&j&j,&I2.OutputU result:al=A A SCIIU isU 65-*/#include stdio.hmain()(char al=A ;/*FLL*/*F TLL*/printf(,al);)【参考答案】printf(OutputUresult:n);3.#include stdio.hmain()(int m,n,k,t;scanf(%d,%d,%d,&m,&n,&k);/*FILL*/if()t=m;nFn;n=t;/不 不 不 不 不 不 不 不 不 不 不 卜 LL不 不 不 不 不 不 不 不 不 不 不/if()t=m;m=k;k=t;)if(nk)(t=n;n=k;k=t;)printf(d,%d,%d,m,n,k);)【参考答案】mm#include“stdio.h/*FILL*/main()Istatic float xM=0.5,4.8,7.2;int i;float a,s;/*FILL*/for(i=0;iM;i+)s+=xi;a=s/M;printf(,a=%f,a);【参考答案】#defineUMU3