计算机二级考试 程序设计基础试题及答案三
计算机二级考试 C语言
《程序设计基础》考试试卷三
1. 判断下面标识符中哪个是C语言中合法的用户定义标识符:
A. a-b B. #abd C. typedef D. _max
2. b 在内存中占 个字节,“B”在内存中占 个字节。
A. 1 B. 2 C. 3 D. 4
3. 下列表达式的值哪些不等于0?
A. 2>>1 B. ~a&a C. 1>5 D. a^a
4. 设有一分段函数: x=1 a<b且c=d
x=2 a>=b 则下列程序段哪个是正确的?
A. if(a<b) B. C. if (a>b) D. if (a>=b)
If(c==d) {if (c==d) if (c==d) x=2;
x=1; x=1; x=1; else
else x=2; else x=2;} else x=2; {if(c==d) x=1;}
5. 下列关于switch和break语句的讨论中,只有
A. break语句是switch 语句的一部分
B.在switch语句中可以根据需要使用或不使用break语句
C. switch语句中必须使用break语句
D.以上三种说法都不正确。
6. 若有两条语句:static char x[]=”abcde”;
static char y[]={ a , b , c , d , e };
则下列说法中正确的是:。
A. x数组和y数组长度相同 B. x数组长度大于y数组长度
C. x数组长度小于y数组长度 D. 以上三种说法均错误。
7. 返回值为void的函数,其含义是:A. 调用函数之后,被调用的函数没有返回值;
B. 调用函数之后,被调用的函数不返回
C. 调用函数之后,被调用的函数返回值为任意类型
D. 以上三种说法均不正确。
8. C语言中函数的隐含存储类别是,在一个C源程序文件中,若要定义一个只允许在本源文件中所有函数使用的全局变量,则变量需要使用的存储类别是 。
A. auto B. static C. register D. extern
9. 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c大于0)
s=a;
for(b=1;b<=c;b++) s=s+1;
则与上述程序段功能等价的赋值语句是
A. s=a+b; B. s=a+c; C. s=s+c; D. s=b+c;
10. 以下叙述中不正确的是
A. 在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值。
B. 在C中,在调用函数时,实在参数和对应形参在类型上只需赋值兼容。
C. 在C中,外部变量的隐含类别是自动存储类别。
D. 在C中,函数形参可以说明为register变量。
11. 对于scanf(“A=%d”,&a)语句,输入10的正确的输入形式是: A. a=10 B. A=10 C. 10 D. =10
计算机二级考试 C语言
12. C语言中,运算对象必须是整型的运算符是 。
A. % B. / C. %和/ D. >=
13. 为表示关系x≥y≥z,应使用C语言表达式
A. (x≥y)&&(y≥z) B. (x>=y) and(y>=z) C. (x>=y)&&(y>=z) D. (x>=y)‖(y>=z)
14. 若要求在if后一对圆括号中标式a不等于0的关系,则能正确表示这一关系的表达式是 。
A. a<>0 B. !a C. a=0 D. a
15. 以下说法正确的是。
A. C语言程序总是从第一个定义函数开始执行;
B. 在C语言程序中,要使用的函数必须在main()函数中定义;
C. C语言程序总是从main()函数开始执行;
D. C语言程序的main()函数必须在程序的开始部分。
16.下列描述中不正确的是
A. 字符型数组中可以存放字符串
B. 可以对字符型数组进行整体输入、输出
C. 可以对整型数组进行整体输入、输出
D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值
17. C语言中用于结构化程序设计的三种基本结构是
A. 顺序结构、选择结构、循环结构
B. if、switch、break
C. for、while、do-while
D. if、for、continue
18.若已定义x和y为double类型,则表达式(x=1,y=x+3/2)的值是
A. 1 B. 2 C. 2.0 D. 2.5
19.设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后三位,并将第四位四舍五入的是
A. x=(int)(x*1000+0.5)/1000.0; B. x=(x*1000+0.5)/1000.0;
C. x=x*1000+0.5/1000.0; D. x=(x/1000+0.5)*1000.0;
20. 执行以下程序后,输出结果是A. –1 B. 1 C. 8 D. 0
main()
{ int y=11;
while(--y)
{ y--;}
printf(“%d\n”,y--); }
写出下列程序的执行结果(20分):
1.执行下列程序后,变量I的正确结果是 int I=10;
switch (i){
case 9: i+=1;
case 10: i+=1;
case 11: i+=1;
default: I+=1;}
2. 下面程序的输出结果是
计算机二级考试 C语言
main() { int a[4][4]={{3,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,12,-33,0}};
int i,j,s=0;
for(i=0;i<4;i++)
{ for(j=0;j<4;j++)
{ if(a[i][j]<0) continue;
if(a[i][j]= =0) break;
s+=a[i][j]; } }
printf("%d\n",s);}
3. 下面程序的输出结果是
aaa(char *s) { char *t=s;
while(*t) t++;
return(t-s);}
main() { char b[]={“Hello!”};
printf(“%d\n”,aaa(b));}
4. main()
{ int a[10]={1,2,3,4,5,6,7,8,9,0},*p;
p=a; printf(“%d”,*p); printf(“%d\n”,*(p+8));}输出结果是。
一. 程序改错:找出下列程序存在的错误,并进行改正。(20分)
1、以下程序的功能是:给r输入数据后计算半径为r的圆面积s。
#include <stdio.h>
void main(){
int r;
float s;
scanf("%d",r);
s=PI*r^2;
printf("s=%f\n",s);}
2、以下程序用于计算一个一维数组各元素平方根的和。
#include <stdio.h>
#include <math.h>
void main(){
int a[10],i;
float sum;
for (i=0;i<=10;i++)
scanf(“%d”,&a[i]);
i=0;
while (!(i=9)){
sum+=sqrt(a[i]);
i++;}}
3. 下面的函数是用于求一个3*5的二位数组m的最大元素值。
Max_value(m[3][5])
{ int i,j,max;
max=m[0][0];
for (i=0;i<3;i++)
for (j=0;j<5;j++)
计算机二级考试 C语言
if(m[i][j]<max) max=m[i][j];
return (max);}
4. 下程序是从键盘上输入若干学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。
main()
{ float x,amax,amin;
scanf(“%f”,&x);
amax=x;
amin=x;
while(x<0)
{ if (x>amax) amax=x;
if(x<amin) amin=x;
scanf(“%f”,&x); };
printf(“amax=%f\n amin=%f\n”,amax,amin);}
二. 把以下的程序补完整(10分):
1. 下面的函数pow是求xy的值,请填空:
…… 此处隐藏:3859字,全部文档内容请下载后查看。喜欢就下载吧 ……- 基于PLC控制的航空电镀生产线自动输送
- 中考预测课内外文言文对比阅读2
- 2018-2023年中国商业智能(BI)产业市场
- 中国金融体制改革研究2011new
- 外窗淋水试验方案
- 精益生产(Lean Production)
- 学校安全事故处置和信息报送制度
- Chapter 5 Human Resources Management
- 【小学数学】人教版小学六年级上册数学
- 初中数学解题方法与技巧
- 山东省创伤中心建设与管理指导原则(试
- 函数与数列的极限的强化练习题答案
- 10分钟淋巴按摩消脂
- 网络应急演练预案
- 服装设计入门基础知识
- 初二数学分式计算题练习
- (人教新课标)高二数学必修5第二章 数列
- 最新自主创业项目
- 北京大学 无机化学课件 4第4章 配合物
- 贸易公司业务管理制度




