《全国自考计算机基础与程序设计历年真题(珍藏版)(部分有答案)412.pdf》由会员分享,可在线阅读,更多相关《全国自考计算机基础与程序设计历年真题(珍藏版)(部分有答案)412.pdf(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 1 全国自考计算机基础与程序设计历年真题 全国 2010 年 7 月高等教育自学考试计算机基础与程序设计试题 课程代码:02275 一、单项选择题(本大题共 20 小题,每小题 1 分,共 20 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.与十进制数 49 等值的二进制数是(D)A.101111 B.110000 C.110001 2.编译程序的功能是(B)A.修改并建立源程序 B.将源程序翻译成目标程序 C.调试程序 D.命令计算机运行可执行程序 3.Turbo C 2.0 中,若定义 long b;则变量 b 在内存中
2、分配的字节数是(C)A.1 个 B.2 个 C.4 个 D.8 个 4.下列语句中不能实现循环结构的语句是(A)A.if 语句 B.while 语句 C.dowhile 语句 D.for 语句 5.以下程序的输出结果是()main()int y=10;while(y);printf(y=d”,y);A.y=-1 B.y=0 C.y=1 D.y=随机值 6.下列程序的输出结果是()main()int a10=l,2,3,4,5,6,7,8,9,10;printf(dn,a2);2 A.1 B.2 C.3 7.下面程序的输出结果是()#include#include main()char p110
3、=abc,p2=ABC;strcat(p1,p2);printf(sn,p1);A.abcabc B.abc C.ABC 8.设有 int x=2,y,z;执行 z=y=x+;后变量 x 的值是()A.0 B.1 C.2 9.下面程序段的输出结果是()main()int a=2,b=5;printf(a=d,b=9%d,a,b);A.a=2,b=5 B.a=2,b=5 C.a=2,b=5 D.a=d,b=d 10.若有下列程序段,欲使 a=2,b=3,对应正确的数据输入法是(其中表示回车)()int a,b;scanf(d,d,&a,&b);A.2 B.a=2,b=3 3 C.a=2b=3 D
4、.2,3 11.若运行时给变量 x 输入 12,则以下程序的运行结果是()main()int x,y;scanf(d,&x);y=x12?x+10:x-12;3 printf(%dn,y);A.0 B.10 C.12 12.若执行下列程序时,从键盘上输入 3 和 4,则输出结果是()main()int a,b,s;scanf(dd,a,&b);s=a:if(a2 的值是()A.-1 B.1 C.3 20.设有说明:FILE*fp;char filename10=myfile;对于 fp=fopen(filename,rb+);语句,下面说法正确的是()A.打开名为 myfile 的文件读写 B
5、.打开名为 filename 的文件读写 C.打开名为 myfile 的文件只读 二、多项选择题(本大题共 5 小题,每小题 2 分,共 10 分)在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号 5 内。错选、多选、少选或未选均无分 21.下列属于计算机的输入设备的有(CDE)A.CDROM B.打印机 C.键盘 D.鼠标 E.扫描仪 22.设有 int a=3,b=-5;下面表达式值等于 0 的有(C)A.!a B.!b&b C.56!=0 D.a3!=0 E.b+a=-2 23.下列有关函数的说法中不正确的有(AB E)A.C 语言程序总是从首定义的函数起
6、顺序执行 从主函数执行 B.在 C 语言程序中,被调用的函数必须在 main()函数中定义 在定义部分定义 C.C 语言程序中的 main()函数必须放在程序开始部分 D.C 语言程序总是从 main()函数开始执行 E.定义函数时,参数表中可以没有任何参数 24.若有定义 int a5,i,*p=a;且 0i2 D.(y=、=、()、!、|、&、=29.若有 char strl20,str220;简述下面各函数调用的功能。(1)gets(strl)(2)strcmp(strl,str2)四、阅读分析题(本大题共 6 小题,每小题 5 分,共 30 分)30.写出下列程序的运行结果。main(
7、)int a=10,b=8,c;6 c=a;a=b;b=c;printf(a=d,b=dn,a,b);31.写出下面程序的功能;如果输入 6 和 9,写出程序的输出结果。main()int a,b,x,y;scanf(dd,&a,b);x=a*a+b*b;if(x100)y=x100;printf(d,y);else printf(d,a+b);32.写出下面程序的功能及运行结果。main()int n=1,sum=0;do sum=sum+n;n+=2;while(n100);printf(sum=dn,sum);33.写出下面程序的功能和运行结果。int fun(int a4)int i,
8、j,k,tem tem=a00;for(I=0;i3;i+)for(j=0;j4;j+)if(aijtem)tem=aij;return(tem);main()int b34=1,3,-5,7,2,4,-6,8,10,20,-30,40;printf(dn,fun(b);34.下列程序中字符串中各单词之间有一个空格,写出程序的输出结果。#include#include main()char str1=How do you do;puts(str1);7 strcpy(str1+str1en(str1)2,es she);printf(%sn,str1);35.写出下列程序的功能和运行结果。#i
9、nclude reverse(char*s)char*t,ch;for(t=s+strlen(s)-1;s=B.!8 C.D.|7.下列程序段的输出结果是(A)main()int a=5,b=3,c;c=a;a=b;b=c;printf(%d,%dn,a,b);,5,3 C.5,8 D.8,3 8.下列程序段所表示的逻辑关系是(B )if(a120);printf(d,a);11.关于 break 和 continue 语句,下列说法正确的是()结束本次循环 9 a4=l,2,3,4;则 aa0+2*a2-a3等于()13.定义如下变量和数组,则下列程序段的输出结果是()int i,x33=1
10、,2,3,4,5,6,7,8,9;for(i=0;i3;i+)if(i%2!=1)printf(d,xii);14.若有定义 static char str210,strl=China;欲将 strl 中的字符串拷贝到 str2 中去,下列正确的语句是()A.strcpy(str2,strl);B.strcpy(strl,str2);C.strcpy(China,str2);D.strl=str2;15下列关于 C 程序的说法中不正确的是()A一个源程序文件由一个或多个函数组成 B一个 C 程序可以有多个名字为 main 的函数 C一个 C 程序由一个或多个源程序文件组成 D一个 C 程序必须
11、有一个 main 函数 16.用数组名作为函数调用时的实参,实际上传递的是()A数组全部元素的值 B.数组第一个元素的值 C数组的首地址 D数组元素的个数 17.设有函数()void print _value(int*x)printf(%dn,+*x);执行程序段 int a=25;print_value(a);的正确输出是 A.23 B24 C.25 18.语句 float*p 6;的含义是()Ap 是一个数组,有 6 个元素,每个元素都是浮点数 Bp 是一个指针,指向有 6 个浮点数据的数组 Cp 是一个指针数组,有 6 个元素,每个元素都是浮点型指针 Dp 是一个指针,指向一个浮点数 1
12、9.设有下列程序()#include void main(void)unsigned x=1,y=2;10 printf(%dn,(xy);该程序的运行结果是 A.-1 20.设有说明:FILE*fp;对于 fp=fopen(,r+);语句,下列说法正确的是()A打开 ASCII 文件读写 B打开二进制文件读写 C打开 ASCII 文件只读 D打开二进制文件只读 二、多项选择题(本大题共 5 小题,每小题 2 分,共 10 分)在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。21.下列数据中等值的有()A.(0.100)2 B.
13、(0.101)2 C.(0.5)8 D.(0.625)10 E.(0.A)16 22.下列有关 switch 语句的说法中正确的有(A BDE )A.switch 后面的表达式可以为任意类型(整型、字符型)后的每个常量表达式的值必须互不相同 C.若 case 后面有两个或两个以上的执行语句,必须加花括号 D.一个 case 对应一组执行语句,多个 case 不可共用同一组执行语句 E.default 部分可有可无 23.下列对数组赋初值正确的有()a =l,2,5,8,3,7;a 3=1,2,5,8,3,7;a23=1,2,5,8,3,7;a2=1,2,5,8,3,7;a33=l,2,5,8,
14、3,7;24.若有说明:int a=1,2,3,4,5,6,7,8,9,0,i;当 0i10 时,下列对数组元素地址正确的表示有()A.a+l B.a+l C.a+D.ai E.a+i 25.下列关于结构体类型的定义正确的有()river river 11 int branch;int branch;int branch;char name20;char name20;char name20;river int branch;int branch;char name20;char name20;struct river*next;三、简答题(本大题共 4 小题,每小题 4 分,共 16 分)2
15、6.假设字长为 8 位,请写出-1 的原码和补码。原码;10000001 补码;11111111 27.写出 for 语句的一般形式并分析循环体被执行的条件。28.字符数组的初始化与字符串指针变量的初始化有什么不同?29.语句 fwrite(stu,size,n,fp);中 stu、size、n 和 fp 的含义各是什么?四、阅读分析题(本大题共 6 小题,每小题 5 分,共 30 分)30.阅读下列程序并写出运行结果。void main(void)int a=987,b=l00,x,y;y=b;x=a/b;print(%d,%dn,x,y);31.阅读下列程序,若输入 0,3 并回车,则程序
16、的输出结果是什么?void main(void)int x,y,z;scanf(%d,%d,x,y);if(xy)z=x;x=y;y=z;print(%d,%dn,x,y);32.下列程序的功能和输出结果是什么?void main(void)int k=0,total=0;while(k=100)total+=k;k+;print(total=%dn,total);33.阅读下列程序并写出运行结果(注:A 的 ASCII 码值为 65,a 的 ASClI 码值为 97)。void main(void)int i=64;12 char s20,*p=s;while(i+=73)*p=i%2=0?
17、i+32:i;p+;*p=0;printf(%sn,s);34.阅读下列程序并写出运行结果。int fib(int n)static int f0=0,fl=l,i,f;for(i=3;i=n;i+)f=f0+fl;f0=fl;fl=f;printf(f0=%d,fl=%dn,f0,fl);return(f);void main(void)printf(%dn,fib(3)+fib(3);35.阅读下列程序并写出程序的运行结果。#includestring.h#includemalloc.h struct planet char name20;double weight;struct plan
18、et*next;*head=NULL;void main(void)struct planet*p;char*planet_name3=earth,venus,mars;double planet_weight3=25455700.565,11253300.437,7286320.512;int j;for(j=0;jname,planet_namej);p-weight=planet_weightj;p-next=head;head=p;13 p=p-next;printf(%s,%lfn,p-name,p-weight);五、程序设计题(本大题共 2 小题,每小题 12 分,共 24 分)
19、36.从键盘上输入 20 个整数,求其中正数的累加和并输出结果。37.在文本文件中有 10 个实型数据(每两个数之间用逗号隔开),编程将这 10 个数按从小到大排序后,写到文本文件中。全国 2009 年 4 月自考计算机基础与程序设计试题 课程代码:02275 一、单项选择题(本大题共 20 小题,每小题 1 分,共 20 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1.衡量存储器的基本单位是(A )A.bit B.byte C.KB D.word 操作系统是()A.单用户、单任务 B.单用户、多任务 C.多用户、单任务 D.多
20、用户、多任务 3.组成微机主存储器的是()A.CDROM 和 RAM B.硬盘和 RAM C.硬盘和 CDROM D.ROM 和 RAM 4.下列数据中最大数是()A.(1010010)2 B.(123.4)8 C.(84.5)10 D.(55)16 5.在 Turbo C 2.0 中,运行一个程序后,要查看运行结果可按键()A.Alt+F1 B.Alt+F5 C.Alt+F9 D.Alt+F10 6.下列是合法 C 语言常量的是()A.e C.E4 30 7.设有 int a=3,b=-4,c=5;表达式(ab)?a:b&c0 的值是()A.0 B.1 C.3 D.4 8.以指数形式输出实型
21、数的格式说明符是()A.%u B.%x C.%f D.%e 14 9.下列程序的输出结果是()main()int x=5,y;if(x0)y=-1;if(x=0)y=0;y=1;printf(%d,y);A.-5 B.-1 C.0 D.1 10.下列程序段的输出结果是()i=1;while(i3)j=1;while(j B.&|C.|D.|17.设有说明:int u=1,v=3,w=5;表达式:v&u|w 的值是()A.3 B.5 C.6 D.8 18.设有下列程序:()#include main()unsigned x=8,y=2;printf(%dn,y|(x&y);该程序的运行结果是 A
22、.-1 B.0 xff C.127 D.65535 19.若有定义#define P(x)x x x+1 和说明语句:int a=2;则表达式 P(2)的值是()A.6 B.8 C.9 D.10 20.在语句 fgets(str,n,p);中,下列说法不正确的是()A.str 是字符指针 B.一次可以读 n 个字符 C.str 是字符数组名 D.一次可以读 n-1 个字符 二、多项选择题(本大题共 5 小题,每小题 2 分,共 10 分)在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。21.下列关于计算机的叙述中正确的是()A.
23、CPU 是计算机系统的部件 B.I/O 设备不是计算机系统的部件 C.计算机区别于其他计算工具的本质特点是能存储数据 D.“裸机”是指不配置任何软件的计算机 E.计算机指令是控制计算机进行操作的命令 22.设有 int a=3,b=-5;下列表达式的值等于 1 的有()A.a&b0 C.ab&b0 D.(a,2,-5)=(b,2,a)E.a+bid=wl-id D.p-id=wl.id;E.p.salary=wl.salary;三、简答题(本大题共 4 小题,每小题 4 分,共 16 分)26.有无 default 对 switch 语句有什么不同的影响?27.写出 do-while 语句的一
24、般形式及其执行过程。28.定义 char a =I am a student.,str=a;等价于 char a =I am a student.,str;str=a;吗?为什么?29.设有说明:struct vegetable char part;char color;clove;char part _ of _ vegetable 3=AA,BB,CC;char seven _ color=11,22,33,44,55,66,77;请分别写出将 clove 的成员 part 指向BB,成员 color 指向55的 C 语句。四、阅读分析题(本大题共 6 小题,每小题 5 分,共 30 分)
25、30.阅读分析下面程序后,写出程序的运行结果。#include main()int a=978,x,y,z,i,j,w;x=a/100;y=(a-100 x)/10;17 z=a-10 y-100 x;i=yz?z:y;j=y=z?z:y;w=100 x+10 i+j;printf(%d,%d,%d,%dn,x,y,z,w);31.阅读分析下面程序后,写出程序的运行结果。#include main()int n,m;for(n=1;n=5;n+)for(m=1;m=4;m+)printf(%4d,m n);printf(n);32.阅读分析下面程序后,写出程序的运行结果。#include ma
26、in()int arr10,i,k=0;for(i=0;i10;i+)arri=i;for(i=1;i=4;i+)k+=arri+i;printf(%5d,k);33.阅读分析下面程序后,写出程序的运行结果。#include int fun(int x)int p;if(x=0|x=1)return(3);p=x-fun(x-2);printf(%5d,p);return (p);main()18 fun(9);34.阅读下面程序,分析 cat 函数的功能并写出程序的运行结果。#include void cat(char s,char t)while(s)s+;while(s+=t+)!=0)
27、;main()char sl80=computer,s280=Pentium_;cat(s2,s1);printf(%sn,s2);35.阅读分析下面部分程序:struct cjd char name9;float score22;x;float t22=70.5,65.0,83.0,92.5;int j,k;请用 for 循环将 t 数组中的元素依次赋给结构变量 x 中 score 数组的对应元素。五、程序设计题(本大题共 2 小题,每小题 12 分,共 24 分)36.请编程从键盘上输入十个整数,计算其中大于零的奇数的平均值,并输出这些大于零的奇数以及它们的平均值。37.有若干个学生(不超
28、过 50 人)的某一门课的成绩放在文件中,要求编程统计出 90100分,8089 分,7079 分,6069 分,059 分的人数各有多少人。全国 2008 年 7 月自考计算机基础与程序设计试卷 课程代码:02275 一、单项选择题(本大题共 20 小题,每小题 1 分,共 20 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。1一个完整的计算机系统应该包括(B)A主机和外设 B主机和操作系统 C硬件系统和系统软件 D硬件系统和软件系统 19 2若用八位二进制表示一个整数,则-4 在计算机中的表示是(C)A11111100 B11
29、111011 C10000100 D00000100 3下列转义字符中,表示回车的是(C)A0 Bn Cr Df 4若定义 double d;则 d 在内存中分配的字节数是(D )A1 个 B2 个 C4 个 D8 个 5下列表达式中运算结果为 3 的表达式是(B)A(-7)%4 B7/4+2 C7/4*4-4 D8/3+8/3 6设有 int a=3,b=-4,c=5;表达式 a+-c+b+的值是(C)A-6 B-5 C-4 D-3 7在 printf 语句中,格式说明符 u 表示(C)A以十进制带符号形式输出整数 B以十六进制带符号形式输出整数 C以十进制无符号形式输出整数 D以十六进制无
30、符号形式输出整数 8若有 int a=3,b=4,c=5,d=6,x=4;执行下列程序段后 x 的值是(D )if(a0)printf(%f,x);else printf(%f,x);22 Bif(x0)x=x+y;printf(%f,x)else printf(%f,x)Cif(x0)x=x+y;printf(%f,x);else printf(%f,x);Dif(x0)x=x+y;printf(%f,x);else printf(%f,x)Eif xy x+;else x-;23设有程序如下:main()int i,j,a=1,3,5,7,9,11,13,15;i=5;switch(i)d
31、efault;printf(%dn,ai);case 1:printf(%dn,a3);case 2:printf(%dn,a+i);break;case 3:printf(%dn,a-i);上述程序的输出结果不包括()A5 B7 C9 D11 E13 24设有定义及赋值:()int a10=0,1,2,3,4,5,6,7,8,9,*p;p=a;则引用 a 中值为 5 的元素的正确形式是 Aa5 Ba4 23 C*(a+5)Dp5 E*(p+5)25设有说明:int u=1,v=3,w=7;下列表达式的值为 7 的有()Au&v|w Bu|v|w Cuv|w Dw&v|u Euw|v 三、简答
32、题(本大题共 4 小题,每小题 4 分,共 16 分)26C 语言中整型常量有几种形式,它们是如何表示的?27写出语句 if(表达式)语句 1 else 语句 2 的执行过程。28若定义 char*str;然后用 gets(str);输入字符串可以吗?为什么?29单个字符的读函数 fgetc(fp),其中 fp 表示什么?该函数的功能是什么?四、阅读分析题(本大题共 6 小题,每小题 5 分,共 30 分)30阅读下面程序并写出运行结果。main()int a=47,x,y,z,w;x=a/2;y=a%2;z=a+;w=+a;printf(%d,%d,%d,%d,x,y,z,w);31阅读分析
33、下面程序,请说明程序的功能;然后写出当键盘输入 14 时,程序的运行结果。main()int x;scanf(%d,&x);if(x%5=0&x%7=0)printf(yes);24 else printf(no);32阅读下面程序并写出运行结果。main()static int a=5,3,7,2,1,5,4,10;int s=0,k;for(k=0;k8;k+=3)s+=ak;printf(a%d=%d,s=%dn,k,ak,s);33阅读下面程序并写出运行结果。check(int n,int k)int m;do m=n%10;n=n/10;while(k-);return(m);mai
34、n()int j,y=2345;for(j=1;j=0;j-)printf(%sn,aj);35阅读下面程序并说明语句:x=p-d0p-d1?p-d0:p-d1;的含义,然后写出程序的运行结果。struct number int d2;n=12,8,*p=&n;main()int x;x=p-d0p-d1?p-d0:pd1;printf(%d,x);五、程序设计题(本大题共 2 小题,每小题 12 分,共 24 分)36从键盘上输入一个正整数 n(n10),求 n 的阶乘并输出结果。37 由键盘输入 n*m 个数,并把它们存放在一个 n 行 m 列的数组中(n、m 均不超过 20)。(1)按
35、n 行 m 列输出该二维数组;(2)求出该二维数组全部元素的平均值;(3)把该二维数组中大于平均值的元素的值、以及它们行列下标打印出来。全国 2008 年 4 月自学考试历年试卷计算机基础与程序设计试题 课程代码:02275 一、单项选择题(本大题共 20 小题,每小题 1 分,共 20 分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的 26 括号内。错选、多选或未选均无分。1存储容量 1KB 等于(B)A32字节 B102字节 C202字节 D302字节 2在计算机中,指令通常是由(A )A操作码、操作数组成 B源操作数、目标操作数组成 C反码、补码组成 D直接
36、寻址、目的寻址组成 3与十进制数 39 等值的二进制数是(A)A00100111 B01001001 C10100111 D01011000 4下列设备中属于输出设备的是(D )A扫描仪 B键盘 C鼠标 D显示器 5整数在机器内存中的表示是(B )6下列运算符中优先级最低的是(D)A B!C%D=7设有 int a=3,b=,c=5;表达式+ac+b+的值是(B )A6 B5 C4 D3 8以十进制无符号形式输出整数的格式说明符是(A)A%u B%x C%o D%d 9下列程序段的输出结果是(B )void main(void)iny y=1,x=5;if(x=0)y=0;printf(dn,
37、y);27 A1 B0 C1 D5 10执行如下程序段后,x 的值是(D)int x=1,y=1;if(y0)x=y;else x+=y;A1 B0 C1 D2 11执行 while(表达式)循环的条件是(C)A当表达式的值为 0 时 B仅当表达式的值为 1 时 C当表达式的值非 0 时 D当表达式的值不为 1 时 12下列程序段输出的结果是(A)for(i=1;i3;i+)for(j=1;j&B&C&D&19设有说明:int u=1,v=3;则表达式 uy);Bif(x=y)&(x!=0)x+=y;Cif(x!=y)scanf(“%d,&x);else scanf(“%d”,&y);Dif(
38、xy)x+;y+;Eif(x10;k+);Efor(k=1;k=10;k+,k);24设有二维数组 int a43;下列表示数组元素 a02地址的有(CDE )Aa2 B*a C*a+2 Da0+2 E&a02 25设有关于结构体类型的定义:(AD )struct data int num;struct data*next;*p,*head=NULL;下列语句中正确的有 Ap=(struct data*)malloc(sizeof(struct data);Bp=(struct data)malloc(sizeof(struct data);Cp=(struct data*)malloc(si
39、zeof(data);Dpnext=head;Ep.next=head;三、简答题(本大题共 4 小题,每小题 4 分,共 16 分)“=”与数学中的“=”的意义相同吗?为什么?strcpy 的格式(或函数原型)与功能。格式:strcpy(字符数组 1.,字符数组 2)功能:把字符数组 2 中的字符串复制到字符数组 1 中 28.请按照下列要求写出相应的 C 语句。假设 float 类型的变量 x1 和 x2 已经定义过,且 x1 已经初始化为 7.3。(1)定义指向 float 类型变量的指针变量 fpt;float*fpt(2)使 fptr 指向 x1;fptr=&x1 (3)利用 fpt
40、r,将 fptr 指向变量的值赋给 x2;x2=*fptr(4)利用 fptr,输出 fptr 指向变量的值。printf=(%f,*fpt)29.fread(stu,size,n,fp);中 stu、size、n 和 fp 的含义各是什么?Stu 是内存中存放读取数据的首地址;size 是预读取的一个数据块的字节数;n 指一次读取数据块的个数;fp 指文件指针 四、阅读分析题(本大题共 6 小题,每小题 5 分,共 30 分)30.请阅读分析下列程序,然后写出运行结果。30 main()int a=0,b=1;printf(a=%d,b=%dn,a,b);a+=b;b+=a;printf(a
41、=%d,b=%dn,a,b);a=0,b=1 a=1,b=2 31.若分别输入 0 和 5 时,请阅读分析下列程序,然后分别写出两种输入情况下程序的运行结 果。main()int x,y;scanf(%d,&x);if(x2&x1&x=2)y=2*x;else if(x1)y=x1;if(y!=1)printf(%d,y);else printf(error);0 35 32.请阅读分析下列程序,然后写出程序的循环次数和运行结果。main(void)int i;for(i=1;i6;i+)if(i%2)printf();continue;31 printf(*);printf(n);循环 5
42、次 *33.请阅读分析下列程序,然后写出程序的运行结果。void fun();void main(void)fun();fun();void fun()static int a3=0,1,2,b=10;int i;if(b=10)for(i=0;i3;i+)ai+=ai;for(i=0;i3;i+)printf(%d,ai);printf(b=%dn,b);b+;else for(i=0;i3;i+)ai*=ai;for(i=0;i3;i+)printf(%d,ai);printf(b=%dn,b);32 0,2,4,b=10 0,4,16,b=11 34.请阅读分析下列程序,然后写出程序的运
43、行结果。void main(void)int a=1,2,3,4,5,6,*p;p=a;p+;*(p+3)+=2;printf(%dn,*p);printf(%dn,*(p+3);2 7 35.设有下列创建单向链表的部分程序:#include#include struct automobile char type20;int load;struct automobile*next;*head=NULL;void main(void)struct automobile*p;char*automobile_type3=Red_Rock,Yellow_River,East_Wind;int auto
44、mobile_load3=24,18,42,j;for(j=0;jb?a:c0)y=1;else y=0;36 A)0(1)0(0)0(1xxxy B)0(0)0(1)0(1xxxy C)0(1)0(1)0(0 xxxy D)0(0)0(1)0(1xxxy 9执行下面程序段后,输出字符 A 的个数是(B )for(i=0;i=5;i+=2)printf(A);A0 个 B3 个 C5 个 D6 个 10若有定义 char a =computer;则存储字符 m 的数组元素是(C )Aa1 Ba2 Ca3 Da4 11若有定义 int a 4=1,2,3,4;则 aa3-a1*a1的值是(C)A
45、1 B2 C3 D4 12凡是函数中未指定存储类别的局部变量,其隐含的存储类别为(C )A自动(auto)B静态(static)C外部(extern)D寄存器(register)13如果一个 C 程序仅由一个源文件组成,则在一个源文件中定义的全局变量的作用域为(D )A源文件的全部范围 B本程序的全部范围 C本函数的全部范围 D从定义该变量的位置开始至本文件末尾 14下列定义中,不是指针数组定义的是(D )Aint*p5;Bfloat*q4;Cint(*r)6;Dchar*w7;15若有语句 int*point,a=4;和 point=&a;下面代表地址的一组选项是(B )Aa,point,*
46、&a B&*a,&a,*point C*&point,*point,&a D&a,&*point,point 16下列程序的运行结果是(C )#difine N 9 fun (char s )37 char*p=s+4,*q=s;int i;for(i=0;i4;i+,p+,q+)si=*p;si+4=*q main()char ssN=ABCDEFGH;fun(ss)printf(%sn,ss);AEFGHABCD BEFGHEFGH CABCDEFGH DABCDABCD 17设有结构体的定义如下:(C )struct cjd long bh;int*q;char xm9;;则 sizeo
47、f(struct cjd)的值是 A14 B15 C16 D17 18设有说明:int x=0 x15,y=0 x0f;则 x&y 的结果是(B )A0 x5 B0 x15 C0 xf0 D0 xf5 19 如果在程序中要使用系统提供的函数 strlen,则需要书写的编译预处理命令是(D )A#include B#include C#incLude D#incLude 20由 FILE*fp;fp=fopen(,r+);可以推知 fopen 函数的原型是(A)Achar*fopen(char,char);BFILE*fopen(char*,char*);Cint fopen(char*,cha
48、r*);DFILF fopen(char*,char*);二、多项选择题(本大题共 5 小题,每小题 2 分,共 10 分)在每小题列出的五个备选项中至少有两个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选、少选或未选均无分。21下面基本结构和特性中符合结构化程序设计的要求的有(BCDE )38 A选择结构 B循环结构 C顺序结构 D各结构之间只有一个入口,至多两个出口 E各结构之间只有一个入口,一个出口 22若有 int x;float;y 下面结果为整型数的表达式有(ABCE )A(int)(x+y)B(int)x+y Ca+x Dx+(int)y Ex*y 23设有定义:in
49、t a23;下面关于数组元素引用正确的有(BCD )Aa03 Ba00 Ca21 Da12 Ea23 24设有关于结构体类型的定义:(AC )struct car char*name;float price;struct car*next;*p,*head=NULL;下面各选项中正确的有 Ap=(struct car*)MALLOC(sizeof(struct car);Bp=(struct car*)malloc(sizeof(struct car);Cp.next=head;Dp-next=head;Ep=(struct car*)malloc(sizeof(car);25设有说明:int
50、 u=1,v=5;则下列表达式的值为 1 的有(ACDE )Au&v Bv2 Cuu Duv E(u3)/5 三、简答题(本大题共 4 小题,每小题 4 分,共 16 分)26.什么是常量?C 语言中常量有哪几种类型?27用 while 循环结构完成下面程序段的功能。s=0 for(i=1;i=10;i+)39 s+=i;28若在一个函数中对变量 a,b 有如下定义:static int a;auto int b;简述它们之间的异同。29设有说明:int a34,(*p)4=a;请解释 p 的含义,并用 p 给出数组元素 a21的二种表示。四、阅读分析题(本大题共 6 小题,每小题 5 分,共