《2021年电大C语言程序设计期末考试试题A.pdf》由会员分享,可在线阅读,更多相关《2021年电大C语言程序设计期末考试试题A.pdf(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、一、选 取 题(每 题1.5分,共计4 5分)1、如下论述对的是【】A.C语言程序是由过程和函数构成B.C语言函数可以嵌套调用,例如:f u n (f u n (x)C.C语言函数不可以单独编译D.C语言中除了 m a i n函数,其她函数不可作为单独文献形式存在2、如下关于C语言论述中对的是【】A.C语言中注释不可以夹在变量名或核心字中间B.C语言中变量可以在使用之前任何位置进行定义C.在C语言算术表达式书写中,运算符两侧运算数类型必要一致D.C语言数据常量中夹带空格不影响常量正常使用3、如下C语言顾客标记符中,不合法是【】A._ 1B.A a B cC.a _ bD.a b4、若有定义:d
2、 o u b l e a=22;i n t i=0,k=18;,则不符合C语言规定赋值语句是【A.a=a+,i+;B.i=(a+k)=(i+k);0.i=a%11;D.i=!a;5、有如下程序#i n c I u d e m a i n ()c h a r a,b,c,d;s c a n f ,&a,&b);c=g e t c h a r ();d=g e t c h a r ();p r i n t f (%c%c%c%c n”,a,b,cr d);1当执行程序时,按下列方式输入数据(从第1 列开始,代表回车,注意:回车也是一种字符)1234 则输出成果是【】A.1234B.120.123D
3、.12346、如下关于C 语言数据类型使用论述中错误是【】A.若要精确无误差表达自然数,应使用整数类型B.若要保存带有多位小数数据,应使用双精度类型C.若要解决如“人员信息”等具有不同类型有关数据,应自定义构造体类型D.若只解决“真”和“假”两种逻辑值,应使用逻辑类型7、若 a是数值类型,则逻辑表达式(a=1)|(a!=1)值 是【】A.1B.0C.2D.不懂得a 值,不能拟定8、如下选项中与i f (a=1)a=b;e l s e a+;语句功能不同s w i t c h语 句 是【A.s w i t c h (a)c a s e:a=b;b r e a k;d e f a u I t:a+
4、;B.s w i t c h (a=1)c a s e 0:a=b;b r e a k;c a s e 1:a+;1C.s w i t c h (a)d e f a u I t:a+;b r e a k;c a s e 1:a=b;)D.s w i t c h (a=1)c a s e 1 :a=b;b r e a k;c a s e 0:a+;19、有如下嵌套i f语句i f (a b)i f (a c)k=a;e I s e k二c;e I s ei f (b c)k=b;e I s e k=c;如下选项中与上述i f语句等价语句是【A.k=(a b)?a:b;k=(b c)?b:c;B.
5、k=(a c)?b:c);C.k=(a b)?(a c)?a:c):(b e)?b:c)D.k=(a b)?a:b;k=(a c)?a:c;10、有如下程序#i n c I u d e m a i n ()i n i,j,m=1;f o r (i=1;i 0;j一一)i f (i*j)3)b r e a k;m=i*j;)p r i n t f (m=%d n ,m);程序运营后输出成果是【】A.m二 6B.m二20.m=4D.m二511、有如下程序#i n c l u d e (s t d i o.h m a i n ()i n t a=I;b =2;f o r (;a 8;a+)b+=a;
6、a+=2;p r i n t f (%d,%d n ,a,b);)程序运营后输出成果是【】A.9,18B.8,110.7,11D.10,1412、有如下程序,其中k 初值为八进制数#i n c l u d e m a i n ()i n t k =011;p r i n t f (%d n ,k+);程序运营后输出成果是【】A.12B.110.10D.913、下列语句组中,对 的 是【】A.c h a r *s;s=O l y m p i c ;B.c h a r s 7 ;s=01y m p i c ;C.c h a r *s;s=O l y m p i c ;D.c h a r s 7 ;
7、s=O l y m p i c ;14、如下关于r e t u r n 语句论述中对的是【A.一种自定义函数中必要有一条r e t u r n 语句B.一种自定义函数中可以依照不同状况设立多条r et u r n 语句C.定义成v oi d类型函数中可以有带返回值r et u r n 语句D.没 有 r et u r n 语句自定义函数在执行结束时不能返回到调用处1 5、下列选项中,能正拟定义数组语句是【】A.i n t n u m0.;B.i n t n u m;0.i n t N=;i n t n u mN;D.#defi n e Ni n t n u mN;1 6、有如下程序#i n c
8、Iu de v oi d fu n (ch ar *c,i n t d)*c=*c+1;d=d+1;pr i n t f(%c,%c,*c,d);mai n ()ch ar b=,a,a=,A;fu n (&b,a);pr i n t f(n%c,%c n F b,a);程序运营后输出成果是【】A.b,B,b,AB.b,B,B,A0.a,B,B,aD.a,B,a,B1 7、若有定义i n t(*Pt)3;,则下列说法对的是【】A.定义了基类型为i n t 三个指针变量B.定义了基类型为i n t 具备三个元素指针数组ptC.定义了一种名为*pt、具备三个元素整型数组D.定义了一种名为pt 指针
9、变量,它可以指向每行有三个整数元素二维数组1 8、设有定义dou b l e a1 0,*s=a;,如下可以代表数组元素a3是【】A.(*s)3B.*(s+3)C.*s 3D.*s+31 9、有如下程序#i n cIu de(s t di o.h)mai n ()i n t a5=1,2,3,4.5 ,b 5=0,2,1,3,0 ,i,s=0;for (i=0;i 5;i+)s=s+ab i);pr i n t f(%d n ,s);)程序运营后输出成果是【】A.6B.1 0C.1 1D.1 520、有如下程序#i n cl u de mai n ()i n t b 3 3=0,1,2,0,1
10、,2,0,1.2 ,i,j,t=1;for (i=0;i 3;i+)for (j=i j =1;j+)t+=b i b j i;pr i n t f(%dn f t);)程序运营后输出成果是【】A.1B.3C.4D.921、若有如下定义和语句ch ar s 1 1 0=ab cd!,*s 2=n 1 23;pr i n t f(%d%dn ,s t r l en (s 1),s t r l en (s 2);则输出成果是【】A.5 5B.1 0 50.1 0 7D.5 822、有如下程序#i n cIu de#def i n e N 8v o i d fu n (i n t *x,i n t
11、i)*x=*(x+i);mai n ()i n t aN=1,2,3,4,5,6,7,8 ,i;fu n (a,2);for (i=0;i VN/2;i+)pr i n t f(%d,ai);pr i n t f(n );)程序运营后输出成果是【】A.1 31 3B.2234C.3234D.1 23423、有如下程序#i n cIu de i n t f(i n t t ,i n t n);ma i n i n t a4 =1,2,3.4 ,s;s=f(a,4);pr i n t f(%dn ,s);)i n t f(i n t t r i n t n)i f(n 0)r et u r n t
12、 n-1+f(t,n-1);eIs e r et u r n 0;1程序运营后输出成果是【】A.4B.1 0C.1 4D.624、有如下程序#i n cIu de i n t fu n ()s t at i c i n t x=1;x*2;r et u r n x;1mai n ()i n t i,s=1,for (i=1;i =2;i+)s=fu n ();pr i n t f(%d n r s);程序运营后输出成果是【】A.0B.10.4D.825、有如下程序#i n cl u de#def i n e SUB(a)(a)-(a)mai n ()i n t a=2,b=3,c=5,d;d=
13、SUB(a+b)*c;pr i n t f(%d n ,d);)程序运营后输出成果是【】A.0B.-1 2C.-20D.1 026、设有定义:s t r u ct comp I ex i n t r eal,u n r eal;1 dat a1 =1,8 ,dat a2;则如下赋值语句中错误是【】A.dat a2=dat a1;B.dat a2=(2,6);C.dat a2.r eal=dat a1.r eal;D.dat a2.r eaI=dat a1.u n r eaI;27、有如下程序#i n cl u de#i n cIu de s t r u ct A i n t a;ch ar b
14、 1 0;dou b l e c;v oi d f(s t r u ct A t);ma i n ()s t r u ct A a=1 0 0 1,Zh an g Da,1 0 9 8.0 ;f(a);pr i n t f(%d,%s,%6.1 fn ,a.a,a.b,a.c);)v oi d f(s t r u ct A t)t.a=1 0 0 2;s t r cpy (t.b,Ch an g Ron g );t.c=1 20 2.0;程序运营后输出成果是【】A.1 0 0 1,z h an g Da,1 0 9 8.0B.1 0 0 2,ch an g Ron g,1 20 2.00.1
15、0 0 1,eh an g Ron g,1 0 9 8.0D.1 0 0 2,Zh an g Da,1 20 2.028、有如下定义和语句s t r u ct w or k er s i n t n u m;ch ar n ame20;ch ar c;s t r u ct i n t day;i n t mon t h;i n t y ear;s;;s t r u ct w or k er s w,*pw;pw=&w;能给w中y ear成员赋1 9 8 0语 句 是【】A.*pw.y ear =1 9 8 0;B.w.y ear=1 9 8 0;0.pw-y ear=1 9 8 0;D.w.s
16、.y ear=1 9 8 0;29、有如下程序#i n cIu de mai n ()i n t a=2,b二2,c=2;pr i n t f(%dn ,a/b&C.)程序运营后输出成果是【】A.0B.1C.2D.330、有如下程序#i n cIu de mai n ()FILE*fp;ch ar s t r 1 0;fp=fopen (my fi Ie.dat ,w );fpu t s (ab c,fp);fcIos e(fp);fpfopen (my f i Ie.dat a1,a+);fpr i n t f(fp,H%d,28);r ew i n d(fp);fs can f(fp,%s
17、 r s t r);pu t s (s t r);fcIos e(fp);1程序运营后输出成果是【】A.ab cB.28 cC.ab c28D.因类型不一致而出错二、填 空 题(每空2 分,共 30 分)1、设 x为 i n t 型变量,请写出一种关系表达式 用以判断X 同步为3 和 7倍数时,关系表达式值为真。2、有如下程序#i n cl u de mai n ()i n t a=1,b=2,c=3,d=0;i f(a=1)i f(b!=2)i f(c=3)d=1 ;el s e d=2;el s e i f(c!=3)d=3;el s e dM;eIs e d=5;pr i n t f(%
18、dn ,d);)程序运营后输出成果是。3、有如下程序#i n cl u de ma i n ()i n t m,n;s can f(H%d%df&m,&n);w h i l e(m!=n)w h i l e(m n)m=m-n;w h i l e(m 时,输出成果是4、有如下程序#i n cIu de mai n ()i n t i,j,a3=1,2,3,4,5,6,7,8.9);for (i=0;i 3;i+)for (j=i;j 3;j+)pr i n t f ai j);pr i n t f(n );)程序运营后输出成果是 o5、有如下程序#i n cl u de mai n ()i n
19、 t a=1,2,3,4,5.6 ,*k 3,i=0;w h i l e(i 3)k i=&a2*i;pr i n t f(%d,*k i);i+;)程序运营后输出成果是 o6、有如下程序#i n cl u de mai n ()i n t a3 3=1,2,3,4,5 1 6 ,7,8.9 ;i n t b 3=0 ,i;for (i=0;i 3;i+)b i=ai 2+a2i;for (i=0;i 3;i+)pr i n t f(%d,b i);pr i n t f(n );1程序运营后输出成果是 o7、有如下程序#i n cl u de#i n cIu de v oi d fu n (c
20、h ar *s t r)ch ar t emp;i n t n,i;n=s t r l en (s t r);t emp=s t r n-1;for (i=n-1;i 0;i-)s t r i=s t r i-1;s t r 0=t emp;)ma i n ()ch ar s 5 0;s can f(%s r s);fu n (s);pr i n t f(,%s n ,s);)程序运营后输入:2北(千 回车),则输出成果是 O8、如下程序功能是:将值为三位正整数变量x中数值按照个位、十位、百位顺序拆分并输出。请填空。#i n cl u de mai n ()i n t x=25 6;pr i
21、n t f(%d-%d-%dn ,x/1 0%1 0,x/1 0 0);)9、如下程序用以删除字符串所有空格,请填空。#i n cl u de mai n ()ch ar s 1 0 0 =O u r t each er t each C Ian g u ag e!;i n t i,j;for (i=j=O;s i!=,0*;i+)i f(s i !=)s j=s i ;j+;)s j=_pr i n t f(%s n”,s);)1 0 如下程序功能是:借助指针变量找出数组元素中最大值及其元素下标值。请填空。#i n cl u de mai n ()i n t a 1 0,*p,*s;for
22、(p=a;p-a 1 0;p+)s can f(%d,p);for (p=a,s=a;p-a*s )s=;pr i n t f(u i n dex=%dnJ,s-a);三、程序改错题(1 0 分)下列给定程序中,函数pr oc功能是:先从键盘输入一种3 行 3 列矩阵各个元素值,然后输出主对角线元素之积,请修函数pr oc中错误使其能得出对的成果。注意不要修改主函数,不要增删程序行或更改程序构造。#i n cl u de v o i d pr oc()i n t ar r 33,mu I;mu l=1;pr i n t f(pI eas e i n pu t an 3*3 ar r ay:n
23、);for (i=0;i 3;i+)/*第一处错误区*/for (i=0;j 3;j+)s can f(%d,&ar r i i);for(i=0;i 3;i+)/*第二处错误区*/mu l=mu l*ar r i j;pr i n t f(M u l=%dnn,mu I);)v o i d ma i n ()pr oc();四、程序编写(15分)请 补 充m ain函数,该函数实现功能是把一种二维字符数组中最大字符拷贝到新数组s tr中。例如:arr3=“hoih,yufui,xgr,则 str=oyx。v o i d ma i n ()i n t i=0;ch ar *ar r 3=h o
24、i h 1,y u fu i ,x g f ;ch ar *p;ch ar s t r 8;s t r i=0r;pr i n t f(n ew s t r i n g n );pu t s (s t r);)C 语言程序设计(A卷)答案一、选取题1-10:BBDCC DABCA11-20:DDABDADBCC21-3 0:ACBCCBADAC二、填空题(1)(X%3=0)&(X%7=0)(2)4(3)7(4)123 569(5)13 5(6)101418(7)fabcde(8)x%100%10(9)si+1(10)s+1三、程序改错题for(i=0;j3;j+)改为 for(j=0;j3;j+)mu l=muI*arr i j;改为 mul=mul*arri i;四、程序编写#include#include void main()int i=0;char*arr3 =hoih,yufui,xgf;char*p;char s tr 8;P=arr;fo r(i=0;i 3;i+)(s tr i=*p i;while(*p i)(if (str i*p i)s tr i=*p i;p i+;)s tr i=0;pr i n tf(new strin g n );puts(s tr);