石油大学华东C语言在线考试文档格式.docx
《石油大学华东C语言在线考试文档格式.docx》由会员分享,可在线阅读,更多相关《石油大学华东C语言在线考试文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
7
20
4(2.0分)
设有定义:
intx=0,y=1,z=1;
则运行表达式:
x=y>
z--后,x,y,z的值分别是()
1,1,1
1,2,0
0,1,1
0,2,0
5(2.0分)
下列程序段的输出结果是()x=9;
while(x>
7){printf(“*”);
x--;
}
****
***
**
*
6(2.0分)
设有定义inta[]={1,5,7,9,11,13},*p=a3;
则*(p-2),*(a4)的值是()
511
19
59
有错误
7(2.0分)
?
?
设有语句:
floatx=1,y;
y=x3/2;
则y的值是()
1
2
2.0
2.5
8(2.0分)
若有如下语句:
int*p1,*p2;
则其中int所指的是()
p1的类型
*p1和*p2的类型
p2的类型
p1和p2所能指向变量的类型
9(2.0分)
intx=10;
x=x-=x-x;
,则执行语句后,x的值为()
30
10
40
10(2.0分)
设有如下定义和执行语句,其输出结果为()inta=3,b=3;
a=--b+1;
printf(“%d%d”,a,b);
32
42
22
23
11(2.0分)
C语言中基本数据类型有()
整型、实型、逻辑型
整型、字符型、逻辑型
整型、实型、字符型
整型、实型、字符型、逻辑型
12(2.0分)
表示x≤0或x≥1的正确的表达式是()
x>
=1||x<
=0
1||x<
=1orx<
=1||x<
13(2.0分)
若有定义:
inta[5];
则a数组中首元素的地址可以表示为()
&
a
a1
a[1]
14(2.0分)
结构化程序设计的三种基本结构是()
顺序结构、选择结构、循环结构
if、switch、break
for、while、do-while
if、for、continue
15(2.0分)
若二维数组a有m列,则a[I][j]元素前的数组元素个数为()
j*mi
i*mj
i*mj-113
i*mj1
16(2.0分)
能将高级语言编写的源程序转换为目标程序的软件是()
汇编程序
编辑程序
解释程序
编译程序
17(2.0分)
计算表达式(x=4*5,x*5),x25的值是()
125
100
45
18(2.0分)
如有以下变量定义:
inta=5,b=6,c=12;
那么下列表达式结果为真的是()
a-b
a>
b
b/c
c%b
19(2.0分)
从变量的作用域来分,可分为全局变量和局部变量,形参是()
局部变量
全局变量
静态变量
动态变量
20(2.0分)
初始化多维数组的语句中,可以默认的是()
最后一个下标界
第1个下标界
第2个下标界
以上都不对
二、读程序题?
答题要求:
读程序,写出程序的执行结果。
21(5.0)
#include<stdio.h>?
#defineS(x)x*x?
voidmain()?
{inta,k=3,m=1;
a=S(k+m);
printf("
%d"
a);
}
字体
字号
点击保存
22(5.0)
#include<stdio.h>?
voidmain()?
{intx=12,y=0;
if(x>=0)?
{if(x>0)y=10;
}?
elsey=-10;
printf(“y=%d\n”,y);
23(5.0)
#include<stdio.h> ?
{inta=4,x=3,y=2,z=1;
(a<x?
a:
z<y?
z:
x));
24(5.0)
intfun(inta,intb)
{if(a>b)return(a);
elsereturn(b);
{intx=3,y=8,z=6,r;
r=fun(fun(x,y),2*z);
r);
12
25(5.0)
{intk=1;
switch(k)?
{case0:
printf("
A"
);
break;
case1:
B"
case2:
I"
case3:
G"
default:
E"
BIG
26(5.0)
intfun(char*s1,char*s2)?
{inti=0;
while(s1[i]==s2[i]&
s2[i]!
='
\0'
)i++;
return(s1[i]=='
&
s2[i]=='
}?
{charp[10]="
abcdef"
q[10]="
ABCDEF"
;
fun(p,q));
三、编程题?
按照题目要求编写程序。
27(10.0)
写一个判断素数的函数。
要求在主函数中输入一个整数并输出相应的判断信息。
#include<
stdio.H>
math.h>
intprime(intm)
{
inti,n;
if(m==1)return0;
n=(int)sqrt((double)m);
for(i=2;
i<
=n;
i++)
if(m%i==0)return0;
return1;
voidmain()
{
intn;
scanf("
&
n);
if(prime(n))
%disaprime.\n"
n);
else
%disnotaprime.\n"
28(10.0)
编程序计算s=1!
-2!
+3!
-4!
+……-10!
,并输出结果。
main()
inti,j,n,sum=0;
for(i=1;
=10;
i++)
n=1;
for(j=1;
j<
=i;
j++)
n*=j;
sum+=n;
}
sum);
29(10.0)
10个评委给出某选手打分,编程实现去掉一个最高分和一个最低分,求最后得分(平均分)
#include<
stdio.h>
{floatscore[10];
floatmin,max,ave;
floatsum=0.0;
inti;
input10score:
\n"
);
for(i=0;
10;
i++)scanf("
%f"
score[i]);
min=score[0];
max=score[0];
i++){
sum=sum+score[i];
if(score[i]>
max)max=score[i];
if(score[i]<
min)min=score[i];
ave=(sum-max-min)/8;
Themax=%f\n"
max);
Themin=%f\n"
min);
Theave=%f\n"
ave);