AB C 2 21 c31 A)选择B)投影C)插入D)连按 10.将E一R图转换为关系模式时,实体和联系都可以表示为州C)· 属性 B)健 C)关系D)域 以下述中的为的序只能解决单 种基本结构组 c C言是 当 D)结构化程序设计是倡模块化的设计方法 12.以下四个程序中,完全正确的是(B)。 A)#include <stdio.h> "proe ming (体programming*/ )e maino {/*产件programming*/ printf("programmingl n"):) include <stdio.h> 产programming刻 printf("programming!n"):) 中不能表示的 制是。D十进制D)二进制 0.活有免义活句:。则费热0 R) ,则表达式+的值为c A)0 B) -20 c) 16.有以下程序:(A) <stdio.h> printf"%d,",b=a十bj: printf("%dn",a=2*b): A01,2B)1,0C)32D)0,0 17.有以下程亦: stdio.h> int al,a2; char cl,c2: scanf("%d%c%d%c",&al,&cl,&a2,&c2) printf("%d,%c,%d,%e",al,cl,a2,c2): 若想通过键盘输入,使得1的值为12,a2的值为34,c1的值为字符,2的值为字符,程序输出结果是:12,34, b则正确的输入格式是以下 代表空格,<CR>代表回车 A)12a34-b<CR> B)12-a-3-b<CR> C)12,a,34,b<CR> D)12a34b<CR> 18.若变量已正确定义,在if(W)printf("%dm”,k)方中,以下不可普代W的是(A
A) 选择 B) 投影 C) 插入 D) 连接 10.将E-R图转换为关系模式时,实体和联系都可以表示为( C )。 A) 属性 B) 键 C) 关系 D) 域 11.以下叙述中错误的是( A )。 A) 使用三种基本结构构成的程序只能解决简单问题 B) 结构化程序由顺序、分支、循环三种基本结构组成 C) C语言是一种结构化程序设计语言 D) 结构化程序设计提倡模块化的设计方法 12.以下四个程序中,完全正确的是( B )。 A) #include <stdio.h> main(); {/*/ programming /*/ printf("programming!\n");} B) #include <stdio.h> main() {/* programming */ printf("programming!\n"); } C) #include <stdio.h> main() {/*/* programming */*/ printf("programming!\n"); } D) include <stdio.h> main() {/* programming */ printf("programming!\n"); } 13.C源程序中不能表示的数制是( D )。 A) 十六进制 B) 八进制 C) 十进制 D) 二进制 14.以下选项中,能用作用户标识符的是( A )。 A) 0 B) 8 8 C) void D) unsigned 15.若有定义语句:int x=10; ,则表达式x-=x+x的值为( C )。 A) 0 B) -20 C) -10 D) 10 16.有以下程序:( A ) #include <stdio.h> main() { int a=1,b=0; printf("%d,",b=a+b); printf("%d\n",a=2*b); A) 1,2 B) 1,0 C) 3,2 D) 0,0 17.有以下程序: #include <stdio.h> main() { int a1,a2; char c1,c2; scanf("%d%c%d%c",&a1,&c1,&a2,&c2); printf("%d,%c,%d,%c",a1,c1,a2,c2); } 若想通过键盘输入,使得a1的值为12,a2的值为34,c1的值为字符a,c2的值为字符b,程序输出结果是:12,a,34, b 则正确的输入格式是(以下 代表空格,<CR>代表回车)( )。 A) 12 a34 b<CR> B) 12 a 34] b<CR> C) 12,a,34,b<CR> D) 12a34b<CR> 18.若变量已正确定义,在if (W) printf("%d\n" ,k ); 中,以下不可替代W的是( A )
A B)ch=getchar() C) a==b十eD)a++ 19.有以下程序段 <stdio.h> int a,b,c: a=10: b=50:c=30: if (a>b)a=b, b-c; c=a 程的 出结果是B de=%din",a,b,c); A) -10h =50c=30B1 =10b=50e=10C)a=10b=30c=10D)a=50b=30c=50 20.下列叙述中正确的是(A A)在switchi语句中,不一定使用break语句 B)在switchi语句中必须使用default C)breaki语句必须与switchi语句中的case配对使用D)breaki语句只能用于switchi语句 21.以下不构成无限循环的语句或语句组是(A) 十}whic(a<=0: whik(): c) n=10 hile ( D)for(n=0,i=1:i+)n+=i 22.有以下程序: de <stdio.h te=0,k fork=1:k<3:k++) switch(k) {default: c+=k: case 2 breaks case 4: c+=2;break; printf("%dn",c): 23.有以下程序 #include <stdio.h> int f(intx,inty) (return((y-x)*x): [inta=3,b=4,c=5,dr d=fa, b).fa 程序运行后的输: 定义语句 C)定义语句中的p只能存放d ublc类型变量的地址 D)定义语句中,*p=&a把变量a的地址作为初值赋给指针变量即 25.若有定义语句:doublex,y,px,*py:执行了px=&x;py=&y:之后,正确的输入语句是(A)。 A)scanf("%lf%le",px,py)B)scanf("%f%f'&x,&y): C) D)scanf("%lf%lf",x,y) int num叫ll int num24 1,2,3,4,5,6 27.有以下程序 ={12,345,631 D)int=(1,2.3.4.5.6):
A) a<>b+c B) ch=getchar() C) a==b+c D) a++ 19.有以下程序段: #include <stdio.h> int a, b, c; a=10; b=50; c=30; if (a>b) a=b, b=c; c=a; printf("a=%d b=%d c=%d\n", a, b, c); 程序的输出结果是( B )。 A) a=10 b=50 c=30 B) a=10 b=50 c=10 C) a=10 b=30 c=10 D) a=50 b=30 c=50 20.下列叙述中正确的是( A )。 A) 在switch语句中,不一定使用break语句 B) 在switch语句中必须使用default C) break语句必须与switch语句中的case配对使用 D) break语句只能用于switch语句 21.以下不构成无限循环的语句或语句组是( A )。 A) n=0; do {++n;} while (n<=0); B) n=0; while (1) { n++;} C) n=10; while (n); {n--;} D) for(n=0,i=1; ; i++) n+=i; 22.有以下程序: #include <stdio.h> main() { int c=0,k; for (k=1;k<3;k++) switch (k) { default: c+=k; case 2: c++;break; case 4: c+=2;break; } printf("%d\n",c); } 程序运行后的输出结果是( C )。 A) 7 B) 5 C) 3 D) 9 23.有以下程序: #include <stdio.h> int f( int x,int y) { return((y-x)*x); } main() { int a=3,b=4,c=5,d; d=f(f(a,b),f(a,c)); printf("%d\n",d); } 程序运行后的输出结果是( D )。 A) 7 B) 10 C) 8 D) 9 24.若有定义语句:double a, *p=&a ; 以下叙述中错误的是( A )。 A) 定义语句中的*号是一个间址运算符 B) 定义语句中的*号是一个说明符 C) 定义语句中的p只能存放double类型变量的地址 D) 定义语句中,*p=&a把变量a的地址作为初值赋给指针变量p 25.若有定义语句:double x, y,*px,*py; 执行了px=&x; py=&y;之后,正确的输入语句是( A )。 A) scanf("%lf %le", px, py); B) scanf("%f %f" &x, &y); C) scanf("%f %f", x, y); D) scanf("%lf %lf",x, y); 26.以下定义数组的语句中错误的是( B )。 A) int num[][3]={ {1,2},3,4,5,6 }; B) int num[2][4]={ {1,2},{3,4},{5,6} }; C) int num[]={ 1,2,3,4,5,6 }; D) int num[][4]={1,2,3,4,5,6}; 27.有以下程序:
#include <stdio.h> void fun(int a,int b) {int t: t=a:a=b:b=t 1 main( {imtc10={1,2,345,6,78,9.0,i for (i0 10 printf"n"): 程序的运行结果是(A)· .有下年7890.244365,87,090)0987265432,)01235678 <stdio.h> imt x3]2]=(0),is for(i=0:i3;+)scanf("%d",xil): prit"%3d%3d%3dn",00,x0,I00: 若运行时输入:246<回车>,则输出结果为(A) 0204B)200c)240D)246 29.有以下程序段: #include <stdio.h> int %2d%oat char name50: 当行述从上X67s后,的值为A C)7777.0D)566777.0 30.下列语句组中,正确的是(A): A)char"s:s="Olympie": B)chars 7l:s="Olympie"t C)char*s; 3.有以下函数Ompie"D)hrs川-Ompi一 return(t-s): 该函数的功能是( 的 32.有以下整 用内存字节的 #include <stdio.h> m码值为97): main( r *s="abe") printf ("%d",*s%10):++s; whic(*s)片 A0789 序运行后的输出结果是(A) C)7890 D)979899 int fun(int k) {if(k<l)return0: e if (k
#include <stdio.h> void fun( int a, int b ) { int t; t=a; a=b; b=t; } main() { int c[10]={1,2,3,4,5,6,7,8,9,0}, i; for (i=0; i<10; i+=2) fun(c[i], c[i+1]); for (i=0;i<10; i++) printf("%d,", c[i]); printf("\n"); } 程序的运行结果是( A )。 A) 1,2,3,4,5,6,7,8,9,0, B) 2,1,4,3,6,5,8,7,0,9, C) 0,9,8,7,6,5,4,3,2,1, D) 0,1,2,3,4,5,6,7,8,9, 28.有以下程序: #include <stdio.h> main() { int x[3][2]={0}, i; for(i=0; i<3; i++) scanf("%d",x[i]); printf("%3d%3d%3d\n",x[0][0],x[0][1],x[1][0]); } 若运行时输入:2 4 6<回车>,则输出结果为( A )。 A) 2 0 4 B) 2 0 0 C) 2 4 0 D) 2 4 6 29.有以下程序段: #include <stdio.h> int j; float y; char name[50]; scanf("%2d%f%s", &j, &y, name); 当执行上述程序段,从键盘上输入55566 7777abc 后,y的值为( A )。 A) 566.0 B) 55566.0 C) 7777.0 D) 566777.0 30.下列语句组中,正确的是( A )。 A) char *s;s="Olympic"; B) char s[7];s="Olympic"; C) char *s;s={"Olympic"}; D) char s[7];s={"Olympic"}; 31.有以下函数: int fun(char *s) { char *t=s; while(*t++); return(t-s); } 该函数的功能是( C ) A) 计算s所指字符串的长度 B) 比较两个字符串的大小 C) 计算s所指字符串占用内存字节的个数 D) 将s所指字符串复制到字符串t中 32.有以下程序(注:字符a的ASCII码值为97) : #include <stdio.h> main() { char *s ={ "abc" }; do { printf ("%d", *s%10); ++s; } while ( *s ); } 程序运行后的输出结果是( A )。 A) 789 B) abc C) 7890 D) 979899 33.设有如下函数定义: #include <stdio.h> int fun( int k ) { if (k<1) return 0; else if (k==1) return 1; else return fun(k-1)+1; }
女说行通用通的:=,写则函数m总共技调用的次数是日】 A)2 o) 34.有以下程序: #include <stdio.h> int f(int); int (intn) 程序运行后的输出结果是(A: .设有定义 8C)7 D)10 omplex int real. unreal;)datal=(1,8),data2; 则以下赋值语句中惜误的是(A)。 A)data2=(2,6: B)data2=datal; C)data2.real=datal.real;D)data2.real=datal.unreal 36,有以下程亦: 5stdin h> struct Sfint n: int a21:) void f(struet S "p) (int i,j,ty for(i=0:kp->n-1;++) forG=i计1:jp->n:j++) if (p->ali]>p->all)t=p>alil p>ali]=p>aljlt P->aljl t) {int i;structS s={10,{2,31,6875,4,10,9: (s) for (i=0:i<s.n:+)printf("%d,"s.alil): 程序运行后的输出结果是(C)。 A)23,1,6,8,7,5,4,10,9,B)10,9,8,7,65,43,2,1,C)1,23,45,6,78.9,10,D)10,9,8,7,61,2,3,45, 37.有以下程序: stdio h> #include <string.h> ee char amel char sex iat soneTU: f(STU a) =ha0,m,85,0 b.name) for(i=0:2)a.scorelil b.scorelilt return a: )in STU c={"Qian",'f,95,92),d: d f(c): printf("%s,%c,%d,%d,"d.name,d.sex,d.score0l,d.scorel1l): printf("%s,%c,%d,%dn",c.name,c.sex,c.score0],c.score[1D: 程序运行后的输出结果是(A)
若执行调用语句:n=fun(3);,则函数fun总共被调用的次数是( B )。 A) 2 B) 3 C) 4 D) 5 34.有以下程序: #include <stdio.h> int f(int n); main() { int a=3,s; s=f(a);s=s+f(a); printf("%d\n",s); } int f(int n) { static int a=1; n+=a++; return n; } 程序运行后的输出结果是( A )。 A) 9 B) 8 C) 7 D) 10 35.设有定义: struct complex { int real,unreal;} data1={1,8},data2; 则以下赋值语句中错误的是( A )。 A) data2=(2,6); B) data2=data1; C) data2.real=data1.real;D) data2.real=data1.unreal; 36.有以下程序: # include <stdio.h> struct S{int n; int a[20]; }; void f(struct S *p) { int i,j,t; for (i=0; i<p->n-1; i++) for (j=i+1; j<p->n; j++) if (p->a[i] > p->a[j]) { t= p->a[i]; p->a[i] = p->a[j]; p->a[j] = t; } } main() { int i; struct S s={10, {2,3,1,6,8,7,5,4,10,9}}; f(&s); for (i=0; i<s.n; i++) printf("%d,", s.a[i]); } 程序运行后的输出结果是( C )。 A) 2,3,1,6,8,7,5,4,10,9, B) 10,9,8,7,6,5,4,3,2,1, C) 1,2,3,4,5,6,7,8,9,10, D) 10,9,8,7,6,1,2,3,4,5, 37.有以下程序: #include <stdio.h> #include <string.h> typedef struct { char name[9]; char sex; int score[2]; } STU; STU f (STU a) { STU b={"Zhao", 'm', 85, 90}; int i; strcpy( a.name, b.name ); a.sex = b.sex; for ( i=0; i<2; i++ ) a.score[i] = b.score[i]; return a; } main() { STU c= { "Qian", 'f', 95, 92 }, d; d = f(c); printf ("%s,%c,%d,%d, ", d.name, d.sex, d.score[0], d.score[1]); printf ("%s,%c,%d,%d\n", c.name, c.sex, c.score[0], c.score[1]); } 程序运行后的输出结果是( A )
A)Zh0,m,85.90,0in,【95.92B)Zha0,m.85.,90,Zha0,m.85,90 C)Qian,E95,92,Qian,[95,92D)0ian,[95.92,Zha0,m,85,90 38.以下关于宏的叙述中正确的是(A), 写半母表示 b=2,c 执行后,c的值为(B)。 A)7B)9C)8D)6 40.有以下程序: <stdio,h2 FILE *fpr int al]={12,3),i,n: fp fopen("dl.dat", for(i=0:i3:+)fprintf(fp,"%d",alil): fprintf(fp,"n"): fclose(fp) Pen("d1.dat" d, n片 fclos %du".) A) D)123 无纸化第四套选择题题库 1.下列数据结构中,属于非线性结构的是(C), A) 循环队列B)带链队列C)二叉树 D)带徒找 双数据的是(B)。, 对 的 A) 队头指针是固定不变的 B)队头指针一定大于队尾指针 C)队头指针二定小于尾指针D)队头指针可以大于尾指针,也可以小于队尾指针 4.算法的空间复杂度是指(A )算法在执行过程中所漏要的计算机存储空间B)算法所处理的数据量 C)算法程序中的语句或指令条教 D)算法在执行过程中所需要的临时工作单元数 ,软件设计中划分模块的一 个准则是(B)· C) 低内聚高精合D)高内聚高精合 D\ 7,件详细设计生产的图如下: 化 C) 》”逐步求精 该国是(C) A)N一S图B)PAD图C)程序流程图D)E一R图 8.数据库管迎系统是(B)。 A)操作系统的一部分B)在操作系统支持下的系统软件C)一种编译系统D)一种操作系统
A) Zhao,m,85,90, Qian,f,95,92 B) Zhao,m,85,90, Zhao,m,85,90 C) Qian,f,95,92, Qian,f,95,92 D) Qian,f,95,92, Zhao,m,85,90 38.以下关于宏的叙述中正确的是( A )。 A) 宏替换没有数据类型限制 B) 宏定义必须位于源程序中所有语句之前 C) 宏名必须用大写字母表示 D) 宏调用比函数调用耗费时间 39.设有以下语句: int a=1, b=2, c; c=a^(b<<2) ; 执行后,c的值为( B )。 A) 7 B) 9 C) 8 D) 6 40.有以下程序: #include <stdio.h> main() { FILE *fp; int a[10]={1,2,3}, i, n; fp = fopen("d1.dat", "w"); for (i=0; i<3; i++) fprintf(fp, "%d", a[i]); fprintf(fp, "\n"); fclose(fp); fp = fopen("d1.dat", "r"); fscanf(fp, "%d", &n); fclose(fp); printf("%d\n", n); } 程序的运行结果是( D )。 A) 321 B) 12300 C) 1 D) 123 无纸化第四套选择题题库 1.下列数据结构中,属于非线性结构的是( C )。 A) 循环队列 B) 带链队列 C) 二叉树 D) 带链栈 2.下列数据结构中,能够按照"先进后出"原则存取数据的是( B )。 A) 循环队列 B) 栈 C) 队列 D) 二叉树 3.对于循环队列,下列叙述中正确的是( D )。 A) 队头指针是固定不变的 B) 队头指针一定大于队尾指针 C) 队头指针一定小于队尾指针 D) 队头指针可以大于队尾指针,也可以小于队尾指针 4.算法的空间复杂度是指( A )。 A) 算法在执行过程中所需要的计算机存储空间 B) 算法所处理的数据量 C) 算法程序中的语句或指令条数 D) 算法在执行过程中所需要的临时工作单元数 5.软件设计中划分模块的一个准则是( B )。 A) 低内聚低耦合 B) 高内聚低耦合 C) 低内聚高耦合 D) 高内聚高耦合 6.下列选项中不属于结构化程序设计原则的是( A )。 A) 可封装 B) 自顶向下 C) 模块化 D) 逐步求精 7.软件详细设计生产的图如下: 该图是( C ) A) N-S图 B) PAD图 C) 程序流程图 D) E-R图 8.数据库管理系统是( B )。 A) 操作系统的一部分 B) 在操作系统支持下的系统软件 C) 一种编译系统 D) 一种操作系统