长江大学C语言期末试卷AWord格式文档下载.doc
《长江大学C语言期末试卷AWord格式文档下载.doc》由会员分享,可在线阅读,更多相关《长江大学C语言期末试卷AWord格式文档下载.doc(6页珍藏版)》请在冰点文库上搜索。
A)一个C源程序可由一个或多个函数组成
B)一个C源程序必须包含一个main函数
C)C程序的基本组成单位是函数
D)在C程序中,注释说明只能位于一条语句的后面
()2、以下选项中可作为C语言合法常量的是
A)90.B)090C)9e1.0D)90.0e
()3、以下选项中合法的字符常量是
A)”B” B)'
\010'
C)-268 D)D
()4、能正确表示逻辑关系:
“a≤10且a≥0”的C语言表达式是
A)0<
=a<
=10 B)a<
=0&
a>
=10 C)a<
=10&
&
=0 D)a<
=10‖a>
=0
()5、设intx=1,y=1;
表达式(!
x||y--)的值是
A)1 B)0 C)2 D)-1
()6、数字字符0的ASCII值为48,若有以下程序
main()
{
chara=’5’,b=’6’;
printf("
%c,"
b++);
%d\n"
b-a);
}
程序运行后的输出结果是
A)7,2B)55,2C)54,2D)6,2
()7、有以下程序
intm=12,n=34;
%d%d"
m++,++n);
%d%d\n"
n++,++m);
A)12353514B)12353513C)12343514D)12343513
()8、有以下语句:
floatb;
charc[10];
则正确的输入语句是
A)scanf("
%d%s"
&
b,c);
B)scanf("
%f%s"
C)scanf("
b,c);
D)scanf("
b,&
c);
()9、有以下程序
#definef(x)(x*x)
voidmain()
{
inti1,i2;
i1=f(6)/f
(2);
i2=f(3+3)/f(1+1);
printf("
%d,%d\n"
i1,i2);
}
程序运行后的输出结果是
A)9,9 B)9,5 C)5,9 D)5,5
()10、有以下程序
inta,b,d=29;
a=d/2%10;
b=a&
(-1);
%d,%d\n"
a,b);
A)0,0B)1,1C)4,1D)1,0
()11、有以下程序
inti=3,j=3,k=3;
if(i++==4&
(++j==4||k++==4))
%d%d%d\n"
i,j,k);
(A)444(B)443(C)433(D)333
()12、以下程序的输出结果是
A)#*#*# B)##### C)***** D)*#*#*
voidmain()
inti;
for(i=0;
i<
5;
i++)
{
if(i%2){printf("
#"
);
continue;
}
*"
\n"
()13、有以下程序
{
charb[10]=”abcd”;
printf(“%d,%d\n”,strlen(b),sizeof(b));
执行后输出结果是
A)4,4 B)10,10 C)10,4 D)4,10
()14、有以下程序
voidswap1(intc[])
intt;
t=c[0];
c[0]=c[1];
c[1]=t;
voidswap2(intc0,intc1)
t=c0;
c0=c1;
c1=t;
inta[2]={7,9},b[2]={7,9};
swap1(a);
swap2(b[0],b[1]);
printf(“%d%d%d%d\n”,a[0],a[1],b[0],b[1]);
其输出结果是( )。
A)9779 B)9797 C)7979 D)7997
()15、以下叙述中正确的是( )。
A)函数的形参都属于全局变量
B)全局变量都是静态类别变量
C)全局变量的作用域一定比局部变量的作用域范围大
D)未在定义语句中赋初值的auto变量和static变量的初值都是随机值
三填空题(每小题3分,共36分)
1、执行以下程序后的输出结果是
。
main()
inta=2;
a=(a/2,a*5,a+4);
printf(“a=%d\n”,a);
2、以下程序运行后的输出结果是 。
voidmain()
inta,b,c;
a=12;
b=012;
c=0x12;
%d
a,b,c);
3、以下程序的输出结果是___________________。
inta=5,b=4,c=3,d;
d=(a>
b>
c);
printf("
d=%d\n"
,d);
4、学习成绩>
=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示。
利用条件运算符的嵌套可写为_________________________________________________________。
(表示分数的变量用x)
5、以下程序
int i;
for(i=0;
3;
switch(i)
{ case 1:
printf("
%d"
i);
case 2:
default:
}
执行后输出结果是。
6、以下程序运行后的输出结果是 。
inta[4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}};
inti=0,j=0,s=0;
while(++i<
4)
{
if(i==1||i==3)continue;
j=0;
do{
s+=a[i][j];
j++;
}while(j<
4);
printf("
s);
7、下列程序段的输出结果是 。
charb[]=”How_are_you”;
b[7]=’\0’;
printf(“%s\n”,b);
8、以下程序运行后的输出结果是 。
{
chars[]=“2009”,*p;
for(p=s;
p<
s+2;
p++)
printf(“%s\n”,p);
9、设有以下结构类型说明和变量定义,则变量a在内存所占字节数是___,变量p在内存所占字节数是 ,变量a.age在内存所占字节数是 。
(以VC编译器对字节数的计算为准)
structstud
{charnum[8];
intscore[4];
doubleave;
intage;
}a,*p;
10、设char型变量x中的值为00100111
(2),则表达式(2+x)^(~3)的值是。
(用二进制表示)
11、若fp已正确定义为一个文件指针,要以只读打开打开C盘根目录下的二进制文件d1.dat,请填空:
fp=fopen( );
12、以下程序实现通过学号(0~3)查找某个学生的所有成绩输出,空中要将一个行指针转化成普通指针。
floatscore[][4]={{60,70,80,90},{56,89,67,88},{34,78,90,66}};
float*search(float(*pointer)[4],intn),*p;
inti,m;
Enterthenumberofstudent:
"
);
scanf("
m);
ThescoresofNo.%dare:
m);
p=search(score,m);
for(i=0;
4;
printf("
%5.2f\t"
*(p+i));
float*search(float(*pointer)[4],intn)
{float*pt;
pt=;
return(pt);
四编程题(共24分)
1、编程计算1-1/2+1/3-1/4+1/5-………..-1/100的值。
并画出N-S流程图(10分)
2、写一个递归函数实现阶乘n!
然后在主函数中调用该函数实现1!
+2!
+3!
+…….10!
(8分)
3、通过键盘输入十个整数,找出其中最小的正数(6分)
第6页共8页