试卷详情
-
二级C语言笔试-333
-
[单项选择]结构化程序设计主要强调的是
A. 程序的规模
B. 程序的易读性
C. 程序的执行效率
D. 程序的可移植性
-
[填空题]对于软件测试,从是否需要执行被测软件的角度,可以分为静态测试和动态测试。代码检查属于______测试。
-
[填空题]若有以下程序
main( )
char a;
a=’H’-’A’+’0’;
printf("%c/n",a);
执行后输出的结果是______。
-
[填空题]以下程序中,for循环体执行的次数是______。
#define N 2
#define M N+1
#define K M+1*M/2
main( )
int i;
for (i-1;i<K;i++)
...
...
-
[单项选择]在进行单元测试时,常用的方法是
A. 采用白盒测试,辅之以黑盒测试
B. 采用黑盒测试,辅之以白盒测试
C. 只使用白盒测试
D. 只使用黑盒测试
-
[填空题]以下程序的输出结果是______。
main( )
int a=0;
a+- (a=8);
printf ("%d/n" , a);
-
[单项选择]有以下程序
main ( )
int x[] = {1, 3, 5, 7, 2, 4, 6, 0
-
[单项选择]以下叙述中正确的是
A. C语言的源程序不必通过编译就可以直接运行
B. C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C. C源程序经编译形成的二进制代码可以直接运行
D. C语言中的函数不可以单独进行编译
-
[填空题]以下程序的输出结果是______。
main( )
char *p-"abcdefgh",*r;
long *q;
q=(long*)p;
q++;
r=[char*)q;
printf("%s/n",r);
-
[填空题]已有文本文件test.txt,其中的内容为:Hello,everyone!。以下程序中,文件test.txt已正确为“读”而打开,由此文件指针fr指向文件,则程序的输出结果是______。
#include <stdio.h> main( ) FILE *fr; char str[40];
fgets(str,5,fr);
printf("%s/n,,str);
fclose(fr);
-
[单项选择]若程序中已包含头文件stdio.h,以下选项中,正确运用指针变量的程序段是
A. int *i = NULL;
B. float *f = NULL;
C. char t = ’m’, *c = &t;
D. long *L;
-
[填空题]若有语句
int i=-19,j=i%4;
printf("%d/n", j),
则输出的结果是______。
-
[单项选择]用C语言编写的代码程序
A. 可立即执行
B. 是一个源程序
C. 经过编译即可执行
D. 经过编译解释即可执行
-
[填空题]一个项目具有一个项目主管,一个项目主管叫‘管理多个项目,则实体“主管”与实体“”的联系属于______。
-
[单项选择]设有定义: int a=2,b=3,c=4;, 则以下选项中值为0的表达式是
A. (!a==1)&&(!b==0)
B. (a<b)&& !c‖1
C. a && b
D. all(b+b)&&(c-
-
[单项选择]以下定义语句中正确的是
A. char a=’A’ b=’B’;
B. float a=b=10.0;
C. int a=10,*b=&a;
D. float *a,b=&a;
-
[单项选择]下列叙述中正确的是
A. 线性表是线性结构
B. 栈与队列是非线性结构
C. 线性链表是非线性结构
D. 二叉树是线性结构
-
[单项选择]用黑盒技术测试用例的方法之一为
A. 因果图
B. 逻辑覆盖
C. 循环覆盖
D. 基本路径测试
-
[单项选择]有以下程序
int f1[int x.int y){ return x>yx:y; }
int f2(int x, int y){ returrnx>yy:x; }
main ( )
{
int a=4,b=3, c=5, d=2, e, f, g;
e = f2(f1(a,b
-
[单项选择]实体联系模型中实体与实体之间的联系不可能是
A. 一对一
B. 多对多
C. 一对多
D. 对零
-
[单项选择]有以下程序
main ( )
{ char a,b,c,d;
scanf ("%c, %c, %d, %d" , &a, &b, &c, &d);
printf("%c,%c,%c,%c/n",a,b,c,d);
}
若运行时从键盘上输入:6,5,65,66<回车>。则输出结果是
A. 6,5,A,B
B. 6,5,65,66
C. 6,5,6,5
D. 6,5,6,6
-
[单项选择]设有以下语句:
typedef struct S
{ int g; char h; } T;
则下面叙述中正确的是
A. 可用S定义结构体变量
B. 可以用T定义结构体变量
C. S是struct类型的变量
D. T是structs类型的变量
-
[单项选择]在关系数据库模型中,通常可以把( )称为属性,其值称为属性值。
A. 记录
B. 基本表
C. 模式
D. 字段
-
[填空题]以下程序运行后的输出结果是______。
struct NODE
int hum;
struct NODE *next;
;
main ( )
struct NODE s[3]=1, ’/0’ ,2, ’/0’ ,3, ’/0’ ,*p,*q,*r;
int sum=0:
s[0].next=s+1;
s[1].next=s+2;
s[2].next=s:
p=s;
q=p->next;
r=q->next;
sum+=q->nexs->num;
sum+=r >next->next->num:
prlntf("%d/n",sum ;
-
[单项选择]有以下程序
int fa(int x)
{ return x*x; }
int fb(int x)
{ return x*x*x; }
int f(int (*f1)( ),int (*f2)( ),int x)
{ return f2(x)-f1(x); }
main( )
{ int i;
i-f(fa, fb,2); printf("%d /n",i);
}
程序运行后的输出结果是
A. 4
B. 1
C. 4
D. 8
-
[单项选择]有以下程序
#include <stdio .h>
main ( )
{ printf("%d/n", NULL); }
A. 0
B. 1
C. -1
D. NULL没定义,出错
-
[填空题]实体联系模型是一种常用的高级概念数据模型,而______是实体联系模型中的核心。
-
[填空题]以下程序的功能是计算: s=1+12+123+1234+12345。请填空。
main( )
int t=0,s=0,i;
for(i=1;i<=5;i++)
t=i+______; s=s+t;
printf("s=%d/n",s);
-
[单项选择]数据库系统的核心是
A. 数据模型
B. 数据库管理系统
C. 数据库
D. 数据库管理员
-
[单项选择]有以下程序:
main ( )
{
char k; int i;
for(i=1;i<3;i++)
{
scanf("%c",&k);
switch(k)
{
case ’0’: printf("another/n");
case ’1’: printf("number/n");
}
}
}
程序运行时,从键盘输入:01<回车>,程序执行后的输出结果是
A. another
B. another
C. another
D. number
-
[单项选择]有以下程序
main ( )
{ char *s[]={"one","two","three/
-
[单项选择]有以下程序
main ( )
{
int aa[4][4]={{1,2,3,4} {5,6,7,8
-
[填空题]以下程序中select函数的功能是: 在N行M列的二维数组中,选出一个最大值作为函数值返回,并通过形参传回此最大值所在的行下标。请填空。
#define N 3
#define M 3
selectint a[N][M],int *n;
int i,j,row=l,eolum=l;
for(i=0;i<N;i++
for j=0;j<M;j++)
if(a[i][j]>a[row][colum])row=i;colum=j:
*n=______;
return______;
main( )
int a[N][M]=9,11,23.6,1,15,9,17,20, max,nj
max=select(a,&n);
printf("max=%d, line=%d/n",max.n ;
-
[填空题]算法的复杂度主要包括空间复杂度和______复杂度。
-
[单项选择]设变量已正确定义,则以下能正确计算f=n!的程序段是
A. f=0;
B. f=1;
C. f=1;
D. f=1;
-
[单项选择]数据库设计的根本目标是要解决
A. 数据共享问题
B. 数据安全问题
C. 大量数据存储问题
D. 倘化数据维护
-
[单项选择]有以下程序
main ( )
{ int i=0,s=0;
do{
if(i%2) {i++;continue; }
i++;
s+=i;
while (i<7);
printf ( "%d/n" , s );
}
执行后输出的结果是
A. 16
B. 12
C. 28
D. 21
-
[单项选择]已定义以下函数:
fun (char* p2, char* p1)
{ while ((*p2=*p1) != ’/0’) {p1++;p2++;} }
A. 将p1所指字符串复制到p2所指内存空间
B. 将p1所指字符串的地址赋给指针p2
C. 对p1和p2两个指针所指字符串进行比较
D. 检查p1和p2两个指针所指字符串中是否有’/0’
-
[单项选择]设有如下定义
struct ss
{ char name[10];
int age;,
char sex;
} std[3],* p=std;
下面各输入语句中错误的是
A. scanf("%d",&(*p).age);
B. scanf("%s",&std.name);
C. sean("%c",&std[0].sex);
D. scanf("%c",&(p->sex));
-
[填空题]以下程序运行后的输出结果是______。
#define S(x) 4*X*x+1
main( )
int i=6,j=8;
printf("%d/n",S(i+i));
-
[单项选择]下面四个选项中,不属于数据库管理系统提供的数据语言的是
A. 数据定义语言
B. 数据查询语言
C. 数据操纵语言
D. 数据控制语言
-
[单项选择]有以下程序
main( )
{
int m=0256,n=256;
printf("%o%o/n",m,n);
}
程序运行后的输出结果是
A. 0256 0400
B. 0256 256
C. 256 400
D. 400 400
-
[填空题]在面向对象方法中,类的实例称为______。
-
[单项选择]设有以下定义和语句
int a[3] [2] ={1,2,3,4,5, 6,
-
[单项选择]有以下程序
main(int arge,char *argv[] )
int n,i=0;
while(argv[1] [i] !=’/0’)
{ n-fun( ); i++;}
printf ( "%d/n" , n*argc);
int fun ( )
{ static int s=0;
s+=1;
return s;
}
假设程序经编译、连接后生成可执行文件exam.exe, 若键入以下命令
exam 123 <回车>
A. 6
B. 8
C. 3
D. 4
-
[单项选择]以下叙述中错误的是
A. 用户所定义的标识符允许使用关键字
B. 用户所定义的标识符应尽量做到“见名知意”
C. 用户所定义的标识符必须以字母或下划线开头
D. 用户定义的标识符中,大、小写字母代表不同标识
-
[单项选择]以下程序中函数f的功能是将n个字符串按由大到小的顺序进行排序。
#include <string.h>
void f(char p[][10], int n)
{
char t[20]; int i,j;
for(i=0;i<n-1;i++)
for(j=i+l;j<n;j++)
if(strcmp (p[i],p[j])<0)
{ strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}
}
main( )
{
char p[][lO]-{"abc","aabdfg","abbd","dcdbe","cd"};int i;
f(p,5); printf("%dkn",strlen(p[0]));
}
程序运{亍后的输出结果是
A. 6
B. 4
C. 5
D. 3
-
[单项选择]有以下程序
void ss(char *s,char t)
{
while { *s)
if (*s==t) *s-t-’a’ +’A’;
S++;
main ( )
{
char strl [100] =" abcddfefdbd" , c= ’d’;
ss(str1,c); printf ("%s/n" ,str1);
}
程序运行后的输出结果是
A. ABCDDEFEDBD
B. abcDDfefDbD
C. abcAAfefAbA
D. Abcddfefdbd
-
[单项选择]以下叙述十正确的是
A. 全局变量的作用域一定比局部变量的作用域范围大
B. 静态(static)类别变量的生存期贯穿于整个程序的运行期间
C. 函数的形参都属于全局变量
D. 未在定义语句中赋初值的auto变量和static变量的初值都是随机值
-
[单项选择]已定义ch为字符型变量,以下赋值语句中错误的是
A. ch=’/’;
B. ch=62+3;
C. ch=NULL;
D. ch=’/xaa’;
-
[填空题]若有以下程序
main ( )
int a=4,b=3,c=5,t=0;
if(a<b)t=a;a=b;b=t;
if(a<c)t=a;a=c;c=t;
printf("%d %d %dln",a,b,c);
执行后输出结果为______。
-
[单项选择]在面向对象设计中,对象有很多基本特点,其中“从外面看只能看到对象的外部特性,而对象的内部对外是不可见的”这一性质指的是对象的
A. 分类性
B. 标识惟一性
C. 多态性
D. 封装性
-
[单项选择]有以下程序:
main( )
{ int a; char c=10;
float f=100.0; double x;
a=f/=c*=(x=6.5);
printf("%d %d %3.lf %3.lf/n",a,c,f,x);
}
程序运行后的输出结果是
A. 1 65 1 6.5
B. 1 65 1.5 6.5
C. 1 65 1.0 6.5
D. 2 65 1.5 6.5
-
[单项选择]下列选项中不属于算法的特性的是
A. 确定性
B. 可行性
C. 有输出
D. 无穷性
-
[单项选择]有以下程序
struct s
{ int x,y; } data[2]={10,100,20,200};
main( )
struct s *p=data;
printf("%d/n",++(p->x));
程序运行后的输出结果是
A. 10
B. 11
C. 20
D. 21
-
[单项选择](48)~(50)以下程序的功能足:建立一个带有头结点的甲—向链表,并将存储在数组中的字符依次转存到链表的各个结点中,请从与下划线处号码对应的一组选项中选择出正确的选项。
#include <stdlib.h>
struct node
char data; struct node *next: ;
(48) CreatList(char *s)
struct node *h,*p,*q;
h = (struct node *)malloc sizeof(struct node));
p=q=h;
while(*s! =’/0’)
p = (struct node *)malloc(sizeof (struct node));
p->data = (49) ;
q->next = p;
q - (50) ;
S++;
p->next=’/0’;
return h;
main( )
char str[]="link list";
struct node *head;
head = CreatList(str);
A. char*
B. struct node
C. struct node*
D. char
-
[单项选择]以下程序输出结果是
#include <stdio.h>
main ( )
{ int i=0,a=0;
while ( i<2 0 )
{ for(;;)
{ if ((i%10) ==0) break;
else i--;
}
i+=11; a+=i;
}
print f ( "%d/n" ,
A. ;