c:
d的值为:
A.2B.3C.4D.5【】
7.下面程序段的运行结果是:
main
{intn=1;
printf(“%d,%d\n”,n,++n,n--);
}
A.1,1,1B.1,2,2C.1,2,3D.1,2,1【】
8.若执行下列程序时,从键盘输入数据3和4,则程序的输出结果是:
main()
{inta,b,s;
;
s=a;
if(a
s=s*s;
:
}
A.14B.16C.18D.20【】
9.以下程序的输出结果是:
main()
{intI,j,k,a=2,b=3;
I=(a==b)?
a--:
b++;
j=a++;k=++b;
}
A.I=3,j=2,k=4B.I=1,j=2,k=4
C.I=1,j=2,k=5D.j=3,j=2,k=5【】
10.在C语言中,当while语句构成的循环中的条件为_______时,结束循环.
A.0B.1C.trueD.非0【】
11.在下述程序中,for循环共执行了________次.
main()
{intI=0,j=10,k=2,s=0;
for(;;)
{i+=K;
if(i>j)
{
{printf(“%d\n”,s);
break;}
s+=I;
}
}
A.4B.7C.5D.6【】
12.若有定义inta[10];则数组元素的下标下限和上限分别是:
A.0和1B.1和9C.0和9D.1和9【】
13.下列程序的运行结果是:
#include
main()
{chars[10]={
};
}
A.c1=c,c2=abcB.c1=b,c2=a
C.c1=b,c2=abcD.c1=c,c2=a【】
14.下列程序的输出结果是:
#include
main()
}
A.值不确定B.10C.4D.3【】
15.下列说法正确的是:
A.一个源程序文件只能由一个函数组成.
B.一个C程序只能由一个源程序文件组成.
C.一个C程序可有多个main函数.
D.同一函数可被另一个函数调用多次.【】
16.若没有定义变量的存储类别,则系统默认的存储类别是:
A.registerB.staticC.autoD.extern【】
17.下列程序的运行结果是:
func(intx,inty,int*jia,int*jian)
{*jia=x+y;
*jian=x-y;}
main()
{intI=10;j=3,x1,x2;
func(I,j,&x1,&x2);
}
A.0,0B.10,3C.13,7D.7,13【】
18.下列定义中,指针数组定义正确的是:
A.intn,(*p)();B.intn,*p[n];
C.intn,(*p)[4];D.intn,*p[5];【】
19.下列程序的运行结果是:
#defineSQR(x)((x)*(x))
#defineAREA(r)(3.14*SQR(r))
#include
main()
{floatx=10.0;
}
A.3.14B.31.4C.9.9D.6.28【】
20.在ASCII码文件的读/写过程中,文件的结束标志是:
A.0B.ENDC.EOFD.feof【】
二、多项选择题(本大题共10小题,每小题2分,共20分)
在每小题列出的五个选项中有二至五个选项是符合题目要求的,将正确选项前的字母填在题后的括号内。
多选,少选,错选均无分。
21.与十进制数100等值的数有:
A.(1100100)2B.(1011011)2C.(144)8
D.(64)16E.(5F)16【】
22.下面哪些基本结构和特性符合结构化程序设计的要求:
A.选择结构B.循环结构C。
顺序结构
D.各结构之间只有一个入口,至多两个出口
E.各结构之间只有一个入口,一个出口【】
23.设a=1,b=3,c=0;下面表达式的值为1的有:
;
A.!
a&&b||a&&(c+1)B.a-b+3C.(a>b)==c
D.(a=0)&&(b=10)E.b>a&&a>c【】
24.若所用变量已正确定义,以下各程序段执行后,变量x值一定相等的有:
A.x=0;
for(i=0;i<=3;I++)
x=i+x;
B.x=0;I=0;C.for(I=0;i<5;i++)
D.x=0;i=0;E.I=0;x=0;
lop:
x=i+x;do{x=x+i;i=i+1;}
i++;while(I<=3);
if(I<=3)gotolop;【】
25.若有如下定义及赋值:
intx=5,*p,*p1;
p-&x;p1=p;
则可以输出变量x的值的语句是:
A.
B.
C.
D.
E
【】
26.若有定义及赋值
;
p=a;
则可表示数组元素a[I]的地址的表示是
A.&a[i]B.a+iC.p+iD*(p+i)E.a[i]【】
27.设有二维数组inta[3][4];下列表示形式中地址相等的是:
A.&a[0][1]B.*aC.a[0]+1D.*a+1E.a[1]【】
28.设有定义inta[3][4],*p;及赋值p=a;假定数组a的首址为1020,则下列能输出显示地址值勤020的语句是:
A.
;B.
C.
D.
;
E.
;【】
29.下面各项有错误的是:
A.structperson{longbh;char*name;intage;}
B.structmy_data
{intnum;structmy-data*next;};
C.structmy_test
{char*course;char*class;}
D.structworker
{charname[9];floatgz;}Li={“LiPing”,532.67};
E.structint_num
{intI_num;structint_num*next;}ione,*pi;
pi=&ione;【】
30.表达式_(xx)的值可以是:
A.0B.65535C.-1D.0xffffE.1【】
第二部分非选择题
三、填空题(本大题共10小题,每小题1分,共10分)
31.设字长为八位,十进制-1在机内的存储形式是_______.
32.组成C程序的若干函数中,只能且必须有一个名为_____的主函数。
33.在使用数学函数时,要求在程序的开头处写上的编译预处理命令是__________.
34.当a=1,b=3,c=5,d=4时,执行以下程序段后x=________.
If(a
if(celse
if(aif(belsex=3;
elsex=6;
elsex=7;
35.设i,y,s均为int型变量,则执行for循环后,y的值为______.
For(I=o,y=0,I<3;s=I*I,y=y+s,I++);
36.以下程序的输出结果是_________.
Main()
{inta[2][2]={1,2,3,4};
intI,j,s;
for(s=0,I=o;I<2;I++)
for(j=0;j<2;j++)
s=s+a[0][I*2+j]
}
37.局部变量是在函数内部定义的,它们只在_______有效。
38.若有定义intx,y=4,*p;则执行语句p=&y;x=(*p)++;后,x的值为_________.
39.在共用体上,存储空间的大小取决于存储单元_______成员的数据类型。
40.设有语句FILE*fp;则打开C盘根目录下一级子目录doc中的ASCII码文件filel.txt用于读的C语句是_________.
四、简答题(本大题共4小题,第41、42每小题2分,第43、44每小题3分,共10分)
41.简述TurboC2.0系统中,在主菜单Compile下,选用命令CompiletoOBJ与选用命令MakeEXEfile两者之间的异同。
42.简述下列条件语句中if和else是如何配对的。
if(a
①②③
if(a④⑤⑥⑦
if(a⑧⑨⑩
43.简述字符数组初始化与字符串指针变量的初始化有什么不同.
44.简述fputc和fputs函数的作用.它们的使用格式如下:
fputc(ch,fp);/*fp为文件指针,ch为字符*/
fputs(str,fp)*fp为文件指针,str为字符串首址*/
五、阅读分析题(本大题共10小题,每小题2分,共20分)
45.阅读下列程序,写出运行结果.
Main()
{inta=3,b=4,c=5;
unsignedd;
d=-a;
;
}
46.阅读下列程序,并回答相关问题.
#defineY20
Main()
{intx=10,z=50;
x=z-29;
switch(x)
{case12:
z+=12;break;
caseY+1:
z+=Y+1;break;
caseY-7:
z+=Y-7;break;}
;
第47题、48题、49题请参阅下面程序,并回答相关问题。
Main()
{intm,n;
m=65;
n=14;
while(m!
=n)
{while(m>n)m-=n;
while(n>m)n-=m;}
47.程序输出结果是多少?
48.外循环执行完一次时,m和n的值分别是多少?
49.将外循环中第二条while语句删除后,程序运行情况如何?
第50题,第51题,第52题请参阅下面程序,并回答相关问题.
Doublepower(x,n)
doublex;intn;
{doublet;
if(n>0)
for(t=1.0;n>0;n--)t*=x;
elset=1.0;
return(t);
50.该函数的功能是什么?
51.若考虑n<0的情况,函数如何修改?
52.请改用递归方法实现该函数.
第53题,第54题请参阅下面程序,并回答相关问题.
Structdata
{intnumber;
structdata*next;}*head=NULL;
voidcreate()
{structdata*p;intx;
;
while(x)
{p=(structdata*)malloc(sizeof(structdata));
p;
head=p;
;
}
53.请说明语句pnext=head;的作用.
54.请说明语句head=p;的作用.
六、程序设计题(本大题共2小题,第55题8分,第56题12分,共20分)
55.编程求
(即求1!
+2!
+3!
+…+10!
)并输出结果。
56.设有7×7浮点型数组x(7×7表示7行7列).要求:
(1)从键盘上输入49个浮点数对数组x赋初值.
(2)计算数组x每一行的累加和以及每一列正数的平均值(假设每列中至少有一个正数)。
(3)将数组x、各行的累加和以及各列正数的平均值依次写到当前目录下的二进制文件array.txt中