《c语言笔试题》word版.doc
C语言模拟试题一一填空题1在一棵二叉树上第5层的结点数最多是_。 BA、8 B、16 C、32 D、15 2数据库系统的核心是_。BA、数据模型B、数据库管理系统C、软件工具D、数据库3以下数据结构中不属于线性数据结构的是_。CA、队列B、线性表C、二叉树D、栈4在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是_。BA、可行性分析B、需求分析C、详细设计D、程序编码5下面描述中,符合结构化程序设计风格的是_。CA、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B、模块只有一个入口,可以有多个出口C、注重提高程序的执行效率D、不使用goto语句6下面概念中,不属于面向对象方法的是_。DA、对象B、继承C、类D、过程调用7在软件开发中,下面任务不属于设计阶段的是_。DA、数据结构设计B、给出系统模块结构C、定义模块算法D、定义需求并建立系统模型8下面叙述正确的是_。CA、算法的执行效率与数据的存储结构无关B、算法的空间复杂度是指算法程序中指令(或语句)的条数C、算法的有穷性是指算法必须能在执行有限个步骤之后终止D、以上三种描述都不对9下列模式中,能够给出数据库物理存储结构与物理存取方法的是_。AA、内模式B、外模式C、概念模式D、逻辑模式10下列叙述中正确的是_。 CA、数据库是一个独立的系统,不需要操作系统的支持B、数据库设计是指设计数据库管理系统C、数据库技术的根本目标是要解决数据共享的问题D、数据库系统中,数据的物理结构必须与逻辑结构一致11请读程序片段(字符串内没有空格字符): printf("%dn",strlen("ATSn0121") );上面程序片段的输出结果是_。 CA、11 B、10 C、9 D、8 12请读程序: #include <stdio.h> int a =2,4,6,8,; main( ) int i; int *p=a; for( i=0;i<4;i+) ai=*p+; printf("%dn",a2); 上面程序的输出结果是_。AA、6B、8C、4D、213以下程序的输出结果是_。A main() int n=4; while(n-)printf("%d ",-n); A、2 0B、3 1C、3 2 1D、2 1 014以下选项中,能定义s为合法的结构体变量的是_。BA、typedef struct abc double a; char b10; s;B、struct double a; char b10; s;C、struct ABC double a; char b10; ABC s; D、typedef ABC double a; char b10; ABC s;15设有如下的程序段 char str="Hello" char *ptr; ptr=str;执行完上面的程序段后,*(ptr+5)的值为_。BA、'o' B、'0' C、不确定的值 D、'o'的地址 16请选出以下程序的输出结果_。C #include <stdio.h> sub(int *s,int y) static int t=3; y=st;t-; main() int a=1,2,3,4,i, x=0; for(i=0;i<4;i+) sub(a,x);printf("%d",x); printf("n"); A、1234B、4321C、0000D、444417以下程序的输出结果是_。 C #include <stdio.h> main() int i; for(i=1;i<5;i+) if(i%2) printf("*"); else continue; printf("#"); printf("$n"); A、*#*#*#$ B、#*#*#*$ C、*#*#$ D、#*#*$18 请读程序: #include <stdio.h> main() int a, b ; for(a = 1 , b = 1 ; a <= 100 ; a+) if(b >= 20) break ; if (b%3 = 1) b += 3 ; continue ; b -= 5 ; printf("%dn", a) ; 上面程序的输出结果是_。 BA、7B、8C、9D、1019设有以下语句 char a=3,b=6,c; c=ab<<2;则c的二进制值是_。AA、00011011 B、00010100 C、00011100 D、00011000 20下面程序的输出是_。Bint m=13;int fun2(int x,int y) int m=3; return(x*y-m); main( ) int a=7,b=5; printf("%dn",fun2(a,b)/m);A、1B、2C、7D、1021若x是int型变量,且有下面的程序片段for(x=3;x<6;x+) printf(x%2)?("*%d"):("#%dn"),x);上面程序片段的输出结果是_。D *3 #3 #3 *3#4 #4 *4 *4#5 *5 *5 #5A、B、C、D、22请选出可用做C语言用户标识符的一组标识符_。B void a3_b3 For 2a define _123 _abc DO WORD IF case sizeofA、B、C、D、23下面各语句行中,能正确进行给字符串赋值操作的语句行是_。C A、char st45="ABCDE" B、char s5='A','B','C','D','E' C、char *s="ABCDE" D、char *s; scanf("%s",*s); 24以下程序的输出结果是_。Bmain( ) int w=5; fun(w); printf("n"); fun(int k) if(k>0) fun(k-1); printf("%d",k);A、5 4 3 2 1B、0 1 2 3 4 5C、1 2 3 4 5D、5 4 3 2 1 025以下程序的输出结果是_。 Cmain() int a=-1,b=1, k; if(+a<0)&&!(b-<=0) printf("%d %dn",a,b); else printf("%d %dn",b,a);A、-1 1B、0 1C、1 0D、0 026请读程序: #include <stdio.h> func(int a, int b) int c; c=a+b; return c; main( ) int x=6,y=7,z=8,r; r=func(x-,y+,x+y),z-); printf("%dn", r); 上面程序的输出结果是_。CA、11B、20C、21D、3127有以下程序 main() int c; while(c=getchar() )!='n') switch(c-'2') case 0: case 1: putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); default:putchar(c+2);break; 从第一列开始输入以下数据,代表一个回车符。2473程序的输出结果是_。AA、668977 B、668966 C、66778777 D、6688766 28设有 static char str="Beijing"则执行 printf("%dn",strlen(strcpy(str,"China") ) );后的输出结果为_。 AA、5 B、7 C、12 D、14 29执行下面程序中的输出语句后, main() int a; printf("%dn",(a=3*5,a*4),a+5); a的值是_。AA、15 B、20 C、10 D、6030请选出以下程序段的输出结果_。C #include <stdio.h> #define MIN(x,y) (x<y)?x:y main() int i,j,k; i=10;j=15; k=10*MIN(i,j); printf("%dn",k); A、15B、100C、10D、15031已知字符0的ASCII码为十六进制的30,下面程序 main() union unsigned char c; unsigned int i4; z; z.i0=0x39; z.i1=0x36; printf("%cn",z.c); 的输出是_。B A、6 B、9