全国计算机等级考试二级c语言模拟试卷及答案
公共基础知识
一、选择题
一、选择题
(1)下列关于栈的叙述正确的是
A)栈是非线性结构 B)栈是一种树状结构
C)栈具有先进先出的特征 D)栈具有后进先出的特征
(2)结构化程序设计所规定的三种基本控制结构是
A)输入、处理、输出 B)树形、网形、环形
C)顺序、选择、循环 D)主程序、子程序、函数
A)栈是非线性结构 B)栈是一种树状结构
C)栈具有先进先出的特征 D)栈具有后进先出的特征
(2)结构化程序设计所规定的三种基本控制结构是
A)输入、处理、输出 B)树形、网形、环形
C)顺序、选择、循环 D)主程序、子程序、函数
(3)结构化程序设计的一种基本方法是
A)筛选法 B)递归法 C)归纳法 D)逐步求精法
A)筛选法 B)递归法 C)归纳法 D)逐步求精法
(4)如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性
个数少于原来关系中属性个数,这说明所实施的运算关系是:A)选择 B)投影 C)连接 D)并
二、填空题
1.对于输入为N个数进行快速排序算法的平均时间复杂度是( )
二、填空题
1.对于输入为N个数进行快速排序算法的平均时间复杂度是( )
2.在面向对象方法学中,直接反映了用户对目标系统的要求的模型是( )
3.软件测试方法中,黑盒测试个白盒测试法是常用的方法,其中黑盒测试法主要是用于测试( )
4.关系型数据库管理系统中存储与管理数据的基本形式是( )
4.关系型数据库管理系统中存储与管理数据的基本形式是( )
C语言程序设计
一、选择题
(1)以下程序的输入结果是
main( )
{ int i=010,j=10,k=x10;
printf("%d,%d,%d ",i,j,k);
}
A)8,10,16 B)8,10,10 C)10,10,10 D)10,10,16
(2)指针s所指字符串的长度
char *s=" "Name Address ";
A)说法不合法 B)19 C)18 D)15
(3)C语言中最简单的数据类型包括
A)整型、实型、逻辑型 B)整型、实型、字符型
C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型
main( )
{ int i=010,j=10,k=x10;
printf("%d,%d,%d ",i,j,k);
}
A)8,10,16 B)8,10,10 C)10,10,10 D)10,10,16
(2)指针s所指字符串的长度
char *s=" "Name Address ";
A)说法不合法 B)19 C)18 D)15
(3)C语言中最简单的数据类型包括
A)整型、实型、逻辑型 B)整型、实型、字符型
C)整型、字符型、逻辑型 D)整型、实型、逻辑型、字符型
(4)为表示关系x大于等于y大于等于z,应使用计算机二级c语言选择题库C语言表达式
A)(x>=Y)&&(Y>=z) B)(x>=Y)AND(y>=z) C)(x>=Y>=z) D)(x>=Y)&(Y>=z)
(5)下列对C语言字符数组的描述中错误的是
A)字符数组可以存放字符串 B)字符数组中的字符串可以整体输入、输出
C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D)不可以用关系运算符对字符数组中的字符串进行比较
(6)以下说法中正确的是
A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义
C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分
(7)以下程序段的输出结果是
A)(x>=Y)&&(Y>=z) B)(x>=Y)AND(y>=z) C)(x>=Y>=z) D)(x>=Y)&(Y>=z)
(5)下列对C语言字符数组的描述中错误的是
A)字符数组可以存放字符串 B)字符数组中的字符串可以整体输入、输出
C)可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D)不可以用关系运算符对字符数组中的字符串进行比较
(6)以下说法中正确的是
A)C语言程序总是从第一个定义的函数开始执行 B)在C语言程序中,要调用的函数必须在main()函数中定义
C)C语言程序总是从main()函数开始执行 D)C语言程序中的main()函数必须放在程序的开始部分
(7)以下程序段的输出结果是
int x=3;
do
{ printf("%3d",x-=2); }
while(!(- -x));
A)1 B)30 C)1 -2 D)死循环
(8)设有如下定义:
char *aa[2]={"abcd","ABCD"};
则以下说法中正确的是
A)aa数组元素的值分别是"abcd"和"ABCD"
B)aa是指针变量,它指向含有两个数组元素的字符型一维数组
C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D)aa数组的两个元素中各自存放了字符'a'和'A'的地址
(9)设有以下定义:
do
{ printf("%3d",x-=2); }
while(!(- -x));
A)1 B)30 C)1 -2 D)死循环
(8)设有如下定义:
char *aa[2]={"abcd","ABCD"};
则以下说法中正确的是
A)aa数组元素的值分别是"abcd"和"ABCD"
B)aa是指针变量,它指向含有两个数组元素的字符型一维数组
C)aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D)aa数组的两个元素中各自存放了字符'a'和'A'的地址
(9)设有以下定义:
int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*prt)[3]=a, * p=a[0];
则下列能够正确表示数组元素a[1][2]的表达式是
A)*((* prt + 1)[2]) B)*(*(p+5)) C)(* prt + 1)+2 D)*(*(a+1)+2)
(10)以下程序的输出结果是
fut( int * *s,int p[2][3])
{ * *s=p[1][1]; }
main( )
{ int a[2][3]={1,3,5,7,9,11},*P;
p=(int * )malloc(sizeof(int));
fut(&p,a);
print("% ",*p);
}
A)1 B)7 C)9 D)11
int (*prt)[3]=a, * p=a[0];
则下列能够正确表示数组元素a[1][2]的表达式是
A)*((* prt + 1)[2]) B)*(*(p+5)) C)(* prt + 1)+2 D)*(*(a+1)+2)
(10)以下程序的输出结果是
fut( int * *s,int p[2][3])
{ * *s=p[1][1]; }
main( )
{ int a[2][3]={1,3,5,7,9,11},*P;
p=(int * )malloc(sizeof(int));
fut(&p,a);
print("% ",*p);
}
A)1 B)7 C)9 D)11
二、填空题
(1)表示条件:10
(2)下列程序的输出结果是( )
#include
main( )
{ char b[ ]="ABCDEFG";
char *chp=&b[7];
while(- -chp>&b[0])
putchar(*chp);
putchar(" ");
}
(3)下列程序的输出结果是( )
int ast( int x,int Y,int * cp,int * dp)
{ * cp=x+y;
(2)下列程序的输出结果是( )
#include
main( )
{ char b[ ]="ABCDEFG";
char *chp=&b[7];
while(- -chp>&b[0])
putchar(*chp);
putchar(" ");
}
(3)下列程序的输出结果是( )
int ast( int x,int Y,int * cp,int * dp)
{ * cp=x+y;
* dp=x-y;
}
main( )
{ int a,b,c,d;
a=4;b=3;
ast(a,b,&c,&d);
print("% d % d n",c,d);
}
(4)阅读程序:
main( )
{ char str1[ ]="how do you do",str2[10];
char *p1=str1,*p2=str2;
scanf("% s",p2);
printf("%s",p2);
}
main( )
{ int a,b,c,d;
a=4;b=3;
ast(a,b,&c,&d);
print("% d % d n",c,d);
}
(4)阅读程序:
main( )
{ char str1[ ]="how do you do",str2[10];
char *p1=str1,*p2=str2;
scanf("% s",p2);
printf("%s",p2);
printf("%s ",p1);
}
运行上面的程序,输入字符串 HOW DO YOU DO 则程序的输出结果是( )
(5)以下程序由终端键盘输入一个文件名,然后把从终端键盘输入的字符依次存放到该文件中,用#作为结束输入的标志。请填空。
#include
main( )
{ FILE * fp;
char ch,fname [10];
printf("Input the name of file ");
gets(fname);
gets(fname);
if((fp=[5])= =NULL)
{ printf("Cannot open "); exit(0); }
}
运行上面的程序,输入字符串 HOW DO YOU DO 则程序的输出结果是( )
(5)以下程序由终端键盘输入一个文件名,然后把从终端键盘输入的字符依次存放到该文件中,用#作为结束输入的标志。请填空。
#include
main( )
{ FILE * fp;
char ch,fname [10];
printf("Input the name of file ");
gets(fname);
gets(fname);
if((fp=[5])= =NULL)
{ printf("Cannot open "); exit(0); }
printf("Enter data ");
while((ch=getchar())!='#')
fputc([6],fp);
fclose(fp);
}
while((ch=getchar())!='#')
fputc([6],fp);
fclose(fp);
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论