版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、自考高级语言程序设计模拟题 第一部分 选择题(20分)一、单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1组成C语言程序的是( )A.过程 B.函数 C.子程序 D.主程序和子程序2. 下列表达式的值为0的是 ()A. 35B. 3/5.0C. 3/5D. 353C语言中定义某个内部变量时,如果省略了存储类型符,则系统将默认该变量是( )A.自动型 B.寄存器型 C.静态型 D.外部参照型4. 设int a = 3;则表达式a1的运算结果和a的值分别是 ()A. 0和2 B. 0和3
2、 C. 1和2 D. 1和35自动型变量分配在( )A.内存的数据区中 B.CPU的通用寄存器中C.内存的程序区中 D.内存的堆栈区中6. 下列保留字中用于构成循环结构的是 ()A. ifB. whileC. switchD. default7对do-whie语言错误的说法是( )A.可构成多重循环结构 B.循环次数不可能为0C.循环次数可能为0D.先执行后判断8.设 char x =a;则printf(x = c, y = c n,x,97);的输出是()A. x = a,y = 97B. x = 97,y = aC. x = 97,y = 97D. x = a,y = a9设char st
3、r110=ABCDE,str210=XYZ;则执行语句: printf(%d,strlen(strcpy(str1,str2);后的输出是( )A.3B.5C.8D.910. 执行下列程序int a33=1,2,3;int b33=1,2,3;main()printf(d n,a10 + b00);后输出的结果是 () A. 0 B. 1 C. 2 D. 311语句int (*p)( );的含义是( )A.p是一个指向函数的指针变量,该函数的返回值是一个整型数据B.p是指针变量,指向一个整型数据C.p是一个指向一维数据的指针变量D.p是指针函数12. 设int x = 1,2,3,4,5,6,
4、* p = x;则值为3的表达式是 ()A. p + = 2, * + + pB. p + = 2, * p + +C. p + = 3, * pD. p + = 2, + + * p13对于程序段 float f1(int a)int b;main( )int m,n;m=f1(n);char f2(int x,int y)int a;变量m,n的作用范围是( )A.整个程序段B.main函数C.main函数和f2函数D.mian函数和f1函数14. 执行下列程序int a = 3, b = 4;void fun(int x1, int x2)printf(d, d n, x1 + x2,
5、b);main()int a = 5, b = 6;fun(a, b);后输出的结果是 () A. 3,4 B. 11,1 C. 11,4 D. 11,615在下列运算符中,优先级最低的是( )A.!B.C.( )D. 16. 设有定义语句:enum t1 a1, a2 = 7, a3, a4 = 15time;则枚举常量a2和a3的值分别为 () A. 1和2 B. 2和3 C. 7和2 D. 7和817对于文件操作方式rb+,准确的说法是( )A.可读写文本文件B.只读二进制文件C.只读文本文件D.可读写二进制文件18. 在文件使用方式中,字符串rb表示 ()A. 打开一个已存在的二进制文
6、件,只能读取数据B. 打开一个文本文件,只能写入数据C. 打开一个已存在的文本文件,只能读取数据D. 打开一个二进制文件,只能写入数据19设int a=1,b=2,c=4;经过表达式(c=a!=b)&(a= =b)&(c=b)运算后,a、b和c的值分别是( )A.1,2,0B.1,2,1C.1,2,2D.1,2,320. main()函数可以带两个形参,一般分为argc和argv,其中argv可以定义为()A. int argv;B. char * argv;C. char argv;D. char * argv;第二部分 非选择题(共80分)二、填空题(本大题共10小题,每小题2分,共20分
7、)请在每小题的空格中填上正确答案。错填、不填均无分。21设char a,b;则表达式a/b-c的值的类型为 。22设int k=-1;执行printf(%u,k);后输出的值是 。23设for(k=0;k0;k+)+k;则该循环共执行 次。24设int a =1,b=2;经表达式a=ab,b=ab,a=ab运算后a,b的值分别是 。25表示空类型的保留字是 。26. 被调函数在执行结束时,这个函数中定义的_类型的变量不被释放。27. 设struct studentint no;char name12;float score3; sl,* p = &sl;用指针法给sl的成员no赋值1234的语
8、句是_。28. C语言程序中对文本文件的存取是以_为单位进行的。29. 设char string =This_is_a_book!;则数组的长度应是_。30. 设int a23 = 2,3;则数组元素_的值为3。三、程序分析题 (本大题共5小题,每小题5分,共25分) 阅读下列程序,将输出结果写到各题右侧的空白处31.int a = 200;main()int i;for(i = 1;i =a&c =X&cy?x:y;return y;main( )int x=100;printf(%dn,sub(x,y);printf(%d,%dn,x,y);35.设文件file1.c的内容为COMPUTE
9、R#include stdio.hmain( ) FILE *fp;char ch;if(fp=fopen(file1.c,r)= =NULL) printf(Cannot open file n);exit(0);while(!feof(fp)ch=fgetc(fp);if(ch=A&ch=0;j-)printf(%d,num j);37一个一维数组和一个二维数组同处一个共用型,将数据输入一维数组后,在二维数组中输出。main( )union data int a10;int b ;/*第一空*/;union data ab;int i,j;for(i=0;i10,i+)scanf(%d,
10、); /*第二空*/for(i=0;i2;i+)for(j=0;j5;j+)printf(%5d, );/*第三空*/38. 先为数组a输满数据,再为x输入一个数据,在数组a中找出第一个与x相等的元素并将其下标输出,若不存在这样的元素,则输出“Not found!”标志。main()int i,x,a10;for(i = 0;i10;i + )scanf(d,_);scanf(d,&x);printf(d,x);for(i = 0;i no = 1234;或者( * p) .no = 1234;28. 字节29. 1630. a10三、程序分析题31. 201,21 202,22 203,23
11、 204,24205,2532. N33. 7 6 5 4 3 2 134. 100 30,5035. computer四、程序填充题36. (1) &n(2) n%2(3) n/237. (1)25(2) &ab.ai(3) ab.bij38. (1) &ai 或者a + i(2) x = = ai(3) 五、程序设计题下述答案仅供参考,若采用其它方法答案,只要正确实现题目要求即可。39.main()int i=1;while(i100) if(i%10=6 & i%3=0) printf(”%5d”,i);i+;40. main ()int a = 0, b = 0, i;for(i =
12、2;i = 100;i + = 2) 2 + = i;b + = i - 1;printf(Sum of even number = d n,a);printf(Sum of odd number = d n,b); 41. # includestring.hmain ()int i, n;static char str80;gets(str);n = strlen(str);for(i = 0;i 高等教育自学考试C语言程序设计试卷 一、单项选择题(在每小题的四个备选答案中,选出一个正确的答案,并将其代码填入题干后的括号内。每小题1分,共20分)1.程序中定义以下宏 #define S(a,
13、b) a*b若定义 int area; 且令area=S(3+1,3+4),则变量area的值为()A10 B12 C21 D282.正确的标识符是 ()Aa Ba=2Ca.3 Da_33.表达式1&3&5&7的值为()A1B3C5D74.语句printf(st)的输出结果为 ()Ast Bst Cs Ds5. 执行下列语句中,sum变量的值是 ()int sum=0for(int i=0;i32:113.假设指针p1已经指向了某个整型变量,要使指针p2也指向同一个变量,则下面各项中正确的是 ()Ap2=*p1 Bp2=*&p1Cp2=*p1 Dp2=&*p114.以下运算符中,运算对象必须是
14、整型的是 ()A/B%=C!=D=15.以下关于typedef的叙述中错误的是 ()A用typedef可以增加新的类型B用typedef可以定义各种类型名,但不能用来定义变量C用typedef只是将已有的类型用新的标识符来代表D使用typedef有利于程序的通用和移植16.若执行完成下列语句:int a=3,b=6,c;c=ab2;则变量c的二进制值为 ()A00011100 B00010100 C0001000 D0001101117.设有定义int x=1; int y=aAx-:x+;,则变量y的值是()A0 B2 C1 D318.以下关于宏替换的叙述不正确的是()A宏替换只是字符替换
15、B宏名无类型C宏替换不占用运行时间 D宏替换不占用编译时间19. 以下对枚举类型名的定义中正确的是 ()Aenum s=a,b,c Benum s a=9,b=2,cCenum s=a, b, cDenum sa, b, c20. 假设指针p已经指向某个整型变量x,则*p相当于 ()A&x B&p Cx D*x二、多项选择题 (在每小题的五个备选答案中,选出二至五个正确答案,并将其代码填写在题干后的括号内;错选、多选不得分。每小题2分,共10分)1. C语言中的文件类型有 ()A索引文件 B文本文件CASCII文件D二进制文件E随机文件2. 以下关于C语言中循环的描述正确的是 ()A在whil
16、e和do-while循环体内应包含使循环趋于结束的语句Bdo-while的循环体不能是复合语句Cdo-while的循环体至少无条件执行一次D在for循环中可以使用break语句跳出循环体Efor循环只能用于循环次数已经确定的情况3. 合法的变量名有()Aa_1_2 Bb2 C_abc DABC E$14. 整型变量的类型标识符是()Ashort Blong CUnsigned intDint Echar5. 以下叙述中正确的是 ()A一个C语言程序有且仅有一个main函数BC语言程序中,main函数是没有参数的C一个函数通过其他函数间接的调用了自身,这种情况也是一种递归调用Dmain函数是由系
17、统调用的E若要通过函数参数带回一个或多个返回值,则应使用按地址传送的参数结合方式三、判断题(认为对的,在题后的括号内打,认为错的打。每小题1分,共6分)1.若有说明int c;则while (c=getchar();是错误的C语句。()2.C语言中,共用体类型的变量在程序运行期间,所有成员都在内存中。()3.在一个函数内部的复合语句中定义的变量,只在该复合语句范围内有效。()4.C语言程序中,一个文件中的函数可以引用存储在另一个文件中的函数和变量。 ()5.使用continue和break语句,都可以使得C程序的执行直接从循环中跳出。 ()6.若a为一维数组名,则*(a+i)与ai等价。()四
18、、阅读程序,将程序运行结果填写到题后的横线上(每小题5分,共25分)1. #include stdio.hmain()static char str执行表达式a=b=1,a+,b+1,c=a+b-后,a,b和c的值分别是 ( )A.2,1,2 B.2,0,3 C.2,2,3 D.2,1,34.在C语言中,错误的常数是 ( ) A.1E+0.0 B.5. C.0xaf D.0L5.下面运算符优先级最高的是 ( )A.a D.*p.b第二部分 非选择题 (共90分)二、填空题 (本大题共5小题,每空2分,共20分)请在每小题的空格上填上正确答案。错填、不填均无分。11.在C语言中,单目运算符的结合
19、方向(运算方向)是_;唯一的一个三目运算符是_。12.字符串AB的内容是_,存储需要的字节数是_。13.设int a10,b33;数组元素a5和b12分别用指针表示的形式是_和_。 14.编译预处理的三种形式除宏定义外,还有_和_。15.文件操作方式w和rb+的含义分别是_和_。三、程序分析题 (本大题共7小题,每小题5分,共35分)阅读下列程序,将输出结果分别写到各题右侧的空白处。16.main()int a=3,b=9,c=2;if(a if(a printf(%5d%5d%5dn,a,b,c);17.void change(int *x,int y)int t;t=*x;*x=y;y=t
20、;main()int a=3,b=5;change(&a,b);printf(a=%d,b=%dn,a,b);18.main()int j;for(j=4;j=2;j-)switch(j)case 0: printf(%4s,ABC);case 1: printf(%4s,DEF);case 2: printf(%4s,GHI);breakcase 3: printf(%4s,JKL);default: printf(%4s,MNO);printf(n);19.main()int j,a6=1,2;for(j=3;j6;j+)aj=aj/2+aj%3-aj-2;for(j=0;j6;j+)pr
21、intf(%5d,a);printf(n);20.int a=10;int f(int a)int b=0;static int c=3;a+;+c;+b;return a+b+c;main()int i;for(i=0;i2;i+)print(%5d,f(a);printf(n);21.#define N 2#define M N+1#define NUM 2*M+1int fib(int n)return ntype PROC.c main(int argc,char * argv)while(-argc0)printf(%s,argvargc);printf(n);写出执行下列命令后的输
22、出结果CPROG 2008 OLYMPIC BEIJING 四、程序填空题 (本大题共2小题,每空3分,共15分)23.任意输入三条边(a,b,c)后,若能构成三角形且为等腰、等边和直角,则分别输出DY、DB和ZJ,若不能构成三角形则输出NO。main() float a,b,c,a2,b2,c2scanf(%f%f%f%,&a,&b,&c);printf(%5.1f,%5.1f,%5.1f,a,b,c);if(a+bc&b+ca&a+cb)if(_)printf(DY);if(_)printf(DB);a2=a*a;b2=b*b;c2=c*c;if(_)printf(ZJ);printf(n);else printf(NOn); 24.输出下列图形。1 2 3 4 5 6 7 8 9 ma
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高职动漫制作技术(动漫动画制作)试题及答案
- 2025年大学本科(动物科学)动物遗传学试题及答案
- 2025年大学健康管理(健康管理规划)试题及答案
- 2025年大学统计学(统计学案例分析)试题及答案
- 2025年高职特许经营管理(管理实务)试题及答案
- 2025年高职第四学年(工业网络安全)防护技术阶段测试题及答案
- 2025年大学放射治疗技术(放射治疗操作)试题及答案
- 2025年高职(大数据应用技术)数据分析报告撰写技术综合测试题
- 2025年中职精细化工技术(产品研发)试题及答案
- 2025年高职审计(审计实务)试题及答案
- 采购部门月度汇报
- 新华书店管理办法
- 档案专业人员公司招聘笔试题库及答案
- 工程竣工移交单(移交甲方、物业)
- 2025年高考语文全国一卷试题真题及答案详解(精校打印)
- 来料检验控制程序(含表格)
- 2025年钛合金阀项目可行性研究报告
- 耙地合同协议书
- 分布式基站光伏电站建设标准
- 2024-2025学年广东省深圳市福田区六年级(上)期末数学试卷
- 道岔滚轮作用原理讲解信号设备检修作业课件
评论
0/150
提交评论