高级语言程序设计自考题-_第1页
高级语言程序设计自考题-_第2页
高级语言程序设计自考题-_第3页
高级语言程序设计自考题-_第4页
高级语言程序设计自考题-_第5页
已阅读5页,还剩7页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

高级语言程序设计自考题-6一、单项选择题(总题八虻数.15,分数:30.)设inta=1,b=2,c=4;经过表达式(c=a!=b)&&(a==b)&&(c=b)运算后,a、b和c的值分别是()A1,2,0B.1,2,1C・1,2,2D・1,2,3(分数:2.)A./C.D.解析:[解析]因a==b是不成立的,c=b不被运算,C所获得的值足表达式"a!=b"的逻辑值关于函数fseek(a,b,c)的说法错误的是()A.参数a是文件型指针,指向所需要的文件B・参数b是int型,表示从开始位置的偏移字节数C・参数c是int型,表示定位的起始位置D.函数返回值是int型,定位正确返回0;定位错误返回非0(分数:2.)A./C.D.解析:[解析]参数b是长整型,表示从开始位置的偏移字节数设intx=6,执行语句x+=x-=x*x;后,x的值是()A-60B・0C・6D・36(分数:2.)/B.C.D.解析:调用函数时,若实参是一个数组名,则向函数对应的形参传送的是()A数据的长度B.数组的首地址C.数组的第一个元素的值D.整个数据元素的值(分数:2.)A./C.D.解析:[解析]数组名通常表示的是数组的首地址,故答案选B。5.若x、y均是int型变量,则执行以下语句后的结果是()for(x=1;x<5;x+=2)for(y=1;y<5;y++)printf("%2d"x*y);if(y==4)printf("/n")A・123436912B・23453456C・1234569D・2343696912(分数:2.)/B.C.D.解析:解析]此题为一个简单的for循环嵌套。外层步进值为2,循环中断条什是x<5;内层步进值为1,循环中断条件是y<5。语句,,if(y==4)printf(,,/n,,),,的用意是当y=4时回车换行。可以作为自定义标识符的是()A-2xB・breakC・m-nD・m_n(分数:2.)A.B.C./解析:[解析]主要考查的知识点为自定义标识符。[要点透析]A项以数字开头,B项为保留字,C项含有非字母、数字、下划线的字符,只有D项是正确的。下列关于[函else的配对规则描述正确的是()A.else总是和前面最远的[酒己对B・else总是和前面最近的i配对C・if和else的配对按程序缩进格式进行D.else可以和前面所有的[酒己对(分数:2.)A./C.D.解析:8.若定义了intm,n=0,*p1=&m;,则与m=n等价的语句是()A-m=*p1B-*p1=&*nC-*p1=*&nD・*&p1=&*n(分数:2.)A.B./D.解析:9.结构型变量占用内存的字节数是()A.各成员占用内存字节数之和B.第一个成员占用的内存字节数C.占用内存最大成员所需的字节数D.最后一个成员占用的内存字节数(分数:2.)/B.C.D.解析:[解析]本题主要考查的知识点为结构型变量占用内存的字节数。[要点透析]在给结构型变量分配内存时,分配的内存字节数等于该结构型所有成员占用的字节数之和字符串"28Olympic"在存储单元中所占用的字节数是()A・9B・10C・11D・13(分数:2.)A.B.C./解析:使用递归函数计算n!(n=0,1,2,3,)的是()A-fac(intn)intif=1;if(n==0)return;1elsefor(i=;1i<=n;i++)f*=ireturnfB-fac(intn)if(n==0||n==1)return1;elsereturnn*fac(n-1);C-fac(intn)inti=1f=1;if(n==0)return;1elsewhile<i=n)f*=i++;returnfD-fac(intn)inti=1f=1;if(n==0)return;1elsedof*=iwhile(i++<n);returnf分数:2.)A./C.D.解析:[解析]A、C、D项分别使用for、while、dowhile循环来计算n!(n=0,1,2,)的值。3,下列关于C语言的描述正确的是()A・C语言是面向硬件的高级语言B・C语言是面一种面向对象的程序设计语言C・C语言是一种结构化程序设计语言D・C语言的前身是汇编语言(分数:2.)A.B./D.解析:下列程序段中,不构成死循环的是()A・intk=1;do一k;while(k>=1)B・intk=1;while(1)k=k%1+1;if(它1)break;C-for(;;);D-intk=1while(k);一k、(分数:2.)/B.C.D.解析:若内部变量在离开了定义所在的函数或复合语句后,仍在生存期内。则该变量是().Aauto变量B・register^#C・局部变量D.stati变量(分数:2.)A.B.C./解析:sizeof(float是()A・函数调用B・int型表达式C・float型表达式D.非法表达式(分数:2.)A./C.D.解析:[解析]sizeoffloat的用意是求float型数据的长度。sizeof()是一个运算符,得到的值是整型数据,故它是一个int型表达式。二、填空题(总题数:10,分数:20.)设structstudentcharname[20];charsex;stu;语句printf"%d/nH,sizeof(stu));的输出结果是。(分数:2.)填空项1:(正确答案:21)解析:17.C语言中fputc1函数对文本文件的存取是以2为单位的。(分数:2.)(正确答案:字填空项1:符)解析:18.静态型外部变量的作用域是(分数:2.)填空项1:(正确答案:本文件)解析:19.设intab=5;,则执行表达式a=b-2==3后a的值是1(分数:2.)填空项1:(正确答案:1)解析:20.执行语句for(i=10;i>0;i--;后,变量i的值是1(分数:2.)填空项1:(正确答案:0)解析:21.若未指定局部变量的存储类型,则其隐含的存储类型是1(分数:2.)填空项1:(正确答案:auto型或自动型)解析:22.执行语句"a=5+(c=6);"后,变量a、c的值依次为(分数:2.)填空项1:(正确答案:116)解析:23.以下程序运行后输出的结果是。main()inta=,b;for(b=1;b<=10;b++)(if(a>=8)break;if(a%2==1)a+=5;continue;a-=3:printf"%d/n",b);(分数:2.)填空项1:(正确答案:4)解析:[解析]main(){inta=1?b;for(b=1;b<=10;b++),/*b从1到10,步进位为1的循环*/{ifa>=8)break;/*当a>=8时循环被终止*/ifa%2==1){a+=5;continue;}/*如a为奇数,则执行"{a+=5;continue;}"*/a-=3/*如果上述两条件a都不满足则执行本行*/}printf"%d/n",b);}24.值传递方式和地址传递方式都是在形参和实参之间传递数据,其区别在于值传递方式所传递的是1(分数:2.)填空项1:(正确答案:参数值)解析:25.若定义函数char*fun1,则该函数的返回值类型是2(分数:2.)填空项1:(正确答案:字符型指针或字符型地址)解析:三、程序分析题(总题数:4,分数:17.)26.main()inta=1,b=2,c=3;if(£=c)if(b==c)printf(Ha=%d/n",a);elseprintf(Hb=%d/n",b);printf("c=%d/n"c);分数:4.)正确答案:(b=2c=3)解析27.#includelongfun(intn)longsif(i<=2)s=2;elses=n+fun(nT)printf(H%d/t",s);returnsmain()fun(5);printfF/K1')分数:4.分数:4.)正确答案:(25914)解析~~[解析!―

#include<stdio・h>longfun(intn)(lon;解析~~[解析!―

#include<stdio・h>longfun(intn)(lon;gsif(i<=2)s=2;/*程序存n<2时是出条件,不再递归,否则一直执行s=5+f(n-1)的操作*/elses=n+fun(n-1gprintf("%d/1"s);returns}main()(fun(5);printf("/n")}28. /*设从键盘输入:420<回车>*/#include<stdio・ h>main()charc;

while((c=getchar())!='/n')switch(C-'0')casecasecasecaseputchar(c+2)casecasecaseputchar(c+2);putchar(c+3);break;putchar(c+4); default: putchar(c+1);break;printf("/n")分数:5.)正确答案:(5523)解析:29.#include<stdio・h>voidmain()in,ij,a[4][4;for(i=0i<4;i++)TOC\o"1-5"\h\zfor(j=;j<4;j++)a[i][j]=1+i;--;for(i=0i<4;i++)for(j=0j<4;j++)if(a[i]>[j]))printf("%3d?"a[i][j])printf;("/n")分数:4.)正确答案:(1111222333444)解析:[解析]#includgstdio・h>voidmain()(int,ij,a[4][4;for(i=;i<4;i++)/限定循环次数为4次*/for(j=0j<4;j++)a[i][j]=1+i;--;/*限定循环次数为4次*/for(i=0i<4:i++)(for(j=0j<4;j++)if(a[i]>[j])printf("%3d"a[i][j]);/*设置输出格式为3个字符的宽度,不足的宽度以空格补齐*/printf("n"))}四、程序填充题(总题数:3,分数:18.)下面程序段的功能是将形参x的值转换成二进制数,所得二进制数的每一位数放在一维数组中返回,二进制数的最低位放在下标为0的元素中,其他以此类推。#includemain(intxintb[])intk=0r,i;scanf("%d",x);dor=x%2;b[]=r;/*第一空*/x/=2;while(;/*第二空*/for(_____;i>=0;i--)第三空*/printf("%d"b[i])(分数:6.)填空项1:(正确答案:k++/*第一空。将余数r赋值给数组元素b[k]并使k自加1,为下一次循环做准备*/x/*第二空。当x=0时则终止循环。当算术运算获得的值小于1时,变量将被赋于0值*/i=k-1/第三空。在循环体内最高位获值后,k又自加1一次;故输出时需将k的值减1以使第一次输出能正确地输出最高位的值*/)解析:下列函数的主要功能是在w指向的数组的前*n个数据中插入x,要求w指向的数组的前*n个数据已按由小到大顺序存放。插入x后,该数组中的数据仍按照从小到大的顺序排列,同时将*n修改为插入x后长度。voidf(char*wcharx,int*n)intip=0;w[*n]=x;while(x>w[p]);for(i=*ni>p;i一)w[i]=;_++*n:(分数:6.)填空项1:(正确答案:p++w[i-1]w[p]=x)解析:32.从键盘输入一串字符("#"作为结束标志),将其写入文本文件闩1。山中保存。#inc1ude<stdio.P#inc1ude<stdlih.hmain()charch;FILE*fp:if((fp=fopen("file.det",""))==nULl一空*/printf("Cannotopenfile/n");exit(0;ch=getchar();whil(ch!'#')fputc(,fp)第一空*/ch=getchar();fclose();/*第二空*/(分数:6.)填空项1:(正确答案:wchfp)解析:五、程序设计题(总题数:2,分数:16.)33.某幼儿园入园分班规定如下:状某个孩子的年龄后,输出其分班情

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论