XY系统 功能!门 功能2 功使3 功能21 功能22 功能23 )浅系能总体结构的深度 6程序调试的在务是)3) D) 9 A)设计测试用例B)验证程序的正确性C)发现程序中的错误D)诊断和政正程序中的错误 7.下列关于数据库设计的叙述中,正确的是(A) 在漏求分析阶段建立最据字典B))在摄念设计阶段建立数据字典 在逻辑设计阶段建立数据字典 D)在物理设计阶段建立数据字典 则由关系R和S得到关系T的操作是A) A B C 12 12 c31 b21 b21 e31 A)自然连接B)并C)交D)禁 10.下列选项中属于面向对象设计方法主要特征的是(A)。 A 继承 B)自顶向下 C)模块化D)逐步求精 11.以下叙述中正确的是(C) C语言程序将从源程序中第 一个函数开始执行 可以在程卉中由用户指定任意一 数作为注将从此开始执行 在此结束 A) B) D)LINE-3 13.执行以下程序时输入1234567<CR>,则输出结果是(D), #include stdio.h 0n- bi scan %d%din", a A)12367B)12346 C)12312D)12345 14.以下选项中,不能作为合法常量的是(C): 有设下程序,共中来示按无符号 B) 1.234e+5 C71.234e0.5 D)1.234e0 程序运行后的输出结果是(B), A -1B)65535 C)32767 D)0xFFFF {inta,b,k:
该系统总体结构图的深度是( C )。 A) 7 B) 6 C) 3 D) 2 6.程序调试的任务是( D )。 A) 设计测试用例 B) 验证程序的正确性 C) 发现程序中的错误 D) 诊断和改正程序中的错误 7.下列关于数据库设计的叙述中,正确的是( A )。 A) 在需求分析阶段建立数据字典 B) 在概念设计阶段建立数据字典 C) 在逻辑设计阶段建立数据字典 D) 在物理设计阶段建立数据字典 8.数据库系统的三级模式不包括( D )。 A) 概念模式 B) 内模式 C) 外模式 D) 数据模式 9.有三个关系R、S和T如下: 则由关系R和S得到关系T的操作是( A )。 A) 自然连接 B) 并 C) 交 D) 差 10.下列选项中属于面向对象设计方法主要特征的是( A )。 A) 继承 B) 自顶向下 C) 模块化 D) 逐步求精 11.以下叙述中正确的是( C )。 A) C语言程序将从源程序中第一个函数开始执行 B) 可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行 C) C语言规定必须用main作为主函数名,程序从此开始执行,在此结束 D) main作为用户标识符,用以命名任意一个函数作为主函数 12.下列是用户自定义标识符的是( A )。 A) w1 B) 3 xy C) int D) LINE-3 13.执行以下程序时输入1234567<CR>,则输出结果是( D )。 #include<stdio.h> main(){int a=1,b; scanf("%3d%2d",&a,&b); printf("%d%d\n",a,b); } A) 12367 B) 12346 C) 12312 D) 12345 14.以下选项中,不能作为合法常量的是( C )。 A) 1.234e05 B) 1.234e+5 C) 1.234e0.5 D) 1.234e0 15.有以下程序,其中%u表示按无符号整数输出 main(){ unsigned int x=0xFFFF; /* x的初值为十六进制数 */ printf("%u\n ",x); } 程序运行后的输出结果是( B )。 A) -1 B) 65535 C) 32767 D) 0xFFFF 16.当用户要求输入的字符串中含有空格时,应使用的输入函数是( C )。 A) scanf() B) getchar() C) gets() D) getc() 17.若执行下面的程序时,从键盘输入6和2,则输出结果是( C )。 main() { int a,b,k;
scanf("%d,%d",&a,&b): k=a; i道a<b)k=a%b: B)3 8 D)0 18.有以下程序 fun(intx) int p: if(x==0==1)return(3); p=x一un(x一2)H return p: mainO 布后的出结果地。 printf(%dn",fun(T:} 19已有定义日 :char c,程序前 令行中包含cypeh文件,不能用于判断c中的字符是否为大写字母的表达式是 (B) C)A'<=c&&c<=Z D)c<=(Y·-32)&&(' 一32<=c 超0那oa,执行an62%6,a,片者商时。若从适煮入876定格>8540 B ) 21.有以下定义: 00B)87和6.00 000 c) 87和54 00 g0 中正 D)76和543.000000 B)。 A) R) c n) 的 面程序时, 从健盘输入字母,则输出结果是(C 0 switch(ch) (case H printf("Hellol n"); case G:printf("Good morning!In"): default:printf("ByeBye!In"); A)Hello! B)Hello! Good Moringl D) Hello! Bye Byel Good morning! 23.有以下程序: #include<stdio.h> main( char sll="012x4y 08s34f4w2": inti,n=0 fori=0:s!=0:i++) if(slip= 0&&s=9)m++: printf("%dn",n): 程序运行后的输出结果是C)·
scanf("%d,%d",&a,&b); k=a; if(a<b)k=a%b; else k=b%a; printf("%d\n",k);} A) 5 B) 3 C) 2 D) 0 18.有以下程序: fun(int x) { int p; if(x==0||x==1) return(3); p=x-fun(x-2); return p; } main() { printf("%d\n",fun(7));} 执行后的输出结果是( C )。 A) 7 B) 3 C) 2 D) 0 19.已有定义:char c;,程序前面已在命令行中包含ctype.h文件,不能用于判断c中的字符是否为大写字母的表达式是 ( B ) A) isupper(c) B) 'A' <=c<= 'Z' C) 'A' <=c&&c<= 'Z' D) c<=( 'z'' -32)&&( 'a' -32)<=c 20.设有定义int a;float b;,执行scanf("%2d%f",&a,&b);语句时,若从键盘输入876<空格> 854.0<回车>,a和b 的值分别是( B )。 A) 876和543.000000 B) 87和6.000000 C) 87和543.000000 D) 76和543.000000 21.有以下定义:int a;long b;double x,y;则以下选项中正确的表达式是( B )。 A) a%(int)(x-y) B) a=x!=y; C) (a*y)%b D) y=x+y=x 22.运行下面程序时,从键盘输入字母H,则输出结果是( C )。 #include<stdio.h> main() { char ch; ch=getchar(); switch(ch) {case H :printf("Hello!\n"); case G :printf("Good morning!\n"); default:printf("Bye Bye!\n"); } } A) Hello! B) Hello! Good Moring! C) Hello! D) Hello! Bye Bye! Good morning! Bye Bye! 23.有以下程序: #include<stdio.h> main() { char s[]="012x4y\08s34f4w2"; int i,n=0; for(i=0;s[i]!=0;i++) if(s[i]>= '0' && s[i]<= '9' )n++; printf("%d\n",n); } 程序运行后的输出结果是( C )
A)0B)3 C)4 D)7 24.有以下程序 int a=0 d=3: printf("%d,%d,%d,%din",a,b,c,d): 0.0.0.3 C)1,1,2,0D)编译有幢 25.定义如下变量和数组 intis imtx3j31={1,2,3,45,6,7,89: 则下面语句的输出结果是(C). fori=0:3:i++) A)print" 只有在 使用的 R) 计与用内存单元的 atie和register 27.有以下程序 #include<stdio.h> int fun(inta,intb)以 (b==0)return a; else return(fun(- main( printf("%din",fun(4,2)) 程序的运行结果是(B): A)1 B)2 c)3 D)4 28.有以下程序: point(char *p)p+=3: main0 {char a41=1,2',3',4"},*p=a: point(p,*p 程序运行后的输出结果是(A): A)1 B)2 c)3 D)4 29.阅读下列程序段,程序的输出结果为州A)。 #include "stdio.h' {imta=5,b=6,c=8,k: k=N(M(a,b),c); printf("%dIn",k): B) C)6 D)8 以下函数 则下面对西数指针的定义和赋值均正确的是A, A)void (pf)O:pf=funt B)void*pfO pf=fun C)void "pfo: *pf=fun: D)void("p)(int,char): pf=&funt 31.有以下程序: #include <stdio.h>
A) 0 B) 3 C) 4 D) 7 24.有以下程序: main() { int a=0,b=0,c=0,d=0; if(a=1) b=1;c=2; else d=3; printf("%d,%d,%d,%d\n",a,b,c,d); } 程序输出结果是( D )。 A) 0,1,2,0 B) 0,0,0,3 C) 1,1,2,0 D) 编译有错 25.定义如下变量和数组: int i; int x[3][3]={1,2,3,4,5,6,7,8,9}; 则下面语句的输出结果是( C )。 for(i=0; i<3; i++) printf(" %d" ,x [2-i] [i]); A) 9 5 1 B) 7 4 1 C) 7 5 3 D) 9 6 3 26.在C语言中,只有在使用时才占用内存单元的变量,其存储类型是( A )。 A) auto和register B) extern和register C) auto和static D) static和register 27.有以下程序: #include <stdio.h> int fun(int a,int b){ if(b==0)return a; else return(fun(--a,--b)); } main(){ printf("%d\n",fun(4,2)); } 程序的运行结果是( B )。 A) 1 B) 2 C) 3 D) 4 28.有以下程序: point(char *p){p+=3;} main(){char a[4]={ '1' , '2' , '3' , '4' },*p=a; point(p); printf("%c\n",*p); } 程序运行后的输出结果是( A )。 A) 1 B) 2 C) 3 D) 4 29.阅读下列程序段,程序的输出结果为( A )。 #include "stdio.h" #define M(X,Y)(X)*(Y) #define N(X,Y)(X)/(Y) main() { int a=5,b=6,c=8,k; k=N(M(a,b),c); printf("%d\n",k);} A) 3 B) 5 C) 6 D) 8 30.设有以下函数: void fun(int n,char *s){ . } 则下面对函数指针的定义和赋值均正确的是( A )。 A) void (*pf)(); pf=fun; B) void *pf(); pf=fun; C) void *pf(); *pf=fun; D) void(*pf)(int,char); pf=&fun; 31.有以下程序: #include <stdio.h>
void fun(int*s,intnl,intn2) inti,j,t: i=nl;j=n2; while(ij)(t=s:s=s:sl=t:i++:j-一;} maino imta10={1,23,4,5,6,7,8,9,0g,k: fun(a,0,3:fun(a,4,9;fun(a,0,9: for(k=0:k<10;k++)printf("%d",a k):printf("n"); 程序的运行结果是(C), A)0987654321B)4321098765C)5678901234 D)0987651234 32.下面结构体的定义语句中,错误的是(B). A)structord (intx:inty:intz):structorda; B) structord (intx:inty:intz )structord as structord (int x:inty:intz )a: oid f(int*)int i=0 for( i<51 mainO(int al5]=(1,23.4,5),i: f(a): for(i=0:i<5:++)printf("%d,"ali) 程序运行后的输出结果是(B)。 A)2,23,45,B)6,23,45,C)1,23,4,5,D)2,3,45,6, 34.有以下程序: dio.h> whik((*a=='*')a十十 mainO{ char un(s,t):puts(t): 程序的运行结果是(C), 专**a*bB)a*b C)a*b****D)ab 35.有以下程序tdio> struct st intx,y:}data2]=(110,2,20); mainO{struct st*p=data; printf("%d,",p->y:printf("%dn",(十十p)->x: 程序的运行结果是(C) A)10.1 B)20.1 )10,2D)20,2 36.有以下程序: int fun(intxll,intn) (static int sum=0,i; for(i=0:in:i++)sum+=xlilg return sum; maino {inta={1,2,3,45,b={6,7,8,9,s=0: s=fun(a,5)+fun(b,4);printf("%d\n",s);
void fun(int *s,int n1,int n2){ int i,j,t; i=n1;j=n2; while(i<j){t=s[i];s[i]=s[j];s[j]=t;i++;j--;} } main(){ int a[10]={1,2,3,4,5,6,7,8,9,0},k; fun(a,0,3); fun(a,4,9); fun(a,0,9); for(k=0;k<10;k++)printf("%d",a[k]); printf("\n"); } 程序的运行结果是( C )。 A) 0987654321 B) 4321098765 C) 5678901234 D) 0987651234 32.下面结构体的定义语句中,错误的是( B )。 A) struct ord {int x;int y;int z;};struct ord a; B) struct ord {int x;int y;int z;}struct ord a; C) struct ord {int x;int y;int z;}a; D) struct {int x;int y;int z;}a; 33.有以下程序: void f(int *q){ int i=0; for( ;i<5;i++)(*q)++; } main(){ int a[5]={1,2,3,4,5},i; f(a); for(i=0;i<5;i++)printf("%d,",a[i]); } 程序运行后的输出结果是( B )。 A) 2,2,3,4,5, B) 6,2,3,4,5, C) 1,2,3,4,5, D) 2,3,4,5,6, 34.有以下程序: #include <stdio.h> void fun(char *a,char *b){ while(*a==' * ' )a++; while(*b=*a){b++;a++;} } main(){ char *s="*****a*b****",t[80]; fun(s,t); puts(t); } 程序的运行结果是( C )。 A) *****a*b B) a*b C) a*b**** D) ab 35.有以下程序: #include <stdio.h> struct st { int x,y;}data[2]={1,10,2,20}; main(){ struct st *p=data; printf("%d,",p->y); printf("%d\n",(++p)->x); } 程序的运行结果是( C )。 A) 10,1 B) 20,1 C) 10,2 D) 20,2 36.有以下程序: int fun(int x[],int n) {static int sum=0,i; for(i=0;i<n;i++)sum+=x[i]; return sum; } main() { int a[]={1,2,3,4,5},b[]={6,7,8,9},s=0; s=fun(a,5)+fun(b,4);printf("%d\n",s);
程序执行后的输出结果是(C)。 A)45 B)50C)60D)55 37.有以下程序: int add(inta,intb)(return(a+b);) (itk,(00,a=5,b=10: 则以下函数调用语句错误的是(C: 38.有 B)k=add(a,b):C)k=*f(a,b):D)k=f(a,b); (intx:int"y:]*pt: int all={1,2),bll=(3,4) struct st c2]=10,a,20,b: 39.有以下程序 D)(pt++)- stdio.h> tring.h char a20 '",bl="IJK" streat(a,b):printi(s\n",a): 程序运行后的输出结果是(B), A)ABCDEOFGOIJK B)ABCDIJK C)JK D)EFGIJK 40.有以下程序: signed char a=2,b=4,c=5,d; d=alb:d&=c:printf("%din",d); 程序运行后的输出结果是(B), A)3 B)4C)5 D)6 无纸化第七套选择题 1下列球中正确的是B A) 循环队列是队列的一种链式存储结构B)循环队列是队列的一种顺序存储结构 循环队列是非线性结构 D)循环队列是一种逻辑结构 2.下列关于线性链表的叙述中,正确的是(C)。 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 各教结点的存储 致,但它们的存储空间必须连实 不要移动表中的元 一课三又树共有25个结点,其中5个是叶子结点,则度为1的结点数为州A) A)16 B110 C)6 n)A 4,在下列模式中,能够给出数据库物理存储结构与物理存取方法的是(B)。 A)外模式B)内模式C)概念模式D)逻辑模式 5在满足实体完整性約束的条件下(A 个关系中应该有 个或多个候选关链字B) 个关系中只能有一个候选关键字 D) 一个关系中可以没有候选关键字
} 程序执行后的输出结果是( C )。 A) 45 B) 50 C) 60 D) 55 37.有以下程序: int add(int a,int b){return(a+b); } main() { int k,(*f)(),a=5,b=10; f=add; . } 则以下函数调用语句错误的是( C )。 A) k=(*f)(a,b); B) k=add(a,b); C) k=*f(a,b); D) k=f(a,b); 38.有以下程序段: struct st { int x;int *y;} *pt; int a[]={1,2},b[]={3,4}; struct st c[2]={10,a,20,b}; pt=c; 以下选项中表达式的值为11的是( C )。 A) *pt->y B) pt->x C) ++pt->x D) (pt++)->x 39.有以下程序(strcat函数用以连接两个字符串): #include<stdio.h> #include<string.h> main(){ char a[20]="ABCD\0EFG\0",b[]="IJK"; strcat(a,b);printf("%s\n",a); } 程序运行后的输出结果是( B )。 A) ABCDE\0FG\0IJK B) ABCDIJK C) JK D) EFGIJK 40.有以下程序: main(){ unsigned char a=2,b=4,c=5,d; d=a|b; d&=c; printf("%d\n",d); } 程序运行后的输出结果是( B )。 A) 3 B) 4 C) 5 D) 6 无纸化第七套选择题 1.下列叙述中正确的是( B )。 A) 循环队列是队列的一种链式存储结构 B) 循环队列是队列的一种顺序存储结构 C) 循环队列是非线性结构 D) 循环队列是一种逻辑结构 2.下列关于线性链表的叙述中,正确的是( C )。 A) 各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致 B) 各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续 C) 进行插入与删除时,不需要移动表中的元素 D) 以上说法均不正确 3.一棵二叉树共有25个结点,其中5个是叶子结点,则度为1的结点数为( A ) A) 16 B) 10 C) 6 D) 4 4.在下列模式中,能够给出数据库物理存储结构与物理存取方法的是( B )。 A) 外模式 B) 内模式 C) 概念模式 D) 逻辑模式 5.在满足实体完整性约束的条件下( A )。 A) 一个关系中应该有一个或多个候选关键字 B) 一个关系中只能有一个候选关键字 C) 一个关系中必须有多关键字个候选 D) 一个关系中可以没有候选关键字 6.则由关系R和S得到关系T的操作是( C )