C语言程序设计专升本.docx
《C语言程序设计专升本.docx》由会员分享,可在线阅读,更多相关《C语言程序设计专升本.docx(9页珍藏版)》请在冰豆网上搜索。
C语言程序设计专升本
平顶山学院
补考
课程:
C语言程序设计(专升本)总时长:
120分钟
1. (单选题)下列是C语言提供的合法的数据类型关键字的是()(本题4.0分)
A.Float
B.long
C.Integer
D.Char
答案:
B
解析:
无
2. (单选题)在以下各组标识符中,合法的标识符是()(本题4.0分)
A.B01
B.table-1
C.0_t
D.k%
答案:
A
解析:
无
3. (单选题)假定x和y为double型,表达式x=2,则y=x+3/2的值是()(本题4.0分)
A.3.500000
B.3
C.2.000000
D.3.000000
答案:
A
解析:
无
4. (单选题)当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是()(本题4.0分)
A.k%2
B.k%2==1
C.(k%2)!
=0
D.!
k%2==1
答案:
D
解析:
无
5. (单选题)为了计算s=10!
(即10的阶乘),则s变量应定义为()(本题4.0分)
A.int
B.unsignedint
C.long
D.以上三种类型均可
答案:
C
解析:
无
6. (单选题)以下不能正确计算代数式0.25sin2(0.5)值的C语言表达式是()(本题4.0分)
A.1/4*sin(1/2)*sin(1/2)
B.sin(0.5)*sin(0.5)/4
C.pow(sin(0.5),2)/4
D.1/4.0*pow(sin(1.0/2),2)
答案:
A
解析:
无
7. (单选题)设有定义:
inta=2,b=3,c=4;则以下选项中值为0的表达式是()(本题4.0分)
A. (!
a==1)&&(!
b==0)
B.(a
c||1
C.a&&b
D.a||(b+b)&&(c-a)
答案:
A
解析:
无
8. (单选题)有以下程序段:
intk=0,a=1,b=2,c=3;
k=a
b:
a;k=k>c?
c:
k;
执行该程序段后,k的值是()(本题4.0分)
A.3
B.2
C.1
D.0
答案:
B
解析:
无
9. (单选题)设该变量已正确定义,则以下能正确计算f=n!
的程序段是()(本题4.0分)
A.f=0;
for(i=1;i<=n;i++)f*=i;
B.f=1;
for(i=1;iC. f=1;
for(i=n;i>1;i++)f*=i;
D.f=1;
for(i=n;i>=2;i--)f*=i;
答案:
D
解析:
无
10. (单选题)
有以下程序:
main()
{ inta[]={2,4,6,8,10},y=0,x,*p;
p=&a[1];
for(x=1;x<3;x++) y+=*(p+x)
printf(“%d\n”,y);
}
程序运行后的输出结果是 ( )
(本题4.0分)
A.10
B.11
C.14
D.15
答案:
C
解析:
无
11. (单选题)以下关于函数的叙述中正确的是()(本题4.0分)
A.每个函数都可以被其它函数调用(包括main函数)
B.每个函数都可以被单独编译
C.每个函数都可单独运行
D.在一个函数内部可以定义另一个函数
答案:
B
解析:
无
12. (单选题)若有语句:
char*line[5];,以下叙述中正确的是()(本题4.0分)
A.定义line是一个数组,每个数组元素是一个基类型为char的指针变量
B.定义line是一个指针变量,该变量可以指向一个长度为5的字符型数组
C.定义line是一个指针数组,语句中的*号称为间址运算符
D.定义line是一个指向字符型函数的指针
答案:
A
解析:
无
13. (单选题) 有如下程序:
#define N 2
#define M N+1
#define NUM 2*M+1
#main()
{inti;
for(i=1;i<=NUM;i++)printf(“%d\n”,i);
}
该程序中的for循环执行的次数是()(本题4.0分)
A.5
B.6
C.7
D.8
答案:
B
解析:
无
14. (单选题)有如下程序段:
int*p,a=10,b=1
p=&a;a=*p+b;
执行该程序段后,a的值为()(本题4.0分)
A.12
B.11
C.10
D.编译出错
答案:
A
解析:
无
15. (单选题)有如下定义:
structperson{charname[9];intage;};
structpersonclass[10]={“Johu”,17,“Paul”,19,“Mary”,18,“Adam16,};
根据上述定义,能输出字母M的语句是()(本题4.0分)
A.prinft(“%c\n”,class[3].mane);
B.pfintf(“%c\n”,class[3].name[1]);
C.prinft(“%c\n”,class[2].name[1]);
D.printf(“%c\n”,class[2].name[0]);
答案:
D
解析:
无
16. (填空题)一个C语言程序总是从___开始执行。
(本题2.0分)
答案:
(1)main(或主函数);
得分点:
未设置
解析:
无
17. (填空题)C语言的标识符只能由大小写字母,数字和下划线三种字符组成,而且第一个字符必须为______。
(本题2.0分)
答案:
(1)字母或下划线;
得分点:
未设置
解析:
无
18. (填空题)设x=2.5,a=7,y=4.7,则x+a%3*(int)(x+y)%2/4为_____。
(本题2.0分)
答案:
(1)2.5;
得分点:
未设置
解析:
无
19. (填空题)如下为闰年的判断条件,须满足如下两个条件之一:
1)能被400整除;
2)能被4整除,并且不能被100整除。
写出如上的条件表达式(设年份为inty):
_____。
(本题2.0分)
答案:
(1)y%400==0||y%4==0&&y%100 !
=0;
得分点:
未设置
解析:
无
20. (填空题)若有定义:
doublex[3][5],则x数组中行下标的最大值为_____,列下标的最大值为_____。
(本题4.0分)
答案:
(1)2;
(2)4;
得分点:
未设置
解析:
无
21. (填空题)函数的实参传递到形参有两种方式:
______和______。
(本题4.0分)
答案:
(1)传值;
(2)传地址;
得分点:
未设置
解析:
无
22. (填空题)C语言中的逻辑运算符共有三种,分别是:
&&、______、______。
(本题4.0分)
答案:
(1)||;
(2)!
;
得分点:
未设置
解析:
无
23. (问答题)
voidmain()
{
inti,j,m,n;
i=8; j=10;
m=++i; n=j++;
printf(“%d,%d,%d,%d”,i,j,m,n);
}
请在此作答:
(本题6.0分)
答案:
9,11,9,10
得分点:
未设置
解析:
无
24. (问答题)
分析以下程序的运行结果。
structs{inta;
floatb;
char*c;
};
main()
{structsx={19,83.5,”zhang”};
structs*px=&x;
printf(“%d,%.2f,%s\n”,x.a,x.b,x.c);
printf(“%d,%.2f,%s\n”,px->a,(*px).b,px->c);
}
请在此作答:
_______
_________
答题标准:
须分成两行书写结果。
(本题6.0分)
25. (问答题)已知某学生5门课成绩,分别为{79,93,83,88,91},
求
(1)求该学生5门课平均分;
(2)查找该学生5门课的最高分,并显示结果。
试写出程序分别实现以上要求。
(本题8.0分)