C程序设计测试卷及答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
题号 一 二 三 四 五 六 总分 得分
考试形式:■闭卷 □开卷 ■笔试 □机试 答卷要求:试卷答案需填写至答题卡内
一、单项选择题(每小题 2 分,共 30 分)
1 2 3 4 5 6 7 8 9 10 D C A B D B D A B A 11 12 13 14 15 D
B
B
C
D
1、下列关于C 语言的叙述中正确的是(D )。 A) C 程序可只能是一个函数
B) 注释说明只能位于一条语句的后面
C) C 程序的运行开始是从第一个函数开始 D) C 程序必须包含一个main()函数 2、C 语言源程序文件经过C 编译程序编译连接之后生成一个后缀为( C )的文件。 A) .c
B) .obj
C) a#10 D) Pad C) .exe D) .bas
C) a#10 D) Pad
3、下列格式符中,可以用于以16进制形式输出整数的是(A )。 A) %x
B) %f
C) %c
D) %d
4、下列标识符中,不合法的用户标识符为( B )。 A) _int
B) a#10
C) abc
D) Pad
5、下面运算符优先级最低的是(D )。 A) !
B) >=
C) %
D) +=
6、若变量已正确定义,执行语句scanf("%d%d%d",&x,&y,&z);时,( B )是正确的输入。 A) 20, 30,40
B) 203040
C) 20,30,40,
D) 20 30 40
7、下列条件语句中,功能与其他语句不同的是 (D )。 A) if(a) printf("%d\n",x); else printf("%d\n",y); B) if(a==0) printf("%d\n",y); else printf("%d\n",x); C) if(a!=0) printf("%d\n",x); else printf("%d\n",y); D) if(a==0) printf("%d\n",x); else printf("%d\n",y);
8、执行语句“for(s=0,i=1;i<=10;i=i+3) s+=i;”后,变量s 、i 的当前值是( A )。
A) 22,13 B) 12,10 C) 22,10 D) 12,13
9、下列各语句定义了数组,其中一个不正确的是( B )。 A) int a[5],b[2][3];
B) char no[30],rec[30,6]; C) int x[]={2,4,6,8,10};
D) int x[10]={1,2,3,4,5};
10、在C 程序中,若对函数类型未加说明,则函数的隐含类型为(A )。 A) int
B) float
C) double
D) void
11、在C 语言程序中,在函数内部定义的变量称为( D )。 A) 动态变量
B) 静态变量
C) 外部变量
D) 内部变量
12、下列语句定义p 为指向float 类型变量d 的指针,其中哪一个是正确的( B )。 A) float d,*p=d;
B) float d,*p=&d; C) float d,p=d;
D) float *p=&d,d;
13、C 语言中字符中的结束标记是(
)。 A) 空格
B) '\0'
C) '\n'
D) '\10'
14、若struct teacher{ int num ;char name[10]; char sex; int age; float score;}teacher1;则变量teacher1所占用的内存字节是( C )。
A) 5 B) 14 C) 19 D) 20 15、以“追加”方式打开文本文件a:\aa.dat,下列语句中哪一个是正确的( D )。 A) fp=fopen("a:\\aa.dat ", "r+"); B) fp=fopen("a:\aa.dat ", "w"); C) fp=fopen("a:\aa.dat ", "r");
D) fp=fopen("a:\\aa.dat ", "a");
二、填空题(每小题 2 分,共 10 分)
1 循环结构
2 1
3
4 4 9 5
#include
1、在C 语言中,程序的结构通常有三种:顺序结构、选择结构和_循环结构_____。
2、设已定义了整型变量a,b,c ,其值分别为a=3,b=2,c=1,则表达式a
3、定义一个整型数组a[5],则下标最大的数组元素为 4 。
4、有程序段:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5]; 则b 中的值是 9 。
5、C 语言提供了 #include 命令用来实现“文件包含”的操作。
广东科技学院2012 — 2013 学年第一学期《C 语言程序设计》期末考试试卷(B 卷)
……………………………装……………………………………………订………………………………线………………………………
三、程序改错题。指出下列程序错误代码并改正,使其能正确运行。(每题有2处错,指出1处得1分,改正得2分,每处 3分,共 12 分)
1、
#include
int main{
int x;
x=3;
printf(“%d”,x)
}
2、
void f(int x){
return x*2.0;
}
int main()
{ double y;
y=f(2);
printf("y=%d\n",y);
}
四、程序分析题,根据下列程序,写出其运行结果。(每小题 4 分,共 12 分)1、
#include
int main()
{ int a=3,b=0,c=1;
printf("%d,%d,%d\n",a,++b,c);
printf("%d,%d,%d\n",a++,b,- -c);
}
输出结果:______
3,1,1
3,1,0
2、
#include
int main()
{ int b[]={1,2,3,4},i,j=1,s=0;
for(i=3;i>=0;i--)
{ s=s+b[i]*j; j=j*10; }
printf("s=%d\n",s);
}
输出结果:______
s=1234
3、
#include
void f(int y,int *x){ y=y+*x; *x=*x+y; }
int main( )
{ int x=2,y=4;
f(y,&x);
printf(“x=%d,y=%d\n”,x,y);
}
输出结果:______
x=8,y=4
五、程序填空题(每空 3 分,共 12 分)