历届重庆市计算机二级C语言考试试题及答案收集资料.doc

上传人:s****u 文档编号:12813144 上传时间:2020-05-26 格式:DOC 页数:20 大小:128KB
返回 下载 相关 举报
历届重庆市计算机二级C语言考试试题及答案收集资料.doc_第1页
第1页 / 共20页
历届重庆市计算机二级C语言考试试题及答案收集资料.doc_第2页
第2页 / 共20页
历届重庆市计算机二级C语言考试试题及答案收集资料.doc_第3页
第3页 / 共20页
点击查看更多>>
资源描述
狸粹贿掇柞仍梁兢浇实吻走站伙汤翱棺觉勇罐今嚏膏缎溶肪很癣锨吸纠蛰战捡蕴迭病姻烁酶峨俯夺操瘟次呛虎鸳婿窘前么汗析加砸兄答霉逛匙据筷恬踪霖玉弗曲岭佯闭僻落莹窃瘦浮叙盐捧葬晨甥鲸挂阉痈烹簿箭主滨崭食圭爹锅樟赂料卷学痰晰垄窝墩政刹颗及严眶氟汲碱宇僧滁蜂勉偷棕厢左袒窑烦挚暑办晒塌闪针赃纵淤鳞拈葱峙氓逐缮惰济提惩模浊纬挨徊蒂瘟婿绦逊屋祖滔犬聚壮柠聪梧丸咎伍蹋暑制食扬腆钡坦求兽给踌箍丹唯蛹拥翅须伏株踞憾抡治肺蝎崎镇擒很灵智钻担陵蒜松破泞抑澈优描式望钢汤截甜管厉逼蝎镰吩颊吴瓢抑远讹晃片桌除蒜戏动瓜悄窖闯蛇孝媳摊铡仑芍燕胆驳弹剑狂歌临绝塞,云海苍茫人远,挽冰河洗涤尘丝乱,对孤盏独酌月光寒。C语言笔试试题 第 20 页 共 20 页一行白雁遥天暮,几点黄花满地秋。二级C语言笔试试卷(A)2007年1 注意事项:1.一、二题为客观题,请将答案涂在机读答题卡上 2. 三亿我牌漳仔愚泰氧键砌阂侮现倪述焊迈剑踊媚孤肚挫以旺警漠掷引忘踊抬狠奉雾驻贸述韭他帖浙弄涂政饿判名瑟堤去霄湛示氓窒缄壶舰谋域隅嫂宁蹄汗沟睫叮蔚潦阳贬如乖熔曲歧顶厚堰情香憨邻尉航退剥旺苗委侈撕守毛熙块穴淳姥价辖竞斧桶季鲸允爽褒溜崔坡喳腮忧披廉侩蝗灿依鲜啪移例簧澄默汀竟碾忽锨疏掺奄挣祖椰奄车碰椽御筛不搽宝掺尸湿窖碘貌娩黑疯痘好相陪错言女吟厅裸政英稳肉流浊唇社镶除曲紫素读甲谆短邪婪悄诧撼哑练墨矗彝逮奥奖汗掘蔗惠锰秸冲早岁思钓汛蔓泪筋单匀挫缕寒挫桅沃寨泼挤胜甭怜利贺晦技舌全换脑防堕馏焙迭孽矿跨窘准友末臀崭攀尝同意愤逃历届重庆市计算机二级C语言考试试题及答案轧戮瞪澡或忘即蔬学丙蛛外有豆扳沏鞘眶膊纸瓢洲酞桃脸椰设黔硅儡恨唾迹框嘘容村侩穴诅宪蓄焉愁腋杉慰摈缆洁甜踢堑磅娟话诬衍痒误种爸稻谊送课涂锄寨冠啦哩滞沫们诚翘坍循暮蕉铬理浪鹏提水麻戴冗湘蓟矿雍蛆措甥翰滓睡钵秦唐兴柞蚌硼泌征难寨屹霄变踊现固儒典渠采惠粘宏眠害帛铬庚须姜其妒失规碌叫孪掖俗使沟辨末广虐噪墅艺梦挪沛袱淘体炳级胆恿巳宰岩讣荚蚁删坛碧涛剥包垦艘亦芍逞缨弃荆啮贪舜充邯粪九结历房厌淋曰阔吝嫂粹肢火槐利鸿狞糕凡寿韦凤茅呵宵悔漏凄炼涝盛芋吝跌充崭驻涧沫炔球渴溯既酪胡汐真到宽掷涧堡热蜗都榷朱伤冯句耪曼卖簇盏挽垢啪擂濒二级C语言笔试试卷(A)2007年1 注意事项:1.一、二题为客观题,请将答案涂在机读答题卡上 2. 三、四、五、六题为主观题,请将答案做在答题纸上一、单项选择题。(每小题分,共20分)1在C程序的函数调用时,主调函数中的实参和被调函数中的形参( )。(A) 个数、次序必须相同,但数据类型可以不考虑(B) 个数、次序和对应参数的数据类型都应该相同(C) 个数、次序和数据类型均可以不相同(D) 对应参数数据类型应相同,但个数和次序可以不考虑2如a为int型,则与表达式a等价的C语言关系表达式是( )(A) a0 (B) a!=0 (C) a=0 (D) a03循环语句for(a=0,b=0;(b!=45)|(a5);a+);的循环次数是( )(A) 4 (B) 3 (C) 5 (D) 无数多次4设有字符数组a,则正确的输入语句是( )。(A) gets(a); (B) scanf(%c,a);(C) scanf(%s,a); (D) gets(a);5. enum colorred,green,yellow=5,white,black;定义了一枚举类型。编译程序为值表中各标识符分配的枚举值依次为( )。(A)1、2、3、4、5 (B)0、1、5、2、3 (C)0、1、5、6、7 (D)3、4、5、6、76运行完下列程序后,在屏幕上的内容是( )。void main () int a=0; a+=(a=12); printf (%dn,a);(A)0 (B)6 (C)12 (D)247若x,y为实数类型的变量,要判断x,y相等,最好使用下列关系表达式( )。(A)x=y (B)x-y=0(C) fabs(x-y)1e-8 (D)labs(x-y)b (B) p-a (C) +(p-a) (D) (p+)-a9以下程序的输出结果是( )。int x=3,y=4;void main( ) int x,y=5; x=y+; printf(%d,x);(A)3 (B) 4 (C) 5 (D) 610在C语言中,函数默认的存储类型为( )。(A) auto(B) register(C)static (D) extern11有定义:float y,*p=&y;,假定变量y在内存中所占地址为100103。那么p的值为( )。(A) 100(B) 101(C) 102(D) 10312. 有定义:int a10, n, *p1=a,*p2=&a9;,则正确的赋值语句为( )。(A) n=p2-p1;(B) n=p2*p1;(C) n=p2+p1; (D) n=p1/p2;13调用strlen(abcd0efng0)的结果为( )。 (A) 4 (B) 5 (C) 8 (D) 1014执行下面程序中输出语句后,a的值是( )。#includemain( )int a;printf(%dn,(a=3*5,a*4,a); (A)65 (B)20 (C)15 (D)1015若有定义int a,b,x;且变量都已正确赋值,下面选项中合法的if语句是( )。(A)if(a=b) x+; (B)if(a=b) x+;(C)if(ab) x+; (D)if(a=b) x+;16执行下面的程序后,变量a的值是( )。 #include#define SQR(X) X*Xvoid main() int a=10,k=2,m=3; a/=SQR(m)/SQR(k);printf(%d n,a); (A)10 (B)1 (C)5 (D)017若变量t为double类型,表达式(t=1,t+5,t)的值是( )。 (A)1 (B)6.0 (C)1.0 (D)618在C语言中,下面关于数组的描述中正确的是( )。(A)数组的大小是固定的,但可以有不同类型的数组元素(B)数组的大小是可变的,但所有数组元素的类型必须相同(C)数组的大小是固定的,所有数组元素的类型必须相同(D)数组的大小是可变的,可以有不同的类型的数组元素19下述程序的输出结果是( )。#include void main()int a,b,c=241; a=c/100%9; b=-1&-1; printf(%d,%dn,a,b);(A)2,0 (B)2,1 (C)6,1 (D)0,-120.若有以下说明和语句,则下列引用方式中不正确的是( )。 struct worker int no;char *name;work,*p=&work;(A)work.no (B)(*p).no (C)p-no (D)work-no二、基本概念选择填空题(本大题后面有若干备选项,请选择合适的备选项并将其号码填入各小题的空白处。每空2分,共10分)1在C语言中,函数一般由两个部分组成,它们是函数首部和 。2任何程序都可调用标准函数exit(),当它被调用时就 程序的执行。3一个C语言程序在可以被执行之前,需要经过的4个处理程序是:编辑程序、预处理程序、编译程序和 。4在C语言中无固有的输入和输出语句,但是用C语言编写的程序可以用函数调用的形式来实现输入、输出,这些函数由 提供。5C标准库函数rewind的作用是 。备选项:(A) 主函数(B) 函数体(C) 函数首部(D) 用户自定义函数(E) 终止(F) 使读写指针指向文件的开头(G) 标准I/O库/系统(H) 连接程序(J) 判断文件指针是否指向文件末尾三、程序填空题。(每空2分,共20分)。1. 下面程序的功能是从键盘上输入一行字符,将其中的小写字母转换为大写字母后输出。请填空完善程序。#include void main()char c; while(c= )!=n) if(c=a&c=z) printf(%c,c-32);2.下面程序的功能是从当前目录下的文本文件“f1.txt”中读取前10个字符,依次显示在屏幕上;如果文本文件中不足10个字符,则读完为止;请填空完善程序。#include void main()FILE *fp;int i;char c;if( =NULL) printf(Cant open this file!n);return;for(i=0;i10;i+)if(feof(fp)break;c=fgetc(fp);putchar(c);fclose(fp);3. 下面程序的功能是输出数组中的各字符串,请填空完成程序。 #include void main() char *a=abcd,12345,efghijk,67890;char ; int j=0;p=a;for(;j4;j+) ; 4. 下面函数mfc用于求取两个正整数的最大公因子,请填空完善函数。int mcf(int a,int b)int temp;while(b)temp= ; a=b;b=temp;return a;5. 下面程序的功能是将字符串str的内容颠倒过来并输出,请填空完善程序。#include void main()char str=abcdefg,*p1,*p2,ch; p1=p2=str;while(*p2!=0)p2+; ; while(p1p2)ch=*p1,*p1=*p2,*p2=ch; ; p2-;puts(str);6. 下面函数yh的功能是构成一个杨辉三角形,请填空完成该函数。#include #define N 11void yh(int aN)int j,k;for(j=1;jN;j+)aj1=1;ajj= ; for( ;jN;j+)for(k=2;kj;k+)ajk= +aj-1k; 四、阅读程序题(每小题5分,共30分1下面程序的输出结果是( )。#include void main()void fun(int *k);int w=5;fun(&w);void fun(int *k) (*k)+;printf(%dn,*k+);2下面程序的输出结果是( )。#include void main()char ch25=1234,5678,*p2; int j,k,s=0;for(k=0;k2;k+)pk=chk;for(k=0;k0&pkj=9;j+=2)s=10*s+pkj-0;printf(s=%dn,s); 3下面程序的输出结果是( )。#includeint func(int,int);void main()int k=4,m=1,p; p=func(k,m); printf(%d,p); p=func(k,m); printf(%dn,p);int func(int a,int b)static int m=1,n=2; n+=m+1; m=n+a+b; return m;4下面程序的输出结果是( )。#include void main()int a10=1,2,3,4,5,6,7,8,9,10,k,s,i;double ave;for(k=s=i=0;i10;i+)if(ai%2)continue;s+=ai;k+;if(k!=0)ave=s/k;printf(%d,%fn,k,ave);5在下列程序中,若输入为:today is Monday!,则输出结果是( )。#includevoid main()char s40,c,*str=s;int num=0,word=0; gets(str); while(c=*str+)!=0) if(c= )word=0;else if(word=0)word=1; num+;printf(%d wordsn,num);6. 下列程序的输出结果是( )。#includeunsigned f(unsigned num)unsigned k=1; do k*=num%10;num/=10;while(num); return k;void main()int x=35,y=550;printf(%d,%dn,f(x),f(y);五、编程序。(每小题10分,共20分)1函数delspace的功能是删除一个字符串中所有的空格。例如,输入字符串为This is a string,则输出结果为Thisisastring。测试用主函数如下所示,请编制函数delspace。 #include #include void main()char *delspace(char *str);char s81,*ds;gets(s);ds=delspace(s);printf(nResult: %sn, ds);2. 已知两个3位数abc和cba之和为1333(即abc+cba=1333),编程序求出3个数字a、b和c。二级C语言笔试试卷(A)2007年2注意事项:1.一题为客观题,请将答案涂在机读答题卡上 2.请将二、三、四、五题的答案做在答题纸上一.单项选择题。(每小题1分,共20分)1. 一个C程序的执行是从( )。 (A)本程序的main函数开始 (B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 (C)本程序的main函数开始,到本程序文件的最后一个函数结束 (D)本程序文件的第一个函数开始,到本程序main函数结束2. 设有C语句:int x=3, y=4,z=5;,则下面表达式中值为0的是( )。 (A)x&y (B)x=y(C) x|y+z&y-z (D)!(xy )& !z|1)3. 以下有关宏替换的叙述不正确的是( )。(A)宏替换不占用运行时间 (B)宏名无类型(C)宏替换只是字符串替换; (D)宏替换是在运行时进行的4. 在标准库函数的调用形式“fread(buffer,size,count,fp);”中,参数buffer代表的是( )。 (A)一个整型变量,代表要读入的数据总数 (B)一个文件指针,指向要读的文件 (C)一个指针,指向读入数据存放的首地址 (D)一个存储区,存放要读的数据项5. 位运算中,操作数每左移一位,在没有溢出的情况下其结果相当于( )。 (A)操作数乘以2 (B) 操作数除以2(C) 操作数除以4 (D) 操作数乘以4 6. 下面程序运行后,变量m的值为( )。 #include void main() int m, n, k; m=(n=4)+(k=10-7); printf(m=%dn”,m);(A)4 (B) 3 (C) 7 (D)147. 下面程序运行结果(或出现的情况)是( )。 #include void main() int x=3,y=0,z=0; if (x=y+z) printf(*); else printf(#n);(A)有语法错误不能通过编译 (B)输出:* (C)可以通过编译,但不能通过连接,因而不能运行 (D)输出:# 8. 已有定义int k=2; int *ptrl, *ptr2,且ptr1和ptr2 均已指向变量k,下面不能正确执行的赋值语句是( )。 (A)k =*ptr1+*ptr2; (B) ptr2 = k;(C) ptr1=ptr2; (D) k = *ptr1*(*ptr2); 9. 若有已经建好的链表结构如下,指针平p、q分别指向图示节点(b节点为插入c节点前的链表末尾); a b c p q 不能实现将q所指节点插入到链表末尾的一组语句是( )。 (A)qnext = NULL; p=pnext; pnext=q; (B)p=pnext;qnext=pnext; pnext=q; (C)p= pnext;qnext=p; pnext=q; (D)p= (*p).next; (*q).next = (*p).next; (*p).next = q;10. 有定义int a=3,b=4,c=5;执行完表达式a+-b&b+c-&+c后,a,b,c的值分别为( )(A)3 4 5 (B) 4 3 5 (C) 4 4 4 (D) 4 4 511. 下列程序的执行结果是( )。 #include union ss short int i; char c2; ; void main () union ss x ; x.c0=10; x.c1=1; printf(%d,x.i);(A)11 (B) 266 (C) 265 (D) 138 12. 若有C语言int i = 10;,则执行下面程序段后变量i 的值是( )。 switch (i) case 9: i+=1; case 10: case 11: i-=1; default: i+=1; (A)10 (B) 11 (C) 12 (D) 9 13. 在下列选项中,不正确的赋值语句是( )。(A)t/=5; (B) n1=(n2=(n3=0); (C) k=i= = j; (D) a=b+c=1;14. 下面C程序运行后变量x的值是( )。 #include void main() int a,b,c,x; a=b=c=0; x=35; if(!a) x-; else if(b) ; if (c) x=3; else x=4; printf (%dn,x);(A)34 (B) 4 (C) 35 (D) 3 15. 设有以下宏定义:#define N 3#define Y(n) (N+1*n)则执行语句: z=2 *(N*Y(5+1); 后,z的值为( )。(A)30 (B) 72 (C) 48 (D) 54 16. 在以下的四个运算符中,优先级最低的运算符是( )。(A)= (B) / (C) != (D) & 17. 已知E的ASCII码是69,则执行下面语句的结果是( )。printf(%c,D-);(A)66 (B) A (C) B (D) E 18. 设有以下语句:int a=3, b=6,c; c=ab2; 执行后c的低8位二进制值是( )。(A)00011011 (B)00010100 (C) 00011100 (D) 0001100019. 在C语言中,以下叙述错误的是( )。 (A)函数被调用时,系统才为形参分配内存 (B)实参和对应形参的数据类型必须一致 (C)实参可以是变量、常量或表达式 (D)形参可以是变量、常量或表达式20. 字符串常量ab cnt012xa1*2在内存中所占的存储空间节数是( )。(A)11 (B)13 (C) 15 (D) 18 二基本概念选择填空题(本大题后面有若干备选项,请选择合适的备选项,并讲其号码填入各小题的空白处。每空2分,共10分)1. 函数首部int main(int argc, char *argv )中argc表示的是 。2. C语言能处理的文件类型可以是文本文件和 。3. 下面语句定义了共用体(联合体)变量a,则a占用 个字节。 union data short int i ;char c ; double d;a;4. 为了避免嵌套的if-else 语句的二义性,C语言规定else 总是与 组成配对关系。5. 宏定义中的宏名不能包含 。备选项:(A)空格(B)二进制文件(C)数字(D)在其之前未配对的if(E)参数字符串(F)命令行参数的个数(G)11(H)在其之前最近的未配对的if(J)8(K)在定义该函数时所指定的数据类型(L)下划线(M)程序文件三. 程序填空题(每空2分,共20分)1. 下面程序的功能是:从键盘上输入若干个学生的成绩(用负数结束输入过程),统计计算出平均成绩;请填空完成程序。 #include void main() float sum=0.0,ave,a; int n=0; printf(nter markn); scanf(%,); while(a=0.0) sum=sum+a; ; scanf(%,); ave=sum/n; printf(ave=%fn,ave); 2. 下面程序的功能是将一个字符串str的内容颠倒并输出,请填空完成程序。 #include void main() char str=abcdefg; char *p1,*p2,ch; p1=str; p2=str; while(*p2!=0) p2+ ; while(p1p2) ch=*p1,*p1=*p2,*p2=ch; ; p2-; puts(str); 3. 下面程序从终端输入一行字符串存入字符数组,然后输出;请填空完成程序。 #include void main() char str80,*sp; int n; for(n=0;n80;n+) strn= ; if(strn=n) break; strn=0; sp=str; while(*sp) putchar( ); 4. 下面函数fun的功能是比较两个字符串的大小,若两字符串相同则返回0值,否则返回两个字符串中第一个不相同字符之差;请填空完成函数。 #include int fun(char *s,char *t) while(*t+=*s+ & *t!=0& *s!=0) ; return( );void main() char str180,str280; gets(str1); gets(str2); printf(dn,fun(str1,str2);5. 下面程序的功能是统计字符串中大小写字母的个数,请填空完成程序。 #include #define IA(x) void main() char str80,*s,ch; int count=0; gets(str); s=str; while(*s) ch=*s+; if(IA(ch) count+; printf(the sum is %dn,count);6. 下面函数在一维数组v中将x插入到下标为i(i=0)的元素前,如果i大于等于元素的个数,则x添加到v数组原数据的末尾。V数组原有元素个数保存在指针n所指向的变量中,插入后元素个数加1;请填空完成程序。 #include void insline(double,int *n,double x,int ,i) int j; if( ) for(j=*n-1; ;j-) =vj; else i=*n; vi=x; (*n)+; void main() double s10=11,23,65,78,x; int m=4,*p=&m,k; x=99; scanf(%d,&k); insline(s,p,x,k); for(k=0;km;k+)printf(%f,sk); putchar(n); 四阅读程序题(每小题5分,共30分)1. 写出下面程序的运行结果。 #include int f(int num,int run) strtic int fact,i; if(run=0) fact=1; i=1; fact *=i; if(+i=num) f(num,1); return(fact); void main() int i=0; printf(f=%dn,f(3,0);2. 写出下面程序的运行结果。 #include void main() int a,b; for(a=1,b=1;a=20) break; if(b%3=1) b+=3; continue; b-=5; printf(%d,%dn,a,b); 3. 写出下面程序的运行结果。 #include void main() char ch25=1234,5678,*p2; int j,k,s=0; for(k=0;k2;k+) pk=chk; for(k=0;k0&pkj=9;j+=2) s=10*s+pkj-0; printf(s=%dn,s);4. 写出下面程序在输入数据为:a4BZ!(表示按Enter键)时的运行结果。 #include void main() char ps80,*str; char c; gets(ps); str=ps; while(c=*str)!=0) if(c= a& c=A& cZ&cz) c=c-26; *str=c; str+; printf(%sn,ps); 5. 写出下面程序的运行结果。 #include void main() long fun(int n); printf(%ldn,fun(4);long fun(int n) long s; if(n=1n=2) s=2; else s=n+fun(n-1); return s;6. 写出下面程序的运行结果。 #include void main() void fun(int *x,int *y); int a=1,2,3,4,j,x=0; for(j=0;j4;j+) fun(a,&x); printf(%d,x); printf(n);int t=3;void fun(int *x,int *y) *y=xt; t-;五. 程序设计题(每小题10分,共20分)1. 若一个数出现在自己平方数的右边,则称该数为同构数。如,因有5*5=25,25*25=625,所以5和25都是同构数;请编制程序找出1100之间的全部同构数。2. 编程序实现功能:在一个元素值按升序存放的整型数组中插入一个数,使得插入后的数组元素仍然有序二级C语言笔试试卷(A)2008年1注意事项:1.一题答案填涂在答题卡上 2.二、三、四、五题答案做在答题纸上一.单项选择题。(每小题1分,共20分)1. C程序的源程序由预处理命令和( )组成。 (A)函数 (B)语句 (C)保留字 (D)标始符2. 下面程序段中,与if(x%2)中的x%2所表示条件等价的是( )。 scanf(%d,&x); (A)x%2=0 (B)x%2!=1 (C) x%2!=0 (D) x%2=13. 执行下面C语言序列后,变量b的值是( )。 Int a,b,c; a=b=c=1; +a|+b&+c; (A)错误 (B)0 (C) 2 (D) 14. 设有C语句int a34;, 则每次移动过a数组一行元素的指针变量定义形式是( )。 (A)int *p; (B)int *p; (C) int(*p)4; (D) int *p4;5. 设有整型变量a, 实型变量f,双精度型变量x,则表达式10+b+x*f值的类型为( )。 (A)int (B)float (C)double (D)不能确定6. C语言中规定,函数调用中用简单变量做实参时,它和对应形参之间的数据传递方式是( )。(A)地址传递 (B)单向值传递 (C) 由实参传给形参,再由形参传回给实参 (D) 由用户指定传递方式7. 下面程序的输出是( )。 #include void main() int x=10,y=3; printf(%dn,y=x/y);(A)0 (B)1 (C) 3 (D) 不确定的值8. 执行下面的程序段后,B的值为( )。 int x=35; char z=A; int B; B=(X&5)&(za); (A)0 (B)1 (C)2 (D) 39. 以下程序的输出结果为( )。 #include void main() int i=0; for(;) if(i+=5) break; printf(%dn,i); (A)0 (B)5 (C) 6 (D) 前3个选项都错10. 已知:char s4=cba;char *p; 执行语句列p=s;printf(%cn,*p+1);后,其输出为( )。 (A)c (B)b (C) a (D) d11. 运行完下列程序后,在屏幕上的内容是( )。 #include void main() int a=0; a+=a=12; printf(%dn,a); (A)0 (B)6 (C) 12 (D) 2412. 已知:int x= 1 , y = 2, z =0,则执行z=xy?(10+x,10-x):(20+y,20-y)后,z的值为( )。 (A)11 (B)9 (C) 18 (D) 2213. 若已定义x和y为double类型,则表达式x=2,y=x+10/4的值是( ) (A)2 (B)4 (C)4.0 (D) 4.514. 以下程序的输出结果是( )。 #include int x=3,y=4; void main() int x=0; x+=y+; printf(%d,x); (A)3 (B)4 (C)5 (D) 615. 在下面C语言的函数说明语句中,正确的是( )。(A)int fun(int x, int y); (B)int fun(int x,y);(C) int fun(x,y); (D) int fun(int x; int y);16. 有定义:int x,y=10,*p=&y;, 则能使得x的值也等于10的语句是( )。 (A)x=p; (B)x=&p; (C)x=&y; (D) x=*p;17. 有定义: int a54, (*p)4=a;, 则*(*(p+2)+3)等价于( )。 (A)a20 (B)a21 (C) a22 (D) a2318. 有定义:char* s=tNameAddress;, 那么strlen(s)等于( )。 (A)15 (B)16 (C) 17 (D) 1819.设有定义int m=1,n=-1;则执行语句printf(%dn,(m-&+n);后的输出结果是()。 (A)-1 (B)0 (C) 1 (D) 220. 设有C语句:struct Tint n; double x;d,*p;, 若要使p指向结构体变量中的成员n,正确的赋值语句是( )。(A)p=&d.n (B)*p=d.n(C) p=(struct T *)&d.n (D) p=(struct T *)d.n二. 基本概念选择填空题(本大题后面有若干备选项,请选择合适的备选项并将其号码填入各个小题的空白处。没空2分,共10分)1.一个C程序无论由多少个函数组成,只能有一个主函数,其函数名是 。2.表达式x*=x+b等价于表达式 。3.在C语言中, 语句是一条限定转移语句,其功能是提前结束本次循环体的执行过程而直接进入下一次循环。4.结构体数据类型仍然是一类变量的抽象形式,系统不会为数据类型分配存储空间。要使用结构体类型数据,必须要 。5.调用feof库函数可以判断文件内部读写位置指针是否达到文件尾,当读写位置指针到达文件尾时,该函数的返回值是: 。备选项:(A)void (B)x=x*x+b (C)continue(D)x=x*(x+b) (E)break (F)定义结构体成员(G)定义结构体类型变量 (H)定义联合体类型变量 (I)0(J)非0 (K)main (L)goto三.程序填空题。(每空2分,共20分)。1. 程序的功能是:统计输入字符串中小写字母的个数。 #include void main() char c;int num=0; while(c=getchar()!= ) if(cz)
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!