X年3月份全国计算机等级考试二级C语言笔试培训机构复习题-内部


    2021年3月份全国计算机等级考试二级C语言笔试培训机构复题部资料
    选择题
    题A〕B〕C〕D〕四选项中选项正确请正确选项涂写答题卡相应位置答试卷分
    〔1〕防止流程图描述程序逻辑时灵活性提出方框图代传统程序流程图通常种图称
    A)PAD图 B)NS图 C)结构图 D)数流图
    〔2〕结构化程序设计强调
    A)程序规模 B)程序效率 C)程序设计语言先进性 D)程序易读性
    〔3〕模块独立求
    A)模块聚程度量高模块间耦合程度量强
    B)模块聚程度量高模块间耦合程度量弱
    C)模块聚程度量低模块间耦合程度量弱
    D)模块聚程度量低模块间耦合程度量强
    〔4〕需求分析阶段务确定
    A)软件开发方法 B)软件开发工具 C)软件开发费 D)软件系统功
    〔5〕算法穷性指
    A)算法程序运行时间限
    B)算法程序处理数量限
    C)算法程序长度限
    D)算法限户
    〔6〕长度n线性表排序坏情况拟次数n(n1)2排序方法
    A)快速排序 B)泡排序 C)直接插入排序 D)堆排序
    〔7〕果进栈序列e1e2e3e4出栈序列
    A)e3e1e4e2 B)e2e4e3e1 C)e3e4e1e2 D) 意序
    〔8〕ER图转换关系模式时实体联系表示成
    A)属性 B)关系 C)键 D)域
    〔9〕三关系RST
    R
    B C D
    a 0 k1
    b 1 n1

    S
    B C D
    f 3 h2
    a 0 k1
    n 2 x1

    T
    B C D
    a 0 k1

    关系RS通运算关系T运算
    A) B)然连接 C)笛卡尔积 D)交
    〔10〕关数库描述正确选项
    A)数处理信息转化数程
    B)数物理独立性指数逻辑结构改变时数存储结构变
    C)关系中列称元组元组字段
    D)果关系中属性属性组非该关系关键字关系关键字称关系外关键字
    〔11〕表达中正确选项
    A)C程序实现算法必须输入输出操作
    B)C程序实现算法没输出必须输入
    C)C程序实现算法没输入必须输出
    D)C程序实现算法没输入没输出
    〔12〕C语言户标识符组
    A)void define WORD B)a3_3_123Car C)For abc IF Case D)2a DO sizeof
    〔13〕选项中作C语言合法常量
    A)80 B)080 C)8e10 D)800e
    〔14〕假设语句char *line[5]表达中正确选项
    A) 定义line数组数组元素基类型char指针变量
    B) 定义line指针变量该变量指长度5字符型数组
    C) 定义line指针数组语句中*号称间址运算符
    D) 定义line指字符型函数指针
    〔15〕定义语句中正确选项
    A)int ab0 B)char A65+1b′b′ C)float a1*b&a*c&b D)double a00b11
    〔16〕程序段
    char ch int k
    ch′a′
    k12
    printf(cdchchk) printf(kd \nk)
    字符aASCII码值97执行述程序段输出结果
    A)变量类型格式描述符类型匹配输出定值
    B)输出项格式描述符数符输出零值定值
    C)a9712k12
    D)a97k12
    〔17〕程序
    main()
    { int is1
    for (i1i<50i++)
    if((i5)&&(i3)) s+i
    printf(d\ns)}
    程序输出结果
    A)409 B)277 C)1 D)91
    〔18〕变量c值246时值真表达式
    A)(c2)||(c4)||(c6)
    B)(c>2&& c<6)||(c3)||(c5)
    C)(c>2&&c<6)&&(c2)
    D)(c>2&& c<6)&&(c21)
    〔19〕假设变量已正确定义程序段
    int a3b5c7
    if(a>b) ab ca
    if(ca) cb
    printf(ddd\nabc)
    输出结果
    A)程序段语法错 B)353 C)355 D)357
    〔20〕程序
    #include
    main()
    { int x1y0a0b0
    switch(x)
    { case 1
    switch(y)
    { case 0a++ break
    case 1b++ break
    }
    case 2a++ b++ break
    case 3a++ b++
    }
    printf(adbd\nab)
    }
    程序运行结果
    A)a1b0 B)a2b2 C)a1b1 D)a2b1
    〔21〕程序输出结果
    #include stdioh
    main()
    { int ia0b0
    for(i1i<10i++)
    { if(i20)
    {a++
    continue}
    b++}
    printf(adbdab) }
    A)a4b4 B)a4b5 C)a5b4 D)a5b5
    〔22〕
    #int t0
    while (t1)
    {}
    表达正确选项
    A)循环控制表达式值0
    B)循环控制表达式值1
    C)循环控制表达式合法
    D)说法
    〔23〕面程序输出结果
    main()
    { int a[10]{12345678910}*pa
    printf(d\n*(p+2))}
    A)3 B)4 C)1 D)2

    〔24〕错误定义语句
    A)int x[][3]{{0}{1}{123}} B)int x[4][3]{{123}{123}{123}{123}}
    C)int x[4][]{{123}{123}{123}{123}} D)int x[][3]{1234}
    〔25〕程序
    void ss(char *schar t)
    { while(*s)
    { if(*st)*st′a′+′A′
    s++ } }
    main()
    { char str1[100]abcddfefdbdc′d′
    ss(str1c) printf(s\nstr1)}
    程序运行输出结果
    A)ABCDDEFEDBD B)abcDDfefDbD C)abcAAfefAbA D)Abcddfefdbd
    〔26〕程序
    main()
    { char ch[2][5]{69378254}*p[2]
    int ijs0
    for(i0i<2i++)p[i]ch[i]
    for(i0i<2i++)
    for(j0p[i][j]>′\0′j+2)
    s10*s+p[i][j]′0′
    printf(d\ns)}
    该程序输出结果
    A)69825 B)63825 C)6385 D)693825
    〔27〕定义语句char s[10]假设终端s输入5字符错误输入语句
    A)gets(&s[0]) B)scanf(ss+1) C)gets(s) D)scanf(ss[1])
    〔28〕表达中错误选项
    A)程序中#开始语句行预处理命令行 B)预处理命令行分号表示结束 C)#define MAX 合法宏定义命令行 D)C程序预处理命令行处理程序执行程中进行
    〔29〕设说明语句
    typedef struct
    { int n
    char ch[8]
    } PER
    面表达中正确选项
    A)PER 结构体变量名 B)PER结构体类型名 C)typedef struct 结构体类型 D)struct 结构体类型名
    〔30〕表达中错误选项
    A)gets函数终端读入字符串 B)getchar函数磁盘文件读入字符
    C)fputs函数字符串输出文件 D)fwrite函数二进制形式输出数文件
    〔31〕正确定义维数组选项
    A)int a[5]{012345} B)char a[]{′0′′1′′2′′3′′4′′5′′\0′} C)char a{′A′′B′′C′} D)int a[5]0123
    〔32〕程序
    #include
    main()
    { char p[]{′a′ ′b′ ′c′}q[10]{ ′a′ ′b′ ′c′}
    printf(dd\nstrlen(p)strlen(q))}
    表达中正确选项
    A) pq数组置初值时系统会动添加字符串结束符输出长度3
    B) p数组中没字符串结束符长度确定q数组中字符串长度3
    C) q数组中没字符串结束符长度确定p数组中字符串长度3
    D) pq数组中没字符串结束符长度确定

    〔33〕程序
    #include
    #include
    void fun(char *s[]int n)
    { char *t int ij
    for(i0ifor(ji+1j if(strlen(s[i])>strlen(s[j])) {ts[i]s[i]s[j]s[j]t}
    }
    main()
    { char *ss[]{bccbbccxyaaaaccaabcc}
    fun(ss5) printf(ss\nss[0]ss[4])
    }
    程序运行结果
    A)xyaaaacc B)aaaaccxy C)bccaabcc D)aabccbcc
    〔34〕程序
    #include
    int f(int x)
    { int y
    if(x0||x1) return(3)
    yx*xf(x2)
    return y
    }
    main()
    { int z
    zf(3) printf(d\nz)
    }
    程序运行结果
    A)0 B)9 C)6 D)8
    〔35〕面程序段运行结果
    char str[]ABC*pstr
    printf(d\n*(p+3))
    A)67 B)0 C)字符′C′址 D)字符′C′
    〔36〕假设定义
    struct link
    { int data
    struct link *next
    } abc*p*q
    变量ab间已图示链表结构


    指针p指变量aq指变量c够c插入ab 间形成新链表语句组
    A)anextc cnextb B)pnextq qnextpnext C)p>next&c q>nextp>next D)(*p)nextq (*q)next&b
    〔37〕述程序方式串分采wtwb运行时两次生成文件TEST长度分
    #include
    void main()
    { FILE *fpfopen(TEST)
    fputc(′A′fp)fputc(′\n′fp)
    fputc(′B′fp)fputc(′\n′fp)
    fputc(′C′fp)
    fclose(fp) }
    A)7字节7字节 B)7字节5字节 C)5字节7字节 D)5字节5字节
    〔38〕变量a中数二进制表示形式01011101变量b中数二进制表示形式11110000假设求a高4位取反低4位变执行运算
    A)a^b B)a|b C)a&b D)a<<4
    〔39〕面程序段运行输出结果
    int ijx0
    static int a[8][8]
    for(i0i<3i++)
    for(j0j<3j++)
    a[i][j]2*i+j
    for(i0i<8i++)
    x+a[i][j]
    printf(dx)
    A)9 B)确定值 C)0 D)18

    〔40〕程序执行输出结果
    void func(int *aint b[])
    { b[0]*a+6 }
    main()
    { int ab[5]
    a0 b[0]3
    func(&ab) printf(d\nb[0])}
    A)6 B)7 C)8 D)9
    二填空题
    请空正确答案写答题卡序号横线答试卷分
    〔1〕测试目暴露错误评价程序性 1 目发现错误位置改正错误
    〔2〕某二叉树中度2结点18该二叉树中 2 叶子结点
    〔3〕循环队列非空队尾指针等队头指针时说明循环队列已满进行入队运算种情况称 3
    〔4〕关系模型中数成二维表二维表称 4
    〔5〕计算机软件系统体系结构中数库理系统位户 5 间
    〔6〕程序输出结果 6
    main()
    { char c′z′
    printf(cc25) }
    〔7〕阅读面语句程序执行结果 7
    #include stdioh
    main()
    { int a1b1k
    if((++a<0)&&(b<0))
    printf(dd\ab)
    else printf(dd\nba)}
    〔8〕程序输出结果 8
    main()
    { int i
    for(i1i+1i++)
    { if(i>4)
    { printf(d\ni)
    break }
    printf(d\ni++)}}
    〔9〕程序定义语句中x[1]初值 9 程序运行输出容 10
    #include
    main()
    { int x[]{12345678910111213141516}*p[4]i
    for(i0i<4i++)
    { p[i]&x[2*i+1]
    printf(dp[i][0])
    }
    printf(\n))
    }
    〔10〕程序输出结果 11
    #include
    void swap(int *a int *b)
    { int *t
    ta ab bt
    }
    main()
    { int i3j5*p&i*q&j
    swap(pq) printf(d d\N*p*q))
    }
    〔11〕程序输出结果 12
    main()
    { char s[]ABCD *p
    for(ps+1 p〔12〕程序输出结果 13
    float fun(int xint y)
    { return(x+y)}
    main()
    { int a2b5c8
    printf(30f\nfun((int)fun(a+cb)ac))}
    〔13〕图示双链表结构请根图示完成结构体定义
    lhead data rchild
    struct aa
    { int data
    14 }node
    〔14〕fseek函数正确调形式 15

    选择题
    (1)B 解析 NS图Nassi Shneiderman 提出种符合程序化结构设计原图形描述工具提出防止流程图描述程序逻辑时意性灵活性
    (2)D 解析 结构化程序设计方法原概括顶逐步求精模块化限制goto语句总说程序结构良易读易理解易维护
    (3)B解析 模块独立程度两定性标准度量耦合性聚性耦合性衡量模块彼间互相赖(连接)紧密程度聚性衡量模块部元素彼结合紧密程度般说求模块间耦合低聚性高
    (4)D 解析 需求分析软件定义时期阶段根务详细调查现实世界处理象(组织部门企业等)充分解原系统工作概况明确户种需求然根底确定新系统功选项A)软件开发方法总体设计阶段需完成务选项B)软件开发工具实现阶段需完成务选项C)软件开发费行性研究阶段需完成务
    (5)A 解析 算法具5特性① 穷性算法必须(合法输入值)执行穷步结束步限时间完成运行时间限② 确定性算法中条指令必须确切含义读者理解时会产生歧义③ 行性算法行算法中描述操作通已实现根运算执行限次实现④ 输入算法零输入输入取某特定象集合⑤ 输出算法输出
    (6)D 解析 坏情况快速排序泡排序直接插入排序需拟次数n(n1)2堆排序需拟次数nlog2n
    (7)B 解析 栈进先出特点知A)中e1e2先出C)中e1e2先出D)中栈先进出意序B)中出栈程图示
    (8)B 解析 关系数库逻辑设计工作ER图转换成指定RDBMS中关系模式首先ER图关系模式转换拟直接实体联系表示成关系ER图中属性转换成关系属性实体集转换成关系
    (9)D 解析 关系运算中交定义设R1R2参加运算两关系具相度n相应属性值取域R1 R2交运算结果度等n关系中交运算结果属R1属R2
    (10)D 解析 数处理指数转换成信息程应选项A)表达错误数物理独立性指数物理结构改变会影响数库逻辑结构应选项B)表达错误关系中行称元组应存储文件中记录关系中列称属性应存储文件中字段应选项C)表达错误
    11)C 解析 算法具5特性穷性确定性行性0输入输出说C程序实现算法没输入必须输出
    (12)B 解析 C语言规定标识符字母数字划线3种字符组成第字符必须字母划线排选项C)D)C语言中规定标识符C语言关键字选项A)中void关键字排选项A)
    (13)A 解析 选项B)项中0开头表示八进制数八进制数取值范围0~7080合法选项C)D)中e面指数必须整数合法
    (14)A 解析 C语言中[ ]*优先级高line先[5]结合形成line[5]形式数组形式5元素然line前面*结合表示数组指针数组数组元素基类型char指针变量
    (15)B 解析 题考查变量定义方法果次进行变量定义间逗号隔开选项A)D)错误选项C)中变量c浮点型指针指浮点型数指指针变量b应选项C)错误
    (16)D 解析 输出格式控制符c表示变量字符形式输出输出格式控制符d表示变量带符号十进制整型数输出第输出语句输出结果a97第二输出语句输出结果k12
    (17)D 解析 题计算50然数相加题中if语句括号中条件表达式(i5)&&(i3)说明时53整数符合相加条件1~ 49间满足条件153045s初始值1s1+15+30+4591
    (18)B 解析 满足表达式(c>2&&c<6)整型变量c值23456变量c值246时值35表达式c3c5中少真c值选项B中表达式真
    (19)B 解析 两if语句判断条件满足程序执行ca条语句变量c值等3变量b值没变化程序输出结果353正确答案B)
    (20)D 解析 题考查switch语句首先x1符合条件case 1执行switch(y)语句y0符合case 0语句执行a++跳出switch(y)语句时a1case 1语句面没break语句执行case 2语句执行a++b++然跳出switch(x)a2b1
    (21)B 解析continue语句作跳次循环体中余尚未执行语句接着次进行循环条件判定2整时a会增1执行continue语句直接执行for循环体结尾进行i++判断循环条件
    (22)B 解析t1t赋值1循环控制表达式值1判断t否等1时应t1注意法
    (23)A 解析 C语言中数组元素0开始指针变量p指数组首址(p+2)会指数组中第3元素题目中求输出元素值
    (24)C 解析 题考查二维数组定义初始化方法C语言中定义初始化二维数组时省略数组第维长度省略第二维长度应选项C)错误
    (25)B 解析 存中字符数ASCII码存储存储形式整数存储形式类似C语言中字符型数整型数间通字符型数进行算术运算时相ASCII码进行算术运算题中s++相ss+1s指数组中元素
    (26)C 解析 该题稍微难点搞清楚点①定义指针数组char *p[2]程序中第循环for(i0i<2i++)p[i]ch[i]作指针数组p[0]元素(身指针)指二维数组ch第行字符串指针数组p[1]元素指二维数组ch第二行字符串样指针数组p二维数组ch建立起种应关系二维数组ch某元素引两种等价形式ch[i][j]p[i][j]②二维数组ch初始化第行ch[0]中存入字符串6937第二行ch[1]中容字符串8254③程序中第二循环中循环体ss*10+p[i][j]'0'功样执行次s中值10(s中数值整体左移动位空出位添0)前p[i][j]中字符量转换相应数字然数字加s位④注意层循环循环条件p[i][j]>'\0 '指p[i][j]中字符字符串结束标志'\0'继续循环语句j+2标j次增加2隔p[i]指字符串中取出字符述解析难出该程序首先p[0]指字符串6937中隔取出字符分'6''3'然p[1]指字符串8254中隔取出字符分'8''5'时转换相加运算结果s中值应该6385
    (27)D 解析 格式输入中求出变量址D)答案中出s[1]值表达式
    (28)D 解析 C语言中预处理命令符号#开头命令程序编译前进行处理选项D)描述错误
    (29)B 解析 题中typedef声明新类型名PER代已类型名PER代表面指定结构体类型时PER定义变量
    (30)B 解析 getchar函数作终端读入字符
    (31)B 解析 选项A)中定义初值数数组长度选项C)中数组名少中括号选项D)中整型数组赋予字符串
    (32)A 解析 pq数组赋初值时系统会动添加字符串结束符题目中出数组pq3字符长度均3
    (33)A 解析 函数fun(char *s[]int n)功字符串数组元素字符串长度排序函数中执行fun(ss5)语句*ss[]{xy bcc bbcc aabcc aaaacc}ss[0]ss[4]输出结果xyaaaacc
    (34)C 解析 函数int f(int x)递函数调x值等01时函数值等3情况yx2f(x2)函数中执行语句zf(3)时y3*3f(32)9f(1)936
    (35)B 解析 考查指字符串指针变量该题中指针变量p指应该该字符串中首址p+3指字符串结束标志'\0'址*(p+3)值0
    (36)D 解析 题考查链表数结构必须利指针变量实现结点中应包含指针变量存放结点址
    (37)B 解析 wt方式写入字符文件转义字符'\n'作两字符处理wb方式写入二进制文件转义字符'\n'字符
    (38)A 解析 题考查位运算知识二进制数1进行异运算会取反0进行异运算会产生变化
    (39)C 解析 题考查二维数组首址标引二维数组元素方法通分析知程序中双重循环定义二维数组
    0 1 2
    2 3 4
    4 5 6

    数组标0开始二维数组元素a[i][j]表示二维数组a第i+1行第j+1列应位置元素
    (40)A 解析 函数参数仅整型实型字符型等数指针型作变量址传递函数中数组名作参数时果形参数组中元素值发生变化实参数组元素值发生变化
    二选择题
    (1)1调试 解析 软件测试目标精心控制环境执行程序发现程序中错误出程序性鉴定调试称排错测试联系区概念具体说测试目暴露错误评价程序性调试目发现错误位置改正错误
    (2)219 解析 意棵二叉树中度0结点(叶子结点)总度2结点
    (3)3 溢 解析 入队运算指循环队列队尾参加新元素运算两根操作首先队尾指针进(rearrear+1)rearm+1时置rear1然新元素插入队尾指针指位置循环队列非空(s1)队尾指针等队头指针时说明循环队列已满进行入队运算种情况称溢
    (4)4 关系 解析 关系模型中数成二维表二维表称关系表中列称属性相记录中数项属性命名称属性名表中行称元组相记录值
    (5)5 操作系统OS 解析 数库理系统数库机构种系统软件负责数库中数组织数操数维护控制保护数效劳位户操作系统间
    (6)6 a 解析 'z'ASCII码值122c25运算97字符形式输出a
    (7)7 10 解析 运算两边语句必须时真时结果真执行完if((++a<0)&&(b<0))时ab值已发生变化
    (8)8 1 3 5 解析 题考查for循环语句break语句题中结束for循环直接跳出循环体外i1时if语句条件满足直接执行printf(d\ni++)输出1时i加1执行第二次for循环时i3样if语句条件满足直接执行printf(d\ni++)输出3时i加1执行第三次for循环时i5if语句条件满足执行printf(d\ni)输出5然break语句跳出for循环

    (9)9 2
    10 2 4 6 8 解析 函数中根整型数组x[]定义知x[1]初值等2for循环语句中i0时p[0]&x[1]p[0][0]2 i1时p[1]&x[3]p[1][0]4i2时p[2]&x[5]p[2][0]6i3时p[3]&x[7]p[3][0]8程序输出结果2468
    (10)11 35 解析 函数swap(int *aint *b)功实现*a*b中两数交换函数中调swap(pq)形参指针变量ab分指ijswap(int *aint *b)执行完指针变量ab分指ji指针变量pq指变量值没发生变化输出结果35
    (11)12 BCD CD D 解析 题考查指字符串指针运算方法指针变量p首先指字符串中第字符A执行ps+1p指字符串中第二字符B然输出值BCD换行次执行循环语句
    (12)13 9 解析 题考查函数综合知识首先利强制转换类型转换运算符表达式转换成需类型(double)aa转换成double类型(int)(x+y)x+y值转换成整型
    题部班逐步运算
    fun((int)fun(a+cb)ac)
    fun((int)fun(105)28)
    fun((int)150000006)
    fun(156)
    9
    (13)14 struct aa *lhead*rchild 解析 结构体链表定义
    (14)15 fseek(文件指针位移量起始点) 解析 题考查函数fseek法fseek函数调形式
    fseek(文件指针位移量起始点)
    起始点012代中0代表文件开始1前位置2文件末尾位移量指起始点基点前移动字节数ANSI C数C版求位移量long型数样文件长度64k时致出现问题ANSI C标准规定数字末尾加字母L表示long型

    选择题
    题A〕B〕C〕D〕四选项中选项正确请正确选项涂写答题卡相应位置答试卷分
    〔1〕程序流程图中带箭头线段表示
    A)图元关系 B)数流 C)控制流 D)调关系
    〔2〕面属软件设计原
    A)抽象 B)模块化 C)底 D)信息隐蔽
    〔3〕选项中属模块间耦合
    A)数耦合 B)标记耦合 C)异构耦合 D)公耦合
    〔4〕表达中属软件需求规格说明书作 A)便户开发员进行理解交流 B)反映出户问题结构作软件开发工作根底
    C)作确认测试验收 D)便开发员进行需求分析
    〔5〕算法时间复杂度指
    A)执行算法程序需时间 B)算法程序长度 C)算法执行程中需根运算次数
    D)算法程序中指令条数
    〔6〕数表A中元素距终位置远节省时间应采算法
    A)堆排序 B)直接插入排序 C)快速排序 D)B)C)
    〔7〕栈底栈顶次存放元素ABCD第五元素E入栈前栈中元素出栈出栈序列
    A)ABCED B)DCBEA C)DBCEA D)CDABE
    〔8〕数库设计包括两方面设计容
    A)概念设计逻辑设计 B)模式设计模式设计 C)模式设计物理设计 D)结构特性设计行特性设计
    〔9〕关系表中横行称
    A)元组 B)字段 C)属性 D)码
    〔10〕设表示学生选课三张表学生S(学号姓名性年龄身份证号)课程C(课号课名)选课SC(学号课号成绩)表SC关键字 (键码)
    A)课号成绩 B)学号成绩 C)学号课号 D)学号姓名成绩
    〔11〕正确表达
    A)C程序中逗号运算符优先级低 B)C程序中APHaph两变量
    C)假设ab类型相计算赋值表达式abb中值放入a中b中值变
    D)键盘输入数时整型变量输入整型数值实型变量输入实型数值
    〔12〕请选出作C语言户标识符
    A)voiddefineWORD B)a3_b3_123IF C)FORabcCase D)2aDoSizeof
    〔13〕选项中作合法常量
    A)1234e04 B)1234e04 C)1234e+4 D)1234e0
    〔14〕C语言中运算象必须整型数运算符
    A) B)\ C)\ D)**
    〔15〕假设变量均已正确定义赋值合法C语言赋值语句
    A)xy5 B)xn25 C)x+ni D)x54+1
    〔16〕程序段
    char ch int k
    ch′a′ k12
    printf(cdchchk) printf(kd \nk)
    字符aASCII码值97执行述程序段输出结果
    A)变量类型格式描述符类型匹配输出定值 B)输出项格式描述符数符输出零值定值
    C)a9712k12 D)a97k12

    〔17〕字母AASCII代码值65假设变量kkchar型正确判断出kk中值写字母表达式
    A)kk>′A′&& kk<′Z′ B)(kk>′A′||kk<′Z′) C)(kk+32)>′a′&&(kk+32)<′Z′ D)isalpha(kk)&&(kk<91)
    〔18〕变量c值246时值真表达式
    A)(c2)||(c4)||(c6) B)(c>2&& c<6)||(c3)||(c5) C)(c>2&&c<6)&&(c2) D)(c>2&& c<6)&&(c21)
    〔19〕假设条件表达式 (exp)a++b表达式中完全等价表达式(exp)
    A)(exp0) B)(exp0) C)(exp1) D)(exp1)
    〔20〕正确定义语句
    A)double x[5]{20406080100} B)int y[5]{013579} C)char c1[]{′1′′2′′3′′4′′5′} D)char c2[]{′\x10′ ′xa′ ′\x8′}
    〔21〕程序执行输出结果
    main()
    { int a[3][3] *pi
    p&a[0][0]
    for(i1 i<9 i++)p[i]i+1
    printf(d\na[1][2])
    A)3 B)6 C)9 D)机数

    〔22〕设程序段
    int x0s0
    while(x0)s+++x
    printf(ds)

    A)运行程序段输出0 B)运行程序段输出1 C)程序段中控制表达式非法 D)程序段执行限次
    〔23〕(23)面程序段运行结果
    char *sabcde
    s+2printf(ds)
    A)cde B)字符′c′ C)字符′c′址 D)确定输出结果

    〔24〕阅读程序执行结果
    #include stdioh
    main()
    { int c[][4]{1234567342135662323123456}
    printf(xx\nc[2][2]*(*(c+1)+1))}
    A)3e6 B)625 C)565 D)3E6

    〔25〕面判断正确选项
    A)char *achina等价 char *a*achina B)char str[5]{china}等价char str[]{china}
    C)char *schina等价 char *sschina D)char c[4]abcd[4]abc等价char c[4]d[4]abc

    〔26〕假设定义int a[2][3]选项中a数组元素正确引
    A)a[2][1] B)a[2][3] C)a[0][3] D)a[1>2][1]
    〔27〕定义语句char s[10]假设终端s输入5字符错误输入语句
    A)gets(&s[0]) B)scanf(ss+1) C)gets(s) D)scanf(ss[1])
    〔28〕程序
    #include
    #define N 5
    #define M N+1
    #define f(x) (x*M)
    main()
    { int i1i2
    i1f(2)
    i2f(1+1)
    printf(d d\ni1i2)
    }
    程序运行结果
    A)12 12 B)11 7 C)11 11 D)12 7
    〔29〕假设说明定义
    union dt
    { int a char b double c}data
    表达中错误选项
    A)data成员起始址相 B)变量data占存字节数成员c占字节数相等
    C)程序段dataa5printf(f\ndatac)输出结果5000000 D)data作函数实参
    〔30〕程序
    #include
    main()
    {FILE *fpint kna[6]{123456}
    fpfopen(d2datw)
    fprintf(fpddd\na[0]a[1]a[2])
    fprintf(fpddd\na[3]a[4]a[5])
    fclose(fp)
    fpfopen(d2datr)
    fscanf(fpdd&k&n)printf(dd\nkn)
    fclose(fp)
    }
    程序运行输出结果
    A)1 2 B)1 4 C)123 4 D)123 456
    〔31〕假设已定义
    int a[]{0123456789} *pai
    中 a数组元素正确引
    A)a[pa] B)*(&a[i]) C)p[i] D)a[10]
    〔32〕程序
    #include
    void fun(int *sint n1int n2)
    { int ijt
    in1 jn2
    while(i}
    main()
    { int a[10]{1234567890}k
    fun(a03) fun(a49) fun(a09)
    for(k0k}
    程序运行结果
    A)0987654321 B)4321098765 C)5678901234 D)0987651234


    〔33〕阅读程序运行函数时输入asd af aa z67输出
    #include
    #include
    #include
    int fun (char *str)
    { int ij0
    for(i0str[i]′ \0′i++)
    if(str[i]′ ′)str[j++]str[i]
    str[j] ′\0′
    }
    main()
    {
    char str[81]
    int n
    printf(Input a string )
    gets(str)
    puts(str)
    fun(str)
    printf(s\nstr)
    }
    A)asdafaaz67 B)asd af aa z67 C)asd D)z67
    〔34〕程序
    int fun(int n)
    {if(n1)return 1
    else
    return(n+fun(n1))
    }
    main()
    {int x
    scanf(d&x) xfun(x)printf(d\nx)
    }
    执行程序时变量x输入10程序输出结果
    A)55 B)54 C)65 D)45
    〔35〕面程序段中输出*数
    char *s\ta\018bc
    for(*s'\0's++)printf(*)
    A)9 B)5 C)6 D)7
    〔36〕C语言结构体类型变量程序运行期间
    A)TC环境存中仅仅开辟存放结构体变量址单元 B)成员直驻留存中
    C)开始成员驻留存中 D)局部成员驻留存中
    〔37〕函数调形式fread(bufsizecountfp)参数buf含义
    A)整型变量代表读入数项总数 B)文件指针指读文件 C)指针指读入数存放址 D)存储区存放读数项

    〔38〕设语句
    char x3y6z
    zx^y<<2
    z二进制值
    A)00010100 B)00011011 C)00011100 D)00011000
    〔39〕C语言中时占存单元变量存储类型
    A)autoregister B)externregister C)autostatic D)staticregister
    〔40〕设定义语句int (*f)(int)表达正确选项
    A)f基类型int指针变量 B)f指函数指针变量该函数具int类型形参
    C)f指int类型维数组指针变量 D)f函数名该函数返回值基类型int类型址

    二填空题
    请空正确答案写答题卡序号横线答试卷分
    〔1〕测试例包括输入值集 1 值集
    〔2〕树形结构中树根结点没 2
    〔3〕数结构分逻辑结构存储结构线性链表属 3
    〔4〕工程具工程工程理工程实体工程实体工程联系属 4 联系
    〔5〕数库设计分6设计阶段需求分析阶段 5 逻辑设计阶段物理设计阶段实施阶段运行维护阶段
    〔6〕阅读面程序段执行输出结果 6
    #include stdioh
    main()
    { char fun(charint)
    char a′A′
    int b13
    afun(ab)
    putchar(a)}
    char fun(char aint b)
    { char k
    ka+b
    return k}
    〔7〕函数fun返回值 7
    fun(char *achar *b)
    { int num0n0
    while(*(a+num)'\0')mm++
    while(b[n]){*(a+num)b[n]num++n++}
    return num
    }
    〔8〕程序功删维数组中相数剩数组中数已序排列函数返回删数组中数数
    例假设维数组中数
    2 2 2 3 4 4 5 6 6 6 6 7 7 8 9 9 10 10 10
    删数组中容应该
    2 3 4 5 6 7 8 9 10
    请填空
    #include
    #define N 80
    int fun(int a[] int n)
    { int ij1
    for(i1i if(a[j1] 8 a[i])
    a[j++]a[i]
    9
    }
    main()
    { int a[N]{ 2223445666677899101010} i n19
    printf(The original data \n)
    for(i0 i nfun(an)
    printf(\nThe data after deleted \n)
    for(i0 i}
    〔9〕程序运行结果 10
    #include
    main()
    { int x1y0a0b0
    switch(x)
    { case 1
    switch(y)
    { case 0a++ break
    case 1 b++ break
    }
    case 2a++ b++ break
    case 3a++ b++
    }
    printf(adbd\nab)
    }
    〔10〕程序输出结果 11
    fun (int xint yint z)
    { z x*x+y*y}
    main ()
    { int a31
    fun (63a)
    printf (d a)
    }
    〔11〕函数my_cmp( )功拟字符串sts等t时返回0否返回st第字符ASCII码差值s>t时返回正值sMy_cmp(char*schar*t)
    { while (*s *t)
    { if (*s ′ \0)return0
    ++s ++t
    } return 12
    }
    〔12〕程序输出结果 13
    void reverse(int a[]int n)
    { int it
    for(i0i { ta[i] a[i]a[n1i]a[n1i]t}
    }
    main()
    { int b[10]{12345678910} int is0
    reverse(b8)
    for(i6i<10i++)s+b[i]
    printf( d\ns)
    }
    〔13〕说明语句中 14 结构体类型名
    typedef struct
    { int n
    char ch[8]
    } PER
    〔14〕程序作名fileadat文文件中逐读入字符显示屏幕请填空
    #include
    main()
    {FILE *fp char ch
    fpfopen( 15 )
    chfgetc(fp)
    while(feof(fp)) { putchar(ch) chfgetc(fp) }
    putchar('\n')fclose(fp)
    }
    选择题
    (1)C 解析 程序流程图解决问题方法思路算法种图形方式描述中图框表示种操作类型图框中文字符号表示操作容流程线表示操作先次序带箭头线段数流程图中表示数流带箭头线段程序流程图中表示控制流题中出选项中图元间带箭头线段表示图元关系模块间带箭头线段表示调关系
    (2)C 解析 软件设计遵循软件工程根目标原建立适软件设计中应该遵循根原理软件设计关概念具抽象模块化信息隐蔽数独立性底集成测试中增量测试种
    (3)C 解析 模块间耦合程度反映模块独立性反映系统分解复杂程度耦合程度强弱分容耦合公耦合外部耦合控制耦合标记耦合数耦合非直接耦合没异构耦合种方式
    (4)D 解析 软件需求规格说明书(SRSSoftware Requirement Specification)需求分析阶段成果软件开发中重文档具方面作① 便户开发员进行理解交流② 反映出户问题结构作软件开发工作根底③ 作确认测试验收
    (5)C 解析 算法复杂度包括算法时间复杂度空间复杂度谓算法时间复杂度指执行算法需计算工作量算法执行程中需根运算次数算法空间复杂度般指执行算法需存空间
    (6)B 解析 堆排序拟次数nlog2n直接插入排序拟次数n(n1)2快速排序拟次数nlog2n数表A中元素
    (7)B 解析 栈操作原进先出栈底栈顶次存放元素ABCD说明4元素中D进栈BC处中间A早进栈出栈时定先出D出C出A
    (8)A 解析 数库设计包括数库概念设计数库逻辑设计两方面容
    (9)A 解析 关系表中行称元组应表中条记录列称属性应表中字段二维表中唯标识元组属性集称该表键码
    (10)C 解析 选课SC 表 学生S 表 课程C 表映射表键两表键组合
    (11)D 解析 C语言运算符中逗号运算符优先级低C语言中区分写APHaph两变量赋值表达式ab表示b值付ab身值保持变通键盘计算机输入允许类型数选项D)中键盘输入数时整型变量输入整型数值字符实型变量输入实型数值整型数值等
    (12)B 解析 C语言规定户标识符字母数字划线组成第字符必须字母划线见选项C)D)错误外C语言允许户关键字作标识符选项A)中void正C语言关键字
    (13)B 解析 C语言语法规定字母e(E)前必须数字e(E)面指数必须整数选项B)中e(E)面指数数合法
    (14)A 解析 C语言中运算符两侧运算数必须整型
    (15)A 解析 赋值运算符左侧操作数必须变量表达式者常量选项C)D)错误运算符两侧应整型数选项B)错误
    (16)D 解析 输出格式控制符c表示变量字符形式输出输出格式控制符d表示变量带符号十进制整型数输出第输出语句输出结果a97第二输出语句输出结果k12
    (17)B 解析 C语言字符ASCII码形式存确定某字符写字母确定ASCII码'A''Z'间选项A)C)符合求函数isalpha确定字符否字母写字母ASCII码值范围6590果字母ASCII码91确定写字母
    (18)B 解析 满足表达式(c>2&&c<6)整型变量c值23456变量c值246时值35表达式c3c5中少真c值表达式B)真
    (19)B 解析 条件运算符求3操作象称三目(元)运算符C语言中惟三目运算符条件表达式般形式表达式1表达式2表达式3求解序先求解表达式1假设非0(真)求解表达式2时表达式2值作整条件表达式值假设表达式1值0(假)求解表达式3表达式3值整条件表达式值注意++法
    (20)B 解析 维数组中注意作标表达式常量表达式值必须等0选项B)中定义5元素赋值时6元素错误
    (21)B 解析 题中a[1][2]二维数组中第6元素应for循环中i值5p[5]5+1
    (22)B 解析 题中表示逻辑非运算符表示等运算符逻辑非运算符等运算符优先级高
    (23)C 解析 字符串指针保存整串首址第字符起始址该指针做算术运算时该指针根类型移动相应存储空间
    (24)A 解析 数组c[][4]表示4行4列数组c[2][2]表示第3行第3列元素62*(*(c+1)+1))表示第2行第2列元素6通十六进制输出3e6
    (25)C 解析 选项A)char *a*achina应改achina选项B)应该char str[6]D)项表述方法错误
    (26)D 解析 C语言中数组标0开始二维数组a[2][3]第维标取值01第二维标取值012选项A)B)C)错误选项D)表示数组元素a[0][0]
    (27)D 解析 格式输入中求出变易址D)答案中出s[1]值表达式 (28)B 解析 根宏换换规知f(2)2*N+12*5+111f(1+1)1+1*N+11+1*5+17
    (29)D 解析 选项A)体成员起始址相选项B)体变量占存长度等长成员长度选项C)成员起始址相整型数5浮点型输出时5000000选项D)C语言规定体变量作函数参数
    (30)D 解析 6元素整型数组分两行输出文件中输出数字行没分隔符进行读取操作时行会认完整数换行符作分隔符
    (31)D 解析 通常引数组元素标法a[pa]形式指针法*(&a[i])形式题中a[9]9a[10]显然超出数组范围注意数组标0开始
    (32)C 解析 函数fun(int *sint n1int n2)功数组s中元素进行首尾互相调换函数中fun(a03)执行完数组a[12]{4321567890}执行fun(a49)数组a[12]{4321098765}执行fun(a09)数组a[12]{5678901234}
    (33)A 解析 题题意求删空格空格外字符留C语言中没直接删字符操作删字符操作采留字符算法前题目str[i]串头串尾逐走动走字符判断否空格假设空格(注意if()单引号间空格)保存str[j]中注意j标变化初值加串结束符'\0'
    (34)A 解析 程序考察函数递调调函数程中出现直接间接调该函数身称函数递调执行结果1+2+3+4+5+6+7+8+9+1055
    (35)C 解析 题中格式符0表示八进制符号形式输出整型数(带前导0)字符常量存中占字节存放ACSII码代码值C语言规定字符常量作整型量处理计算机部应整数值ACSII字符集中该字符序号&*s中字符输出*
    (36)B 解析 结构体类型变量程序运行期间作整体占连续存单元
    (37)C 解析 道考查fread函数题buf指针fread读入数存放址fwrite输出数址(指起始址)
    (38)B 解析 题考查两位运算符
    位异运算符^双目运算符功参运算两数应二进位相异两应二进位相异时结果1
    左移运算符<<双目运算符功<< 左边运算数二进位全部左移假设干位<<右边数指定移动位数高位丢弃低位补0<<运算符优先级^
    (39)A 解析 C语言中动变量存放器变量时占存单元
    (40)B 解析 题考查指函数指针语句 int (* f)(int)函数声明中f指该函数指针该函数整型参数函数返回值类型整型
    二选择题
    (1)1 输出 解析 软件测试例效发现软件缺陷面编写包含测试目测试步骤期测试结果特定集合正确认识设计软件测试例提高软件测试效性便测试质量度量增强测试程理性软件测试例包括输入值集输出值集测试例软件测试核心
    (2)2 前件 解析 树形结构中结点前件称父结点没前件结点称树根结点结点件称该结点子结点没件结点称叶子结点
    (3)3 存储结构 解析 数逻辑结构指反映数元素间逻辑关系数结构数存储结构指数逻辑结构计算机存储空间中存放形式数存储结构中仅存放数元素信息需存放数元素间前件关系信息
    (4)4 (1∶N) 解析 两实体集间联系实际实体集间函数系种函数关系3种(1∶1)联系(1∶N)(N∶1)联系(N∶N)联系
    (5)5 概念设计阶段 解析 数库设计分6设计阶段需求分析阶段概念设计阶段逻辑设计阶段物理设计阶段实施阶段数库运行维护阶段
    (6)6 N 解析 函数说明语句中类型名必须函数返回值类型致题实现字符'A'ASCII码值加常数变成ASCII码值输出字符
    (7)7 字符串ab长度 解析 题首先通第while循环计算字符串a长度通第二循环字符串ab相连返回连接总长度
    8)8 9 return j 解析 题程序流程ij1开始中j控制删剩数中标i搜索原数组中元素j始终新数组已元素中元素元素标if()中条件a[j1]a[i]中a[j1]新数组中元素假设条件成立表示出现值a[i]留新数组中注题中ij初值1开始该算法数组已排序题目中
    (9)10 a2b1 解析 题考查 switch结构容C语言中程序执行完case标号容果没break语句控制结构会转移case继续执行case 常量表达式起语句标号作该处进行条件判断题程序执行完部switch结构继续执行外部switch结构 case 2分支ab值分21
    (10)11 31 解析 函数调时形参值改变会改变实参值
    (11)12 *s*t 解析 两字符串拟必须首字符开始应字符相等情况循环直相等结束相等时假设字符串已字符串结束标记符两字符串相函数返回0值继字符准备拟字符应字符相循环结束循环结束时两前字符差返回空框处应填入*s*t保证s > t时返回正值s < t时返回负值
    (12)13 22 解析 main函数中调reverse函数b数组中前8成员进行互置执行完毕b数组中成员{87654321910}然执行for循环结构b[6]b[7]b[9]值相加结果22
    (13)14 PER 解析 题中typedef声明新类型名PER代已类型名PER代表面指定结构体类型时PER定义变量
    (14)15 fileadat〞r〞 解析 fopen函数调方式通常 fopen(文件名文件方式)题中求程序翻开fileadat文件读取文件中容空白处应填入 fileadatr
    选择题
    题A〕B〕C〕D〕四选项中选项正确请正确选项涂写答题卡相应位置答试卷分
    〔1〕软件指 A)程序 B)程序文档 C)算法加数结构 D)程序数相关文档完整集合
    〔2〕检查软件产品否符合需求定义程称
    A)确认测试 B)集成测试 C)验证测试 D)验收测试
    〔3〕属象根特点
    A)分类性 B)态性 C)继承性 D)封装性
    〔4〕设计程序时应采纳原
    A)限制goto语句 B)减少取消注解行 C)程序越短越 D)程序结构应助读者理解
    〔5〕表达中正确选项
    A)程序执行效率数存储结构密切相关 B)程序执行效率取决程序控制结构
    C)程序执行效率取决处理数量 D)三种说法 〔6〕数结构中计算机关数
    A)存储结构 B)物理结构 C)逻辑结构 D)物理存储结构
    〔7〕线性表序存储结构线性表链式存储结构分
    A)序存取存储结构序存取存储结构 B)机存取存储结构序存取存储结构
    C)机存取存储结构机存取存储结构 D)意存取存储结构意存取存储结构
    〔8〕树结点集合根结点数目
    A)1 B)11 C)01 D)少2
    〔9〕关数库描述正确选项
    A)数库DBF文件 B)数库关系 C)数库结构化数集合 D)数库组文件
    〔10〕数库数库系统数库理系统间关系
    A)数库包括数库系统数库理系统 B)数库系统包括数库数库理系统 C)数库理系统包括数库数库系统 D)三者没明显包含关系
    〔11〕4选项中作条语句
    A) B)a5b25c36 C)if(a<5) D)if(b5)x2y6
    〔12〕面四选项中均合法户标识符选项
    A)A P_0 do B)float la0_A C)ba goto int D)_123 temp int
    〔13〕选项中属字符常量
    A)′C′ B)′′C′′ C)′\xCC′ D) ′\072′
    〔14〕设变量已正确定义赋值正确表达式
    A)xy*5x+z B)int(1585) C)xy+z+5++y D)x2550
    〔15〕假设变量已正确定义赋值符合C语言语法表达式
    A)ab+1 B)abc+2 C)int 1853 D)aa+7c+b
    〔16〕程序运行结果
    int k0
    void fun(int m)
    {m+kk+mprintf(md kd mk++)}
    main()
    {int i4
    fun(i++) printf(id kd\nik)
    }
    A)m4 k5 i5 k5 B)m4 k4 i5 k5 C)m4 k4 i4 k5 D)m4 k5 i4 k5

    〔17〕已定义char c程序前面已命令行中包含ctypeh文件判断c中字符否写字母表达式
    A)isupper(c) B)′A′
    〔18〕设
    int a1b2c3d4m2n2
    执行 (ma>b)&&(nc>d)n值
    A)1 B)2 C)3 D)4

    〔19〕假设变量已正确定义程序段
    int a3b5c7
    if(a>b) ab ca
    if(ca) cb
    printf(ddd\nabc)
    输出结果
    A)程序段语法错 B)353 C)355 D)357
    〔20〕假设定义float x15int a1b3c2正确switch语句
    A)switch(x)
    {case 10printf(*\n)
    case 20printf(**\n)}
    B)switch((int)x)
    {case 1printf(*\n)
    case 2printf(**\n)}
    C)switch(a+b)
    {case 1printf(*\n)
    case 2+1printf(**\n)}
    D)switch(a+b)
    {case1printf(**\n)}
    casecprintf(**\n)}

    〔21〕程序
    #include
    main0
    { int y9
    for( y>0y)
    if(y30) printf(dy)
    }
    程序运行结果
    A)741 B)963 C)852 D)875421
    〔22〕描述中正确选项
    A)dowhile循环中循环体语句条执行语句循环体复合语句
    B)dowhile循环do开始while结束while(表达式)面写分号
    C)dowhile循环体中先执行次循环进行判断 D)dowhile循环中根情况省略while
    〔23〕程序
    #include
    main()
    { int a[ ]{1234}y*p&a[3]
    p y*pprintf(yd\ny)
    }
    程序运行结果
    A)y0 B)y1 C)y2 D)y3
    〔24〕数组定义中错误选项
    A)int x[][3]{0} B)int x[2][3]{{l2}{34}{56}} C)int x[][3]{{l23}{456}} D)int x[2][3]{l23456}
    〔25〕面说明正确选项
    A)char a[10]china B)char a[10]*papchina C)char *aachina D)char a[10]*ppachina
    〔26〕假设定义int a[2][3]选项中a数组元素正确引
    A)a[2][1] B)a[2][3] C)a[0][3] D)a[1>2][1]
    〔27〕假设求键盘读入含空格字符字符串应函数
    A)getc() B)gets() C)getchar() D)scanf()
    〔28〕阅读程序段程序输出结果
    #include stdioh
    #define M(XY)(X)*(Y)
    #define N(XY)(X)(Y)
    main()
    { int a5b6c8k
    kN(M(ab)c)
    printf(d\nk)
    A)3 B)5 C)6 D)8
    〔29〕16位IBMPC机C语言假设定义
    struct data
    { int i
    char ch
    double f
    } b
    结构变量b占存字节数
    A)1 B)2 C)7 D)11
    〔30〕程序 #include
    main()
    {FILE *fp int ia[6]{l23456}
    fpfopen(d3datw+b)
    fwrite(asizeof(int)6fp)
    fseek(fpsizeof(int)*3SEEK_SET)*该语句读文件位置指针文件头移动3int型数*
    fread(asizeof(int)3fp) fclose(fp)
    for(i0i<6i++)printf(da[i])
    }
    程序运行输出结果
    A)456456 B)123456 C)456123 D)654321
    〔31〕程序
    #include
    main()
    { int s[12]{123443211123}c[5]{0}i
    for(i0i<12i++) c[s[i]]++
    for(i1i<5i++) printf(dc[i])
    printf(\n)
    }
    程序运行结果
    A)1 2 3 4 B)2 3 4 4 C)4 3 3 2 D)1 1 2 3
    〔32〕程序
    #include
    void fun(int *aint n)*fun函数功a指数组元素排序*
    { int tij
    for(i0i for(ji+1j if(a[i]}
    main()
    { int c[10]{1234567890}i
    fun(c+46)
    for(i0i<10i++) printf(dc[i])
    printf(\n)
    }
    程序运行结果
    A)1234567890 B)0987651234 C)0987654321 D)1234987650
    〔33〕面程序输出结果
    #include
    #include
    main()
    { char *p1abc*p2ABCstr[50] xyz
    strcpy(str+2strcat(p1p2))
    printf(s\nstr)}
    A)xyzabcABC B)zabcABC C)xyabcABC D)yzabcABC
    〔34〕函数返回a指数组中值标值
    fun(int *a int n)
    { int ij0p
    pj
    for(ijiif(a[i] return(p)}
    横线处应填入
    A)ip B)a[p]a[i] C)pj D)pi
    〔35〕程序运行结果
    #include
    void abc(char*str)
    { int ab
    for(ab0str[a]'\0'a++)
    if(str[a]'c')
    str[b++]str[a]
    str[b]'\0'}
    void main()
    { char str[]abcdef
    abc(str)
    printf(str[]sstr) }
    A)str[]abdef B)str[]abcdef C)str[]a D)str[]ab
    〔36〕程序
    #include
    #include
    typedef struct{ char name[9] char sex float score[2] }STU
    void f(STU a)
    { STU b{Zhao′m′850900} int i
    strcpy(anamebname)
    asexbsex
    for(i0i<2i++) ascore[i]bscore[i]
    }
    main()
    { STU c{Qian′f′950920}
    f(c)
    printf(sc20f20f\ncnamecsexcscore[0]cscore[1])
    }
    程序运行结果
    A)Qianf9592 B)Qianm8590 C)Zhaof9592 D)Zhaom8590
    〔37〕程序
    #include
    main()
    { FILE *fp int a[10]{123}in
    fpfopen(d1datw)
    for(i0i<3i++) fprintf(fpda[i])
    fprintf(fp\n)
    fclose(fp)
    fpfopen(d1datr)
    fscanf(fpd&n)
    fclose(fp)
    printf(d\nn)
    }
    程序运行结果
    A)12300 B)123 C)1 D)321
    〔38〕 int a1b3a^b值
    A)3 B)1 C)2 D)4
    〔39〕阅读程序运行结果
    #include stdioh
    fun()
    { static int x5
    x++
    return x}
    main()
    { int ix
    for(i0i<3i++)
    xfun()
    printf(d\nx)}
    A)5 B)6 C)7 D)8
    〔40〕程序
    #include
    void fun(char *tchar *s)
    { while(*t0) t++
    while((*t++*s++)0)
    }
    main()
    { char ss[10]accaa[10]bbxxyy
    fun(ssaa) printf(ss\nssaa)
    }
    程序运行结果
    A)accxyybbxxyy B)accbbxxyy C)accxxyybbxxyy D)accbbxxyybbxxyy

    二填空题
    请空正确答案写答题卡序号横线答试卷分
    〔1〕需求分析终结果产生 1
    〔2〕便检查测试例应输入数预期 2 两局部组成
    〔3〕数结构分逻辑结构存储结构线性链表属 3
    〔4〕某二叉树中度2结点18该二叉树中 4 叶子结点
    〔5〕 5 数库设计核心
    〔6〕已定义char c′ ′int a1b(处c初值空格字符)执行bc&&ab值 6 
    〔7〕设变量已正确定义整型表达式ni2++ii++值 7
    〔8〕面程序功计算1 10间奇数偶数请填空
    #include
    main()
    { int abcI
    ac0
    for(I0I<10I+2)
    {a+I
    8
    c+b }
    printf(偶数d\na)
    printf(奇数d\nc11)}
    〔9〕函数rotate功a指N行N列二维数组中行放b指二维数组第0列中a指二维数组中第0行放b指二维数组列中b指二维数组中数变
    #define N 4
    void rotade(int a[][N]int b[][N])
    { int Ij
    for(I0I{ b[I][N1] 9 10 a[N1][I] } }
    〔10〕程序输出结果 11
    #include
    void swap(int *a int *b)
    { int *t
    ta ab bt
    }
    main()
    { int i3j5*p&i*q&j
    swap(pq) printf(d d\n*p*q)
    }
    〔11〕面程序运行结果 12
    #include
    #define SIZE 12
    main()
    { char s[SIZE] int Ifor(I0Isub(s7SIZE1)
    for(I0Iprintf(\n)}
    sub(char*aint t1int t2)
    { char ch
    while (t1{ ch*(a+t1)
    *(a+t1)*(a+t2)
    *(a+t2)ch
    t1++t2 } }
    〔12〕程序输出结果 13
    #include
    main()
    { int a[5]{246810}*p
    pa p++
    printf(d*p)
    }
    〔13〕设定义struct {int a float b char c} abc *p_abc&abc结构体成员a引方法abcap_abc 14 a
    〔14〕程序运行结果 15
    #include
    main()
    { FILE *fp int a[10]{12300}i
    fpfopen(d2datwb)
    fwtite(asizeof(int)5fp)
    fwrite(asizeof(int)5fp)
    fclose(fp)
    fpfopen(d2datrb)
    fread(asizeof(int)10fp)
    fclose(fp)
    for(i0i<10i++)printf(da[i])
    }

    选择题
    (1)D 解析 软件程序数相关文档集合相计算机硬件言软件逻辑产品物理产品计算机形局部
    (2)A 解析 确认测试务验证软件功性特性否满足需求规格说明中确定种需求集成测试目发现接口关错误
    (3)C 解析 象根特点标识惟性分类性态性封装性模块独立性
    (4)D 解析 滥goto 语句程序流程规律读性差A)选注解行利程序理解应减少取消B)选程序长短实际情况越短越C)选
    (5)A 解析 程序执行效率素关数存储结构程序处理数量程序采算法等序存储结构数插入删操作效率链式存储结构效率低
    (6)C 解析 数结构概念般包括数逻辑结构存储结构数运算集合等数逻辑结构抽象反映数元素间逻辑关系计算机中存储形式
    (7)B 解析 序存储结构中数元素存放组址连续存储单元中数元素址通公式LOC(ai)LOC(a1)+(i1)L计算实现机存取链式存储结构某结点进行存取链头指针指结点开始种序存取存储结构
    (8)C 解析 树N(N>0)结点限集合N0时称空树空树没根结点根结点数0非空树根结点树根结点数目01
    (9)C 解析 数库(DataBase简称DB)数集合具统结构形式存放统存储介质种应数集成应程序享数库中数具集成享特点
    (10)B 解析 数库系统(Database System简称DBS)包括数库(Database简称DB)数库理系统(Database Management System简称DBMS)
    (11)D 解析 选项D)两条语句
    (12)C 解析 C语言规定标识符字母数字划线3种字符组成第字符必须字母划线C语言中关键字作标识符选项C)中gotoint关键字ba中''组成标识符3种字符选项D)中int关键字均合法户标识符选项C)
    (13)B 解析 C语言程序中单引号字符反斜线特定字符括起表示字符常量选项A)C)D)正确字符常量选项B)双引号括起字符表示字符串常量
    (14)C 解析 求余运算符两边运算象必须整型选项B)D)中 两边运算象浮点整数选项B)D)错误表达式选项A)中赋值表达式两边出现相变量x错误选项C)逗号表达式正确答案C)
    (15)B 解析 选项A)中包含合法运算符选项C)应改(int)1853选项D)理解两表达式a+7c+baa+7中第错C语言规定赋值号左边单变量表达式常量等正确答案选项B)实际相a(bc+2)进分解两表达式bc+2ab
    (16)B 解析 main()函数中变量 i4调fun(4)输出m4 k4然变量k增1等5变量i增1等5main()函数printf(id kd\nik)语句输出i5 k5
    (17)B 解析 题中选项B)实际先计算关系表达式'A'(18)B 解析 题考查逻辑运算运算规规运算符前两条件表达式满足时终结果真发现第表达式值假计算机执行面表达式运算
    题中前表达式值假面表达式进行运算n值保持变2
    (19)B 解析 两if语句判断条件满足程序执行ca条语句变量c值等3变量b值没变化程序输出结果353
    (20)C 解析 C语言中switch语句专实现分支结构程序特点分支清晰直观switch面括号中表达式取整数局部常量表达式进行拟常量表达式中出现变量类型必须整型字符型枚举型常量表达式相
    (21)C 解析 题考察变量加++减问题y 值963时if语句条件成立执行输出语句输出表达式y值y减先输出语句执行输出结果8 5 2
    (22)C 解析 do while语句般形式do 循环体语句 while(表达式)中循环体语句复合型语句必须花括号括起while必须分号作语句结束dowhile循环中省略while
    (23)D 解析 程序中指针变量p初始指a[3]执行p减1p指a[2]语句y*p作a[2]值赋变量y输出y3
    (24)B 解析 二维数组初始化种形式①分行进行初始化②分行进行初始化③局部数组元素进行初始化④省略第维定义省略第二维定义选项B)等号右边分3行等号左边数组行数2
    (25)D 解析 C语言中操作字符串常量方法①字符串常量存放字符数组中② 字符指针指字符串 然通字符指针访问字符串存储区域字符串常量表达式中出现时 根数组类型转换规 转换成字符指针
    题D)项中错误关键数组初始化时变量定义时整体赋初值赋值语句中整体赋值
    (26)D 解析 C语言中数组标0开始二维数组a[2][3]第维标取值01第二维标取值012选项A)B)C)错误选项D)表示数组元素a[0][0]
    (27)B 解析 scanf()语句空格区字符串getc()getchar()语句字符串读入
    (28)A 解析 带参数宏定义命令行形式#define 宏名(形参表) 换文首先进行M宏换进行N宏换换表达式 (a)*(b)(c)
    (29)D 解析 结构体变量占存字节数成员占存字节数题中整型变量i占存2字节字符型变量ch占存1字节双精度型变量f占存8字节三者相加
    (30)A 解析 首先利fwrite函数数组a中数写文件中接着fseek函数功读文件位置指针文件头移动3int型数时文件位置指针指文件中第4int数4然 fread函数文件fp中3数456读数组a中样覆盖数组中原前3项数数组中数成{456456}
    (31)C 解析 for(i0i<12i++) c[s[i]]++中数组元素s[i]值作数组c标退出循环时数组c4元素值分4332
    (32)D 解析 题中函数调fun()函数进行排序时传递参数c+46fun()函数实现功数组c第5元素开始6元素次进行序排列排序数组c容变{1234987650}
    (33)C 解析 题考查重点拷贝字符串──strcpy()函数该函数调方式strcpy(字符数组 字符串)中字符串字符串常量字符数组函数功字符串完整复制字符数组中字符数组中原容覆盖
    该函数时注意①字符数组必须定义足够便容纳复制字符串复制时连结束标志'\0'起复制②赋值运算符字符串直接赋值字符数组strcpy( )函数处理
    外题考查连接字符串strcat()函数调方式strcat(字符数组 字符串)
    功字符串连接字符数组中字符串尾端存储字符数组中字符数组中原结束标志字符串第字符覆盖字符串操作中未修改
    该函数时注意①没边界检查编程者注意保证字符数组定义足够便容纳连接目标字符串否会长度够产生问题②连接前两字符串结束标志'\0'连接字符数组中存储字符串结束标志'\0'舍弃目标串保存'\0'
    (34)D 解析 该程序先判断a[i](35)A 解析 题考查字符指针引字符数组中字符字符操作函数abc()for语句执行程字符指针str指字符数组第元素开始逐判断字符否'c'假设执行次数组元素赋值程假设字符'c'执行
    (36)A 解析 题考查函数调时参数传递问题程序调函数f时传函数f参数结构变量c栈中拷贝函数f操作针数拷贝进行修改会影响变量c值
    (37)B 解析 函数中首先整型数组a[10]中元素写入文件d1dat中然次翻开文件文件d1dat中容读入整型变量n中输出变量n值
    (38)C 解析 ^位异运算果应位结果1相0
    (39)D 解析 整程序运行期间静态局部变量存静态存储区中占着永久存储单元退出函数次进入该函数时静态局部变量原存储单元静态局部变量初值编译时候赋予程序执行期间赋予初值题连续三次调函数fun()三次静态变量x进行操作x值应次678
    〔40)D 解析 题中fun函数实现字符串函数strcat功字符串aa连接字符串ss末尾调fun函数时形参ts分指字符串ssaa然通while循环t指字符串ss结束符位置第二while循环字符串aa中字符(包括结束符'\0')逐复制字符串ss末尾处
    二选择题
    (1)1 需求规格说明书 解析 软件需求规格说明书需求分析阶段成果软件开发中重文档需求规格说明书包括正确性歧义性完整性验证性致性理解性修改性追踪性等
    (2)2 输出结果 解析 测试例(Text Case)测试设计数测试例测试输入数应预期输出结果两局部组成
    (3)3 存储结构 解析 数逻辑结构指反映数元素间逻辑关系数结构数存储结构指数逻辑结构计算机存储空间中存放形式数存储结构中仅存放数元素信息需存放数元素间前件关系信息
    (4)4 19 解析 意棵二叉树中度0结点(叶子结点)总度2结点
    (5)5 数模型 解析 数模型客观事物联系数描述反映实体部实体实体间联系数模型数库设计核心
    (6)6 1 解析 字符空格ASCII码0题中表达式c值0 b0&&1结果显然0
    (7)7 3 解析 题考查C语言逗号表达式相关知识程序计算逗号表达式时左右计算逗号分隔表达式值整逗号表达式值等中表达式值题中首先i赋值2加1i++值计算3
    (8)8 bI+1 解析 题考查for循环语句执行程i+2修正表达式执行次循环体i值增加2i初始值0次加2累加aa值1 10间偶数 b值1 11间奇数输出b值时c掉加111 10间奇数
    (9)9 a[0][I] 10 b[I][0] 解析 b[i][N1] a[0][i]实现a指二维数组中第0行放b指二维数组列中b[I][0]a[N1][I] 实现a指N行N列二维数组中行放b指二维数组中第0列
    (10)11 3 5 解析 函数swap(int *aint *b)功实现*a*b中两数交换函数中调swap(pq)参形指针变量ab分指ijswap(int *aint *b)执行完指针变量ab分指ji指针变量pq指变量值没发生变化输出结果3 5
    (11)12 a b c d e f g l k j I h 解析 题考查字符变量参运算字符计算机中ASCII码形式存放字符变量作整型变量处理参算术运算等某字符写字母ASCII码值应写字母ASCII码值32
    (12)13 4 解析 函数中语句pap++指针p指数组a[1]输出结果4
    (13)14 > 解析 假设结构体变量abc成员a指针p_abc指结构变量abc引变量abc成员a标记形式abcap_abc>a
    (14)15 1230012300 解析 题考查文件读写函数freadfwrite法fwrite函数数组a前5元素输出文件fp中两次10字节调fread函数文件fp中读取10字节数数组a中时数组a容变{1230012300}输出结果1230012300
    选择题
    题A〕B〕C〕D〕四选项中选项正确请正确选项涂写答题卡相应位置答试卷分
    〔1〕软件生命周期中花费费阶段
    A)详细设计 B)软件编码 C)软件测试 D)软件维护
    〔2〕提高测试效率应该
    A)机选取测试数 B)取切输入数作测试数 C)完成编码制定软件测试方案 D)集中付错误群集程序
    〔3〕面象思想中特征
    A)态 B)继承 C)封装 D)垃圾回收
    〔4〕表达中符合良程序设计风格求
    A)程序效率第清晰第二 B)程序读性 C)程序中必注释 D)输入数前提示信息
    〔5〕软件设计包括软件结构数接口程设计中软件程设计指
    A)模块间关系 B)系统结构部件转换成软件程描述 C)软件层次结构 D)软件开发程
    〔6〕数处理单位
    A)数 B)数元素 C)数项 D)数结构
    〔7〕假设线性表长度n坏情况泡排序需拟次数
    A)log2n B)n2 C)O(n15) D)n(n1)2
    〔8〕深度5满二叉树中叶子结点数
    A)32 B)31 C)16 D)15
    〔9〕数库系统核心
    A)数库 B)数库理系统 C)模拟模型 D)软件工程
    〔10〕关系中属性数1时称关系
    A)应关系 B)单关系 C)元关系 D)二元关系
    〔11〕面选项中均C语言合法标识符选项组
    A)33 we auto B)_23 me _3ew C)_43 3e_ else D)ER DF 32
    〔12〕C程序中作户标识符组标识符
    A)and B)Date C)Hi D)case
    _2007 ymd DrTom Bigl
    〔13〕C语言函数关描述中正确选项
    A)C语言中调函数时实参值传形参形参值传送实参
    B)C函数嵌套定义递调
    C)函数必须返回值否函数
    D)函数必须返回值返回值类型定
    〔14〕假设函数调时实参变量时关函数形参实参表达中正确选项
    A)函数实参应形参占存储单元 B)形参形式存占具体存储单元
    C)名实参形参占存储单元 D)函数形参实参分占存储单元
    〔15〕现定义int adouble bfloat cchar k表达式ab+ck值类型
    A)int B)double C)float D)char
    〔16〕关longintshort类型数占存表达中正确选项
    A)均占4字节 B)根数决定占存字节数
    C)户定义 D)C语言编译系统决定
    〔17〕程序段
    int jfloat ychar name[50]
    scanf(2dfs&j&yname)
    执行述程序段键盘输入55566 7777abcy值
    A)555660 B)5660 C)77770 D)5667770
    〔18〕假设变量已正确定义程序段
    i0
    do printf(di)while(i++)
    printf(d\ni)
    输出结果
    A)00 B)01 C)11 D)程序进入限循环
    〔19〕程序运行结果
    #include stdioh
    main()
    { int x9y5z8
    if(x if(y<0)z0
    else z+1
    printf(d\nz)}
    A)6 B)7 C)8 D)9
    〔20〕假设程序执行时输入数2473述程序输出结果
    #include
    void main()
    { int cs
    while((csgetchar()) '\n')
    {switch(cs'2')
    { case 0
    case 1 putchar(cs+4)
    case 2 putchar(cs+4)
    break
    case 3 putchar(cs+3) default putchar(cs+2) } } }
    A)668977
    B)668966
    C)6677877
    D)6688766
    〔21〕程序输出结果
    main()
    { int aia0
    for(i1i<5i++)
    { switch(i)
    { case 0
    case 3a+2
    case 1
    case 2a+3
    defaulta+5 }
    }printf(d\na)}
    A)31 B)13 C)10 D)20
    〔22〕现程序段
    #include stdioh
    main()
    { int k[30]{12324456768982134453456}
    int count0i0
    while(k[i])
    { if(k[i]20||k[i]50)count++
    i++ }
    printf(dd\ncounti)}
    程序段输出结果
    A)78 B)88 C)710 D)810
    〔23〕假设程序
    #include
    int a[]{2468}
    main()
    { int i
    int *pa
    for(i0i<4i++)a[i]*p
    printf(d\na[2])}
    面程序输出结果
    A)6 B)8 C)4 D)2
    〔24〕程序
    #include
    main()
    { int ijm55
    for(i1i<3i++)
    for(j3jprintf(d\nm)
    }
    程序运行结果
    A)0 B)1 C)2 D)3
    〔25〕字符′A′ASCII码值65字符变量cl值′A′c2 值′D′执行语句printf(ddc1c22)输出结果
    A)AB B)A68 C)6566 D)6568
    〔26〕程序判断数组中特定元素位置
    #include
    #include
    int fun(int *s int t int *k)
    { int i
    *k0
    for(i0i if(s[*k] return s[*k] }
    main()
    { int a[10]{ 876675896101301401980431451777}k
    fun(a 10 &k)
    printf(d d\nka[k])}
    果输入整数876 675 896 101 301 401 980 431 451 777
    输出结果
    A)7431 B)6 C)980 D)6980
    〔27〕面程序文件名texeDOS输入命令行参数t to meet me<回车>
    程序输出结果
    #include stdioh
    main(argcargv)
    int argcchar *argv[]
    { int i
    printf(d\nargc)}
    A)3 B)4 C)2 D)答案正确
    〔28〕程序
    int a[10]{12345678910}
    int *p&a[3]bbp[5]
    b值
    A)5 B)6 C)9 D)8
    〔29〕表达中错误选项
    A)改变函数形参值会改变应实参值 B)函数返回址值
    C)指针变量赋整数作址值 D)程序开头包含头文件stdioh时指针变量赋NULL
    〔30〕面程序输出结果
    #include
    main()
    { int a[]{1234567890}*p
    pa
    printf(d\n*p+9)}
    A)0 B)1 C)10 D)9
    〔31〕面程序段
    #include stdioh
    #include stringh
    main()
    { char a[3][20]{{china}{isa}{bigcountry}}
    char k[100]{0}*pk
    int i
    for(i0i<3i++)
    { pstrcat(pa[i])}
    istrlen(p)
    printf(d\ni)}
    程序段输出结果
    A)18 B)19 C)20 D)21
    〔32〕假设定义 char *st how are you 程序段中正确选项
    A)char a[11] *p strcpy(pa+1&st[4]) B)char a[11] strcpy(++a st)
    C)char a[11] strcpy(a st) D)char a[] *p strcpy(p&a[1]st+2)
    〔33〕程序
    #include
    int fun(char s[])
    { int n0
    while(*s<′9′&&*s>′0′) {n10*n+*s′0′s++}
    return(n)
    }
    main()
    { char s[10]{′6′′1′′*′′4′′*′′9′′*′′0′′*′}
    printf(d\nfun(s))
    }
    程序运行结果
    A)9 B)61490 C)61 D)5
    〔34〕设定义char p[]{′1′′2′′3′}*qp计算出char型数占字节数表达式
    A)sizeof(p) B)sizeof(char) C)sizeof(*q) D)sizeof(p[0])
    〔35〕函数
    int aaa(char *s)
    { char *ts
    while(*t++)
    t
    return(ts)
    }
    关aaa函数功表达正确选项
    A)求字符串s长度 B)拟两串 C)串s复制串t D)求字符串s占字节数
    〔36〕户求输入字符串中含空格时应输入函数
    A)scanf() B)getchar() C)gets() D)getc()
    〔37〕选项中错误说明语句
    A)char a[]{′t′′o′′y′′o′′u′′\0′} B)char a[]{toyou\0}
    C)char a[]toyou\0 D)char a[]′toyou\0′
    〔38〕程序输出结果
    int f()
    { static int i0
    int s1
    s+i i++
    return s }
    main()
    { int ia0
    for(i0i<5i++)a+f()
    printf(d\na)}
    A)20 B)24 C)25 D)15
    〔39〕程序输出结果
    #include stdioh
    #define M(xy) xy
    main()
    { int am12n100
    aM(nm)
    printf(d\na)}
    A)2 B)3 C)4 D)5
    〔40〕假定前盘符两文文件
    文件名 a1txt a2txt
    容 123# 321#
    面程序段执行结果
    #include stdioh
    void fc(FILE *p)
    { char c
    while((cfgetc(p))′#′)putchar(c)}
    main()
    { FILE *fp
    fpfopen(a1txtr)
    fc(fp)
    fclose(fp)
    fpfopen(a2txtr)
    fc(fp)
    fclose(fp)
    putchar('\n')}
    A)123321 B)123 C)321 D)答案正确
    二填空题
    请空正确答案写答题卡序号横线答试卷分
    〔1〕软件定义时期包括 1 需求分析两阶段
    〔2〕软件维护活动包括类改正性维护适应性维护 2 维护预防性维护
    〔3〕数逻辑结构线性结构 3 两类
    〔4〕某二叉树中度2结点n该二叉树中 4 叶子结点
    〔5〕ER图中矩形表示 5
    〔6〕阅读面程序执行输出结果 6
    #include stdioh
    main()
    { int xyz
    x1y2z3
    if(x>y)if(x>z)printf(dx)
    else printf(dy)
    printf(d\nz)}
    〔7〕程序输出结果 7
    main()
    { int y9
    for( y>0 y)
    if (y30)
    {printf(d y) continue} }
    〔8〕程序段变量已正确定义赋值
    for(s10k1kprintf(sf\n\ns)
    请填空面程序段功完全相
    s10k1
    while( 8 ){ss+10(k*(k+1)) 9 }
    printf(sf\n\ns)
    〔9〕设定义语句*(*(p+2)+1)值 10
    int a[3][2]{10 20 30 40 50 60} (*p)[2]
    pa
    〔10〕程序输出结果 11 
    #include
    main()
    { int i
    for(i′a′i<′f′i++i++)printf(ci′a′+′A′)
    printf(\n)
    }
    〔11〕程序中函数f功数组xn数(假定n数互相)中找出数中数第数换数数换请填空
    #include
    void f(int x[]int n)
    { int p0p1ijtm
    ijx[0] p0p10
    for(m0m{ if(x[m]>i) {ix[m]p0m}
    else if(x[m]}
    tx[p0]x[p0]x[n1]x[n1]t
    tx[p1]x[p1] 12 13 t
    }
    main()
    { int a[10]u
    for(u0u<10u++) scanf(d&a[u])
    f(a10)
    for(u0u<10u++) printf(da[u])
    printf(\n)
    }
    〔12〕mystrlen函数功计算str指字符串长度作函数值返回请填空
    int mystrlen(char *str)
    { int I
    for(I0 14 '\n'I++)
    return(I) }
    〔13〕阅读程序程序输出结果 15
    #include stdioh
    struct ty
    { int data
    char c }
    main()
    { struct ty a{30′x′}
    fun(a)
    printf(dcadataac) }
    fun(struct ty b)
    { bdata20
    bc′y′ }选择题
    1)D 解析 软件生命周期分软件定义软件开发软件运行维护3阶段题中详细设计软件编码软件测试属软件开发阶段维护软件生命周期阶段持续时间长花费代价阶段软件工程学目提高软件维护性降低维护代价
    (2)D 解析 测试目发现软件中错误验说明程序中存错误概率该程序中已发现错误成正现象说明提高测试效率测试员应该集中错误群集程序
    (3)D 解析 面象思想中三特征封装性继承性态性
    (4)A 解析 导程序设计风格清晰第效率第二观点结构化程序设计思想提出前程序设计中强调程序效率实际应中更注重程序理解性
    (5)B 解析 软件设计包括软件结构设计数设计接口设计程设计中结构设计定义软件系统部件间关系数设计分析时创立模型转化数结构定义接口设计描述软件部软件操作系统间软件间通信程设计系统结构部件转换成软件程性描述
    (6)C 解析 数处理单位数项假设干数项组成数元素数指够计算机识存储加工处理信息载体数结构指数间相互关系数运算
    (7)D 解析 假设线性表长度n坏情况泡排序n2遍前扫描n2遍前扫描需拟次数n(n1)2
    (8)C 解析 满二叉树指层外层结点两叶子结点满二叉树中层结点数达值满二叉树第k层2k1结点深度m满二叉树2m1结点
    (9)B 解析 数库理系统(Database Management System简称DBMS)数库机构种系统软件负责数库中数组织数操数维护控制保护数效劳等数库理系统数库系统核心
    (10)C 解析 关系模型数库中根结构二维表种二维表称关系关系列称属性具N属性关系称N元关系
    (11)B 解析 合法标识符字母数字划线组成第字符必须字母划线户定义标识符关键字相选项A)数字第字母auto关键字选项C)中数字第字母else关键字选项D)中负号合法
    (12)A 解析 C语言中合法标识符命名规标识符字母数字划线3种字符组成第字符必须字母划线C语言标识符分关键字预定义标识符户标识符选项B)C)中横线点合法选项D)中caseC语言关键字
    (13)A 解析 C语言中函数进行递调函数中定义函数函数返回值假设返回值返回值类型必确定
    (14)D 解析 存中实参单元形参单元单元C语言中仅调函数时形参分配存储单元实参应值传递形参调结束形参单元释放实参单元保存维持原值
    (15)B 解析 双目运算中两边运算量类型转换规律
    运算数1运算数2转换结果类型
    短整型 长整型 短整型>长整型
    整型 长整型 整型>长整型
    字符型 整型 字符型>整型
    符号整型 符号整型 符号整型>符号整型
    整型 浮点型 整型>浮点型
    ab时候ab类型致根类型转换规整型转换成double类型加减类似转化规charshort>int>unsigned>long>double←float
    (16)D 解析 ANSI标准中longintshort分占422字节实际某C编译系统intshort占4字节说种类型数占存选择种C编译系统决定
    (17)B 解析 题考查通scanf函数输入数时格式控制问题变量j格式控制2d接收输入数前两位第三位开始直空格间输入会保存变量y中y浮点型数输出结果选项B)
    (18)B 解析 do…while循环程序先执行次循环体判断循环否继续题先输出次i值0接着判断表达式i++值值0循环结束时变量i值加已变1程序次输出i值1
    (19)D 解析 if…else语句执行程首先计算if面圆括号表达式值假设表达式值非0执行if子句然跳else子句执行if语句条语句假设表达式值0跳if子句执行else子句接着执行if语句条语句C语言语法规定else子句总前面带elseif匹配书写格式关题目ifelse相嵌套第if子句里相x0时zz+1
    (20)A 解析 题考查switch语句方法switch语句执行程进入switch结构条件表达式进行运算然找条件表达式值相匹配case作入口执行switch结构中面语句直遇break语句跳出switch语句果case匹配时执行default面语句
    (21)A 解析 题考查分支选择switch语句 般形式
    switch(表达式)
    {
    case常量表达式1 语句1
    case常量表达式2 语句2

    case常量表达式n 语句n
    default 语句n+1
    }
    语义计算表达式值逐常量表达式值进行拟表达式值某常量表达式值相等时执行语句然进行判断继续执行面 case语句表达式值case常量表达式均相等时执行default语句
    (22)D 解析 C语言中定义维数组语句般形式
    类型名 数组名[常量表达式]
    维数组引形式数组名[标表达式]count表示2整5整数i计算少数组元素
    (23)D 解析 C语言中数组元素标0开始指针变量p指数组首址for循环语句中指针变量p始终指数组首址执行循环赋值语句数组元素值均变2
    (24)B 解析 题考查循环语句嵌套条件判断问题程序中层循环判断条件j(25)C 解析 C语言中字符型数存中存储形式ASCII码值需整型格式输出字符时输出ASCII码值字符'A''D'ASCII码值分6568
    (26)D 解析 题中直接指针变量k时注意k指针运算外开始应知道*k值数组中某标值*k0函数功找出数组中元素位置元素值
    (27)B 解析 argc中存入命令行中字符串数argv指字符型指针数组指针
    (28)C 解析 p&a[3]指针指数组a第4元素p[5]指数组a第9元素a[8]9b9
    29)C 解析 函数形参实参分占存单元改变形参值会影响应实参值选项A)正确指针类型函数返回址值选项B)正确文件stdioh中NULL定义void 型指针选项D)正确指针变量值存储单元址整数选项C)错误
    (30)C 解析 题考查指针引维数组元素方法*p+9运算符*优先级高+输出结果p指元素1然加9值10
    (31)B 解析 字符串连接函数strcat调形式strcat(s1s2)函数s2指字符串容连接s1指字符串面动覆盖s1串末尾尾标函数返回s1址值
    (32)A 解析 题综合考查字符数组赋值strcpy函数法C语言允许赋值表达式字符数组赋值面语句非法str1China果想China5字符放数组str1中逐输入外strcpy函数该函数功字符串复制字符数组中例strcpy(str1China)strcpy(str1str2)注意企图语句实行赋值(str2值传str1)str1str2赋值语句字符串常量字符数组直接字符数组
    strcpy函数结构strcpy(字符数组1字符串2)
    中需注意字符数组1长度应字符串2长度字符数组1必须写成数组名形式(str1)字符串2字符数组名字符串常量赋值语句字符串常量字符数组直接字符数组
    (33)C 解析 fun函数中while循环功逐取字符数组s字符判断否数字假设作位数字保存变量n中n原数数位相应左移10进制位指针s指数组第3位时循环条件成立循环结束返回n 值输出n值61
    (34)A 解析 题中pq指字符类型数指针*q p[0]字符型数选项B)C)D)符合题目求选项A)计算出指针类型数占存字节数
    (35)A 解析 循环开始前指针ts指字符串起始位置然通while循环判断t指位置否空时t右移动位while循环结束时t减1时t指位置字符串结束标志'\0'处ts值字符串长度包括结束标志
    (36)C 解析 题综合考查输入函数scanf函数会空格视分隔符getchar函数输入单字符getc函数文件操作函数显然符合题意通gets函数输入字符串时输入空格认字符串字符
    (37)D 解析 通赋初值方式维数组赋字符串般数组赋初值相方式维字符数组赋字符串赋值时直接赋字符串常量选项B)C)面'\0'余C语言中系统会动字符串结尾处加字符'\0'作串结束标记
    (38)D 解析 函数静态局部变量编译时赋初值赋初值次程序运行时已初值次调函数时重新赋值保存次函数调结束时值
    (39)C 解析 带参数宏定义命令行形式 #define 宏名(形参表) 换文
    编译时候编译预处理程序换文换宏M(nm)换nm计算计算结果赋a注意宏换编译时预处理程序完成宏换占运行时间函数调程序运行时进行函数调程中需占系列处理时间
    (40)A 解析 题功序读两文文件次输出翻开文件时出现错误fopen函数返回NULL
    二填空题
    (1)1 行性研究 解析 软件生命周期般包括行性研究需求分析设计实现测试交付维护等软件生命周期分三阶段①软件定义阶段行性研究需求分析②软件开发阶段设计实现测试③软件运行维护阶段交付维护
    (2)2 完善性 解析 软件维护活动包括类改正性维护适应性维护完善性维护预防性维护改正性维护指软件交付识纠正软件错误改正软件性缺陷排实施中误应进行诊断改正错误程适应性维护指软件适应变化修改软件程完善性维护指满足户软件提出新功性求需修改次开发软件扩充软件功增强软件性改良加工效率提高软件维护性预防性维护提高软件维护性性等进步改良软件良根底
    (3)3 非线性结构 解析 数逻辑结构线性结构非线性结构两类
    (4)4 n+1 解析 意棵二叉树中度O结点(叶子结点)总度2结点
    (5)5 实体 解析 ER图中矩形表示实体椭圆形表示属性菱形表示联系
    (6)6 3 解析 C语言语法规定else子句总前面带elseif相结合xy执行printf(d\nz)语句
    (7)7 852 解析 循环前变量y值9中循环语句y0情况循环次循环y值减1循环体y3整时输出表达式y输出减1y值样第次循环y93整输出8y变成8两次循环y值变6y减1变成5输出5两次循环y值变成3y减1变成2输出2两次循环y值变成0结束循环程序输出852
    (8)8 k9)10 60 解析 题中代码定义3行2列二维数组a定义指两元素维数组指针pp指两维数组a首行代码*(*(p+2)+1)中p+2指两维数组a第三行a[2]*(p+2)指a[2][0]*(p+2)+1指a[2][1]*(*(p+2)+1)引a[2][1]值60
    (10)11 ACE 解析 题中for循环体执行完次变量i值加两次i初值'a'执行次循环变'c'变成'e'变'g'时循环条件假设满足循环终止题输出3字符表达式i'a'+'A'表示输出i应写字母结果ACE
    (11)12 x[0] 13 x[0] 解析 函数f( )通for循环逐拟数组x中元素循环结束p0p1分表示值值数组中标位置然题意值x[p0]数组元素x[n1]交换位置值x[p1]第元素(x[0]) 进行交换空白处应该填入x[0]
    〔12)14 *(str+I)str[I] 解析 str指针变量指字符型数循环程中 *(str+I)访问字符串中第I元素判断否结束标志果II+1继续取元素进行判断直 *(str+I)值'\0'止标方式引字符*(str+I)相str[I]
    (13)15 30x 解析 题参数传递属值传递调函数改变调函数中数
    选择题
    题A〕B〕C〕D〕四选项中选项正确请正确选项涂写答题卡相应位置答试卷分
    〔1〕算法空间复杂度指
    A)算法程序长度 B)算法程序中指令条数 C)算法程序占存储空间 D)执行算法需存空间
    〔2〕结构化程序设计中模块划分原
    A)模块应包括量功 B)模块规模应量 C)模块间联系应量紧密
    D)模块具高聚度模块间具低耦合度
    〔3〕表达中属测试特征
    A)测试挑剔性 B)完全测试性 C)测试性 D)测试济性
    〔4〕面关象概念描述中错误选项
    A)象C语言中结构体变量 B)象代表着正创立系统中实体
    C)象状态操作(方法)封装体 D)象间信息传递通消息进行
    〔5〕关队列表达中正确选项
    A)队列中插入数 B)队列中删数 C)队列先进先出线性表 D)队列先进出线性表
    〔6〕二叉树序遍历序列dabec中序遍历序列debac前序遍历序列
    A)acbed B)decab C)deabc D)cedba
    〔7〕某二叉树中n度2结点该二叉树中叶子结点数
    A)n+1 B)n1 C)2n D)n2
    〔8〕设三关系表
    R S T
    A B C A B C
    m 1 3 m 1 3
    n n 1 3

    操作中正确选项
    A) TR∩S B) TR∪S C) TR×S D) TRS
    〔9〕表达中正确选项
    A)ER图够表示实体集间联系联系联系 B)ER图表示实体集间联系 C)ER图表示实体集间联系 D)ER图表示概念数模型转换关系数模型
    〔10〕关数库描述正确选项
    A)数处理信息转化数程 B)数物理独立性指数逻辑结构改变时数存储结构变
    C)关系中列称元组元组字段 D)果关系中属性属性组非该关系关键字关系关键字称关系外关键字
    〔11〕C语言规定源程序中main函数位置
    A)必须开始 B)必须系统调库函数面 C)意 D)必须
    〔12〕表达中错误选项
    A)计算机直接执行C语言编写源程序 B)C程序C编译程序编译生成缀obj文件二进制文件
    C)缀obj文件连接程序生成缀exe文件二进制文件 D)缀objexe二进制文件直接运行
    〔13〕选项正确表示字符型常量
    A)′\r′ B)a C)\897 D)296
    〔14〕表达中正确选项
    A)构成C程序根单位函数 B)函数中定义函数
    C)main()函数必须放函数前 D)C函数定义格式K&R格式
    〔15〕设变量均已正确定义假设通scanf(dcdc&a1&c1&a2&c2)语句变量a1a2赋数值1020变量c1c2赋字符XY示输入形式中正确选项(注□代表空格字符)
    A) 10□X□20□Y<回车> B) 10□X20□Y<回车> C) 10□X<回车> 20□Y<回车> D) 10X<回车>
    20Y<回车>
    〔16〕假设说明int *pm5n正确程序段
    A)p&nscanf(d&p) B)p&nscanf(d*p) C)scanf(d&n)*pn D)p&n*pm
    〔17〕执行述程序时假设键盘输入68结果
    main()
    { int abs
    scanf(dd&a&b)
    sa
    if(asb
    s*s
    printf(ds) }
    A)36 B)64 C)48 D)
    〔18〕假设执行面程序时键盘输入52输出结果
    main()
    { int abk
    scanf(dd &a&b)
    ka
    if(a else kba
    printf(d\nk)}
    A)5 B)3 C)2 D)0
    〔19〕C语言中函数返回值类型终取决
    A)函数定义时函数首部说明函数类型 B)return语句中表达式值类型 C)调函数时调函数传递实参类型 D)函数定义时形参类型
    〔20〕写字母AASCII码65写字母aASCII码97变量c中写字母转换应写字母语句
    A)c(c′A′)26+′a′ B)cc+32 C)cc′A′+′a′ D)c(′A′+c)26′a′
    〔21〕选项中xl奇数时值0表达式
    A)x21 B)x2 C)x20 D)x20
    〔22〕程序
    main()
    {int k5n0
    do
    {switch(k)
    {case 1 case 3n+1kbreak
    defaultn0k
    case 2 case 4n+2kbreak
    }
    printf(dn)
    }while(k>0 && n<5)
    }
    程序运行输出结果
    A)235 B)0235 C)02356 D)2356
    〔23〕程序
    main()
    { int n9
    while(n>6){n printf(dn)} }
    该程序输出结果
    A)987 B)876 C)8765 D)9876
    〔24〕程序
    #include
    main()
    { int c
    while((cgetchar())′\n)
    { switch(c′2′)
    { case 0
    case 1putchar(c+4)
    case 2putchar(c+4)break
    case 3putchar(c+3)
    case 4putchar(c+3)break } }
    printf(\n)}
    第列开始输入数代表回车符
    2743
    程序输出结果
    A)66877 B)668966 C)6677877 D)6688766
    〔25〕程序
    main()
    { int x0y0i
    for (i1++i)
    { if (i20) {x++continue}
    if (i50) {y++break} }
    printf ( ddxy) }
    程序输出结果
    A)21 B)22 C)25 D)52
    〔26〕程序
    main()
    {int a[4][4]{{l432}{8657}{3725}{4861}}ijkt
    for(i0i<4i++)
    for(j0j<3j++)
    for(kj+1k<4k++)
    if(a[j][i]>a[k][i]){ta[j][i]a[j][i]a[k][i]a[k][i]t}*列排序*
    for(i0i<4i++)printf(da[i][i])
    }
    程序运行输出结果
    A)1657 B)8731 C)4752 D)1621
    〔27〕程序
    int f(int n)
    { if(n1)return 1
    else return f(n1)+1}
    main()
    { int ij0
    for(i1i<3i++)j+f(i)
    printf(d\nj)}
    程序运行输出结果
    A)4 B)3 C)2 D)1
    〔28〕运行程序时键盘输入AhaMA(空格)Aha面程序运行结果
    #include
    main()
    { char s[80]c′a′
    int i0
    scanf(ss)
    while(s[i]′
    { if(s[i]c)s[i]32
    else if(s[i]c32)s[i]s[i]+32
    i++ }
    puts(s) }
    A)ahaMa B)AbAMa C)AhAMa[空格]ahA D)ahAMa[空格]ahA
    〔29〕面程序输出结果
    main()
    { int i
    int a[3][3]{123456789}
    for(i0i<3i++)
    printf(d a[2i][i]) }
    A)1 5 9 B)7 5 3 C)3 5 7 D)5 9 1
    〔30〕现程序段
    #include stdioh
    main()
    { int a[5][6]{23365216782856725435768224578346783245674211}
    int i0j5
    printf(d\n*(&a[0][0]+2*i+j2))}
    程序输出结果
    A)21 B)78 C)23 D)28
    〔31〕请选出正确程序段
    A)int *p
    scanf(dp)

    B)int *s k
    *s100

    C)int *s k
    char *p c
    s&k
    p&c
    *p′a′

    D)int *s k
    char *p e
    s&k
    p&c
    sp
    *s1


    〔32〕面程序段运行结果
    char a[]lanuage*p
    pa
    while(*p′u′){printf(c*p32)p++}
    A)LANGUAGE B)language C)LAN D)langUAGE
    〔33〕程序输出结果
    #include
    int a[3][3]{123456789}*p
    main()
    { p(int*)malloc(sizeof(int))
    f(pa)
    printf(d\n*p)
    free(p) }
    f(int *s int p[][3])
    { *sp[1][1]}
    A)1 B)4 C)7 D)5
    〔34〕程序
    void f(int *q)
    {int i0
    for(i<5 i++) (*q)++
    }
    main()
    {int a[5] {12345} i
    f(a)
    for(i0i<5 i++) printf(d a[i])
    }
    程序运行输出结果
    A)22345 B)62345 C)12345 D) 23456
    〔35〕合法字符型常量
    A)′\x13′ B) ′\081′ C) ′65′ D)\n
    〔36〕语句a数组元素引正确选项
    int a[10]{0123456789}*pa
    A)a[pa] B)*(&a[i]) C)p[i] D)*(*(a+i))
    〔37〕程序
    # include
    main()
    {char p[20]{′a′ ′b′ ′c′ ′d′} q[]abc r[]abcde
    strcat(p r) strcpy(p+strlen(q) q)
    printf(d\nstrlen(p))
    }
    程序运行输出结果
    A)9 B)6 C)11 D)7
    〔38〕C语言中变量隐含存储类
    A)auto B)static C)extern D)存储类
    〔39〕程序输出结果
    main()
    { int c35 printf(d\nc&c)}
    A)0 B)70 C)35 D)1

    〔40〕程序
    #include
    main()
    { FILE *fp int i20j30kn
    fpfopen(d1datw)
    fprintf(fpd\ni)fprintf(fpd\nj)
    fclose(fp)
    fpfopen(d1datr)
    fscanf(fpdd&k&n) printf(d d\nkn)
    fclose(fp) }
    程序运行输出结果
    A)20 30 B)20 50 C)30 50 D)30 20

    二填空题
    请空正确答案写答题卡序号横线答试卷分
    〔1〕设棵完全二叉树700结点该二叉树中 1 叶子结点
    〔2〕常黑箱测试等价类划分法 2 错误推测法3种
    〔3〕数库理系统常见数模型层次模型网状模型 3 3种
    〔4〕通常软件产品提出实现维护停止退役程称 4
    〔5〕数库保护分安性控制 5 发性控制数恢复
    〔6〕执行程序输出结果 6
    main()
    {int a10
    a(3*5a+4)printf(ad\na)
    }
    〔7〕程序输出结果 7
    #include
    main()
    {printf(d\nstrlen(IBM\n012\1\\))}
    〔8〕已定义char ch′′ int i1j执行jch&&i++i值 8
    〔9〕程序运行结果 9
    #include
    long fib(int g)
    { switch(g)
    { case 0return 0
    case 1
    case 2return 1 }
    return(fib(g1)+fib(g2)) }
    main()
    { long k
    kfib(5)
    printf(k5ld\nk)}

    〔10〕面程序功输出数组s中元素标请填空
    main()
    { int k ps[]{1 9 7 2 10 3}
    for(p0 kp p<6 p++)
    if(s[p]>s[k]) 10
    printf(d\nk)}
    〔11〕程序功求出数组x中相邻两元素次存放a数组中然输出请填空
    main()
    {int x[10]a[9]I
    for(I0 I<10 I++) scanf(d&x[I])
    for( 11 I<10 I++ )
    a[I1]x[I]+ 12
    for(I0 I<9 I++) printf(d a[I])
    printf()
    }
    〔12〕设程序正确运行请横线中填入应包含命令行(注try_me()函数a\myfiletxt中定义)
    13
    main()
    { printf(\n)
    try_me()
    printf(\n)}

    〔13〕程序功建立带头结点单链表链表结点中数通键盘输入输入数1时表示输入结束(链表头结点data域放数表空条件ph>nextNULL)请填空
    #include
    struct list { int data struct list *next}
    struct list*creatlist()
    { struct list *p*q*phint aph(struct list *)malloc (sizeof(struct list))
    pqphprintf(Input an integer number entre1 to end\n)
    scanf(d&a)
    while(a1)
    { p(struct list*)malloc(sizeof(struct list))
    14 aq>nextp 15 pscanf(d&a)}
    p>next′\0return(ph)}
    main()
    {struct list * head headcreatlist()}
    (1)D 解析 算法复杂度包括算法时间复杂度算法空间复杂度谓算法时间复杂度指执行算法需计算工作量算法空间复杂度指执行算法需存空间
    (2)D 解析 结构化程序设计中般较优秀软件设计量做高聚低耦合样利提高软件模块独立性模块划分原
    (3)C 解析 软件测试目标精心控制环境执行程序发现程序中错误出程序性鉴定3方面重特征测试挑剔性完全测试性测试济性中没测试性说法
    (4)A 解析 象数容许操作组成封装体客观实体直接应关系象间通传递消息互相联系模拟现实世界中事物彼间联系B)C)D)正确象思想广泛应C++Java等语言中A)错误
    (5)C 解析 队列种操作受限线性表允许线性表端进行插入操作端进行删操作中允许插入端称队尾(rear)允许删端称队首(front)队列具先进先出特点先进先出原组织数
    (6)D 解析 序遍历序列确定根结点c中序遍历序列知左子树deba构成右子树空左子树序遍历序列知根结点e中序遍历序列知左子树d右子树ba构成图示求该二叉树前序遍历序列选项D)
    (7)A 解析 棵二叉树T果终端结点(叶子)数n1度2结点数n2n1n2+1该二叉树叶子结点数等n+1
    (8)C 解析 两关系合操作笛卡尔积表示设n元关系Rm元关系S分pq元组RS笛卡积记R×Sm+n元关系元组数p×q题意关系T关系R关系S进行笛卡尔积运算
    (9)A 解析 两实体间联系实际实体集间函数关系种函数关系面种联系()联系联系概念模型便种模型转换概念模型赖具体数库理系统容易关系模型网状模型层次模型等种模型转换
    (10)D 解析 数处理指数转换成信息程应选项A)表达错误数物理独立性指数物理结构改变会影响数库逻辑结构应选项B)表达错误关系中行称元组应存储文件中记录关系中列称属性应存储文件中字段应选项C)表达错误
    (11)C 解析 main函数整程中位置C程序总main函数开始执行
    (12)D 解析 C语言源程序(缀名c)编译器编译先生成汇编语言程序然编译程序汇编语言程序翻译成机器指令程序目标程序(缀名obj)目标程序直接运行库函数目标程序连接成执行文件(缀名exe)前方运行
    (13)A 解析 C语言中字符常量代表ASCII字符集中字符程序中单引号括起作字符常量字符常量范围0~127字符常量单引号括起选项B)C)错误选项D)超字符常量表示范围
    (14)A 解析 题考查C语言综合根底知识构成C程序根单位函数main函数整程序中位置C程序总main函数开始执行C语言函数定义互相行独立定义函数时函数定义函数C函数定义般格式两种传统格式现代格式传统格式称K&R格式早期编译系统格式现代格式称ANSI格式现代编译系统格式
    (15)D 解析 题中scanf函数格式控制没空格选项A)B)C)输入第空格会作字符赋值变量c1会解释成分隔符
    (16)D 解析 &求址运算符*指变量说明符选项A)B)应改scanf(dp)选项C)中指针变量p未指确定存单元赋值样做危险建议
    (17)B 解析 题中a值6b值8s值8s*s等价ss*s
    (18)C 解析 题考查简单if…else语句先执行条件if(a(19)A 解析 C语言中应定义函数时指定函数值类型加类型说明函数律整型处理定义函数时函数值说明类型般应该return语句中表达式类型致果函数值类型return语句中表达式类型致函数类型函数类型决定返回值类型
    (20)D 解析 C语言中字符数参加运算时实际ASCII码参运算写字母ASCII码应写字母ASCII码32写字母转化写字母需加32选项B)C)符合条件变量c中存储写字母c'A'值定26应选项A)选项C)含义相
    (21)D 解析 x值1奇数x2余数等1选项A)C)中表达式结果真0选项B)说x2商会等0选项D)中表达式结果假等0
    (22)A 解析 变量初始值分k5n0程序第次进入循环时执行default语句时k4执行case 4分支结果n2k3印出2程序然进行第二次循环时n2k3执行case 3分支结果n3k2印出3程序进行第三次循环时n3k2执行case 2 case 4两分支结果n5k1印出5时n5满足n<5循环条件退出循环程序运行结束输出结果235
    (23)B 解析 该题目应该根循环体第次次执行时输出结果决定项项正确第次进入循环时n值9循环体先n运算n值变8第次输出值8排选项A)D)循环条件n>6知道次循环开始时n值应该7次执行循环时输出6排选项C)
    (24)A 解析 题考查字符输入输出函数getcharputchargetchar函数标准输入设备读入字符putchar(c)函数字符变量c中字符输出标准输出设备字符作整数参运算
    (25)A 解析 题考查continuebreak语句循环语句中作break语句作结束层循环continue语句作结束次循环直接进入次循环
    (26)A 解析 题利重 for循环嵌套实现二维数组元素列排序利外层循环实现列控制部循环利选择法数组元素序进行排列输出角线元素值
    (27)B 解析 main函数中f(1)f(2)值进行累加
    f(1)1
    f(2)f(1)+12
    j值1+23
    (28)A 解析 题考查知识点写字母应写字母ASCII码值32字符作整数进行算术运算等操作
    (29)B 解析 题循环方法考查数组概念掌握首先i0时数组中位置a[2][0]7然果排法考虑面循环4选项中第1数7选项B)题执行第2次循环时i值1printf函数中数组指a[1][1]5次循环求出答案
    (30)A 解析 通址引二维数组假设定义int a[3][4]ij0≤i≤30≤j<4种方式引数组中第i行第j列元素a[i][j]*(a[i]+j)*(*(a+i)+j)(*(a+i))[j]*(&a[0][0]+4*i+j)表达式&a[0][0]+2*i+j2相址&a[0][0]加少偏移量
    (31)C 解析 题选项A)B)犯样错误指针变量定义没指具体变量说指针变量中没确定址值值预见指单元预见进行赋值操作外选项D)中sint型指针变量pchar型指针变量指存单元占字节数字符指针变量p值赋整型指针变量s
    (32)C 解析 段程序作输出字符串lanuage中字母u前字符转化写字母
    注意果字符数组作字符串定义该字符数组时数组应该实际存放长字符元素存放'\0'
    (33)D 解析 题考查二维数组元素引方法题中动态存储分配函数malloc分配int型数长度存然指针p指段存函数f()中p指数进行赋值p[1][1]二维数组第二行第二列元素应实参a元素5输出结果5
    (34)B 解析 调函数f()时数组a址传递指针q时q指数组a第元素a[0]5次循环程中q始终指a[0]a[0]值增加5输出结果62345
    (35)A 解析 C语言字符常量单引号(撇号)括起字符外C语言中允许\ 开头字符序列表示字符常量中形式\ddd表示13位8进制数代表字符形式\xhh表示12位16进制数代表字符题中'\x13'表示回车符字符常量'\081'8进制数代表字符形式正确8进制数代表字符中会出现数字8'65'字符十进制数字\n双引号括起字符表示字符串字符常量
    (36)D 解析 题考查数组指针应选项D)第层括号中数组a中第i项元素值外面加指针运算符没意义
    (37)B 解析 strcpy()函数功字符串q复制p[3]位置开始存储单元时复制字符串结束标志'\0' p[6]中函数strlen()返回字符串中包括'\0'实际长度题答案B〕
    (38)A 解析 auto变量static声明局部变量auto作存储类声明时写auto存储类隐含确定auto(动存储类)动态存储方式数变量动变量static声明局部变量静态局部变量函数调结束静态局部变量占存存储单元空间释放局部变量保存原值次调时继续该值extern声明外部变量外部变量全局变量extern声明改变全局变量作域实际关键字auto 省略auto写隐含确定动存储类属动态存储方式
    (39)C 解析 题考查位&1&110&00数身位结果数发生变化
    (40)A 解析 题中掌握关文件函数应
    函数名fopen
    功翻开文件
    调方式FILE *fp
    fpfopen(文件名文件方式)
    函数名fprintf
    功传送格式化输出文件中
    调方式fprintf(文件指针格式字符串输出表列)
    函数名fclose
    功关闭文件
    调方式fclose(文件指针)
    函数名fscanf
    功磁盘文件执行格式化输入
    调方式fscanf(文件指针格式字符串输入列表)
    二填空题
    (1)1 350 解析 完全二叉树中设高度nh层外层结点数达算出h1019层结点数2^91511层结点数700511189189295层外结点2^(91)95161结点数189+161350
    (2)2 边界值分析法 解析 黑箱测试法完全考虑程序部结构部特征根程序功导出测试例常黑箱测试等价类划分法边界值分析法错误推测法3种
    (3)3 关系模型 解析 数库理系统位户操作系统间层系统理软件属系统软件户数库间标准接口总基某种数模型分层次模型网状模型关系模型
    (4)4 软件生命周期 解析 软件产品考虑概念开始该软件产品止整时期属软件生命周期般包括行性研究需求分析设计实现测试交付维护等活动
    (5)5 完整性控制 解析 安性控制防止未授权户意意存取数库中数免数泄露更改破坏完整性控制保证数库中数语义正确性效性防止数造成错误操作发控制正确处理户务环境发操作防止错误发生恢复数库破坏数正确时数库恢复正确状态
    (6)6 a14 解析 题考查表达式优先级问题先计算表达式3*515计算a+414数14赋值a根printf()函数输出格式控制串输出结果应a14
    (7)7 9 解析题字符串中9字符分'I''B''M''\n' '0''1''2''\1''\\'中\n表示换行\\表示反斜杠字符\题输出结果9
    (8)8 1 解析 执行逻辑表达式jch&&i++时首先判断jch值ch''0jch0编译系统便计算表达式i++值i值变1
    (9)9 k5 解析 题考查函数递调方法g0g1g2递终止条件然回代方法值推出值直计算出终结果
    (10)10 kp 解析 寻找数组中元素标需先预设1时元素标序逐考查数组元素发现前元素时元素更时前元素标更新时元素标直考查数组全部元素时元素标数组元素标通常预设元素标数组首元素标考查通常首元素开始序继元素考查程序中存储时元素标变量k变量p控制序考查循环控制变量发现前元素s[p]时元素s[k]更时应该p更新k空框处应填入代码kp
    (11)11 I1 12 x[I1] 解析 10数相两数相加取总进行9次加法运算空14处应填入I1相两数相加取放数组a中x[0]x[1]存放a[0]中空15处应填入x[I1]
    (12)13 #include 解析 题考查函数存储分类概念果没特说明函数存储范围定义函数位置文件结尾果文件想函数需#include文件包含命令定义函数文件包含进
    (13)14 p>data 15 q 解析 题考查链表数结构结构体变量中数引链表特点结构体变量中两域数指该结构体变量类型指针指明链表结点
    选择题
    题A〕B〕C〕D〕四选项中选项正确请正确选项涂写答题卡相应位置答试卷分
    〔1〕程序流程图中带箭头线段表示
    A)图元关系 B)数流 C)控制流 D)调关系
    〔2〕结构化程序设计根原包括
    A)态性 B)顶 C)模块化 D)逐步求精
    〔3〕软件设计中模块划分应遵循准
    A)低聚低耦合 B)高聚低耦合 C)低聚高耦合 D)高聚高耦合
    〔4〕软件开发中需求分析阶段产生文档
    A)行性分析报告 B)软件需求规格说明书 C)概设计说明书 D)集成测试方案
    〔5〕算法穷性指
    A)算法程序运行时间限 B)算法程序处理数量限 C)算法程序长度限
    D)算法限户
    〔6〕长度n线性表排序坏情况拟次数n(n1)2排序方法
    A)快速排序 B)泡排序 C)直接插入排序 D)堆排序
    〔7〕关栈表达正确选项
    A)栈先进先出组织数 B)栈先进出组织数 C)栈底插入数 D)删数
    〔8〕数库设计中ER图转换成关系数模型程属
    A)需求分析阶段 B)概念设计阶段 C)逻辑设计阶段 D)物理设计阶段
    〔9〕三关系RST
    R
    B C D
    a 0 k1
    b 1 n1

    S
    B C D
    f 3 h2
    a 0 k1
    n 2 x1

    T
    B C D
    a 0 k1



    关系RS通运算关系T运算 A) B)然连接 C)笛卡尔积 D)交
    〔10〕设表示学生选课三张表学生S(学号姓名性年龄身份证号)课程C(课号课名)选课SC(学号课号成绩)表SC关键字 (键码) A)课号成绩 B)学号成绩 C)学号课号 D)学号姓名成绩
    〔11〕表达中正确选项
    A)C程序中注释出现程序开始位置语句面 B)C程序书写格式严格求行写语句
    C)C程序书写格式语句写行
    D)C语言编写程序放程序文件中
    〔12〕选项中合法标识符 A)print B)FOR C)&a D)_00
    〔13〕选项中属字符常量
    A)′C′ B)C C)′\xCC′ D) ′\072′
    〔14〕设变量已正确定义赋值正确表达式
    A)xy*5x+z B)int(1585) C)xy+z+5++y D)x2550
    〔15〕定义语句中正确选项
    A)int ab0 B)char A65+1b′b′ C)float a1*b&a*c&b D)double a00b11
    〔16〕程序段
    char ch int k
    ch′a′ k12
    printf(cdchchk) printf(kd\nk)
    字符aASCII码值97执行述程序段输出结果
    A)变量类型格式描述符类型匹配输出定值 B)输出项格式描述符数符输出零值定值
    C)a9712k12 D)a97k12
    〔17〕字母AASCII码值65假设变量kkchar型正确判断出kk中值写字母表达式
    A)kk>′A′&& kk<′Z′ B)(kk>′A′||kk<′Z′) C)(kk+32)>′a′&&(kk+32)<′Z′ D)isalpha(kk)&&(kk<91)
    〔18〕变量c值246时值真表达式
    A)(c2)||(c4)||(c6) B)(c>2&& c<6)||(c3)||(c5) C)(c>2&&c<6)&&(c2) D)(c>2&& c<6)&&(c21)
    〔19〕假设变量已正确定义程序段
    int a3b5c7
    if(a>b) ab ca
    if(ca) cb
    printf(ddd\nabc)
    输出结果
    A)程序段语法错 B)353 C)355 D)357
    〔20〕程序
    #include
    main()
    { int x1y0a0b0
    switch(x)
    { case 1
    switch(y)
    { case 0a++ break
    case 1 b++ break
    }
    case 2a++ b++ break
    case 3a++ b++
    }
    printf(adbd\nab)
    }
    程序运行结果
    A)a1b0 B)a2b2 C)a1b1 D)a2b1
    〔21〕程序
    #include
    main()
    { int x8
    for( x>0 x)
    { if(x3) {printf(dx) continue}
    printf(dx)
    }
    }
    程序运行结果
    A)742 B)8752 C)9764 D)8542
    〔22〕构成限循环语句语句组
    A) n0 do{++n}while(n<0)B) n0 while(1){n++}
    C) n10 while(n){n} D) for(n0i1 i++)n+i
    〔23〕程序
    #include
    main()
    { int a[ ]{1234}y*p&a[3]
    P y*pprintf(yd\ny)
    }
    程序运行结果
    A)y0 B)y1 C)y2 D)y3
    〔24〕错误定义语句
    A)int x[][3]{{0}{1}{123}} B)int x[4][3]{{123}{123}{123}{123}}
    C)int x[4][]{{123}{123}{123}{123}} D)int x[][3]{1234}
    〔25〕设程序段
    char s[20]Beijing*p
    ps
    执行ps语句表达正确选项
    A)*p表示s[0] B)s数组中元素数p指字符串长度相等
    C)sp指针变量 D)数组s中容指针变量p中容相
    〔26〕假设定义int a[2][3]选项中a数组元素正确引
    A)a[2][1] B)a[2][3] C)a[0][3] D)a[1>2][1]
    〔27〕定义语句char s[10]假设终端s输入5字符错误输入语句
    A)gets(&s[0]) B)scanf(ss+1) C)gets(s) D)scanf(ss[1])
    〔28〕表达中错误选项
    A)程序中#开始语句行预处理命令行 B)预处理命令行分号表示结束 C)#define MAX合法宏定义命令行 D)C程序预处理命令行处理程序执行程中进行
    〔29〕结构体类型说明变量定义中正确选项
    A)tupedef strct
    {int n char c}REC
    REC t1t2
    B)tupedef strct
    {int n char c}
    REC t1t2
    C)tupedef strct REC
    {int n0 char c'A'}t1t2
    D)strct
    {int n char c}REC
    REC t1t2
    〔30〕表达中错误选项
    A)gets函数终端读入字符串 B)getchar函数磁盘文件读入字符
    C)fputs函数字符串输出文件 D)fwrite函数二进制形式输出数文件
    〔31〕程序
    #include
    main()
    { int s[12]{123443211123}c[5]{0}i
    for(i0i<12i++) c[s[i]]++
    for(i1i<5i++) printf(dc[i])
    printf(\n)
    }
    程序运行结果
    A)1 2 3 4 B)2 3 4 4 C)4 3 3 2 D)1 1 2 3
    〔32〕程序
    #include
    void fun(int *sint n1int n2)
    { int ijt
    in1 jn2
    while(i}
    main()
    { int a[10]{1234567890}k
    fun(a03) fun(a49) fun(a09)
    for(k0k}
    程序运行结果
    A)0987654321 B)4321098765 C)5678901234 D)0987651234
    〔33〕程序
    #include
    #include
    void fun(char *s[]int n)
    { char *t int ij
    for(i0ifor(ji+1j if(strlen(s[i])>strlen(s[j])) {ts[i]s[i]s[j]s[j]t}
    }
    main()
    { char *ss[]{bccbbccxyaaaaccaabcc}
    fun(ss5) printf(ss\nss[0]ss[4])
    }
    程序运行结果
    A)xyaaaacc B)aaaaccxy C)bccaabcc D)aabccbcc
    〔34〕程序
    #include
    int f(int x)
    { int y
    if(x0||x1) return(3)
    yx*xf(x2)
    return y
    }
    main()
    { int z
    zf(3) printf(d\nz)
    }
    程序运行结果
    A)0 B)9 C)6 D)8
    〔35〕程序
    #include
    void fun(char *achar*b)
    { while(*a′*′)a++
    while(*b*a){b++a++}
    }
    main()
    { char *s*****a*b****t[80]
    fun(st) puts(t)
    }
    程序运行结果
    A)*****a*b B)a*b C)a*b**** D)ab
    〔36〕程序
    #include
    #include
    typedef struct{ char name[9] char sex float score[2] }STU
    void f(STU a)
    { STU b{Zhao′m′850900} int i
    strcpy(anamebname)
    asexbsex
    for(i0i<2i++) ascore[i]bscore[i]
    }
    main()
    { STU c{Qian′f′950920}
    f(c) printf(sc20f20f\ncnamecsexcscore[0]cscore[1])
    }
    程序运行结果
    A)Qianf9592 B)Qianm8590 C)Zhaof9592 D)Zhaom8590
    〔37〕程序
    #include
    main()
    { FILE *fp int a[10]{123}in
    fpfopen(d1datw)
    for(i0i<3i++) fprintf(fpda[i])
    fprintf(fp\n)
    fclose(fp)
    fpfopen(d1datr)
    fscanf(fpd&n)
    fclose(fp)
    printf(d\nn)
    }
    程序运行结果
    A)12300 B)123 C)1 D)321
    〔38〕变量a中数二进制表示形式01011101变量b中数二进制表示形式11110000假设求a高4位取反低4位变执行运算
    A)a^b B)a|b C)a&b D)a<<4
    〔39〕C语言中时占存单元变量存储类型
    A)autoregister B)externregister C)autostatic D)staticregister
    〔40〕设定义语句int (*f)(int)表达正确选项
    A)f基类型int指针变量 B)f指函数指针变量该函数具int类型形参
    C)f指int类型维数组指针变量 D)f函数名该函数返回值基类型int类型址
    二填空题
    请空正确答案写答题卡序号横线答试卷分
    〔1〕测试例包括输入值集 1 值集
    〔2〕深度5满二叉树 2 叶子结点
    〔3〕设某循环队列容量50头指针front5(指队头元素前位置)尾指针rear29(指队尾元素)该循环队列中 3 元素
    〔4〕关系数库中表示实体间联系 4
    〔5〕数库理系统提供数定义语言数操语言数控制语言中 5 负责数模式定义数物理存取构建
    〔6〕已定义char c′ ′int a1b(处c初值空格字符)执行bc&&ab值 6 
    〔7〕设变量已正确定义整型表达式ni2++ii++值 7
    〔8〕假设定义int k程序段输出结果 8
    for(k2k<6k++k++) printf(##dk)
    〔9〕程序定义语句中x[1]初值 9 程序运行输出容 10
    #include
    main()
    { int x[]{12345678910111213141516}*p[4]i
    for(i0i<4i++)
    { p[i]&x[2*i+1]
    printf(dp[i][0])
    }
    printf(\n)
    }
    〔10〕程序输出结果 11
    #include
    void swap(int *a int *b)
    { int *t
    ta ab bt
    }
    main()
    { int i3j5*p&i*q&j
    swap(pq) printf(d d\n*p*q)
    }
    〔11〕程序输出结果 12
    #include
    main()
    { int a[5]{246810}*p
    pa p++
    printf(d*p)
    }
    〔12〕程序输出结果 13
    #include
    void fun(int x)
    { if(x2>0) fun(x2)
    printf(dx)
    }
    main()
    { fun(3) printf(\n)}
    〔13〕程序中函数fun功统计person指结构体数组中性(sex)M记录数存入变量n中作函数值返回请填空
    #include
    #define N 3
    typedef struct
    { int num char nam[10] char sex}SS
    int fun(SS person[])
    { int In0
    for(I0Iif( 14 ′M′)n++
    return n
    }
    main()
    {SS W[N]{{1AA′F′}{2BB′M′}{3CC′M′}} int n
    nfun(W) printf(nd\nn)
    }
    〔14〕程序功名fileadat文文件中逐读入字符显示屏幕请填空
    #include
    main()
    {FILE *fp char ch
    fpfopen( 15 )
    chfgetc(fp)
    while(feof(fp)) { putchar(ch) chfgetc(fp) }
    putchar(′\n′)fclose(fp)
    }
    选择题
    (1)C 解析 程序流程图解决问题方法思路算法种描述中图框表示种操作类型图框中文字符号表示操作容流程线表示操作先次序带箭头线段数流程图中表示数流带箭头线段程序流程图中表示控制流题中出选项中图元间带箭头线段表示图元关系模块间带箭头线段表示调关系构成程序流程图根图符含义→ 表示控制流□表示加工步骤 表示逻辑条件
    (2)A 解析 结构化程序设计原包括顶逐步求精设计思想独立功单出入口模块化设计等态性面象程序语言特征
    (3)B 解析 模块划分应遵循准包括模块间耦合聚般说求模块间耦合低模块独立求模块聚程度高高聚低耦合原
    (4)B 解析 需求分析阶段工作包括需求获取需求分析编写需求规格说明书需求评审等四方面产生文档软件需求规格说明书户分析员设计员间交流提供方便直接支持目标软件系统确实认作控制软件开发进程
    (5)A 解析 算法具6特性① 穷性算法必须总(合法输入值)执行穷步结束步限时间完成运行时间限② 确定性算法中条指令必须确切含义读者理解时会产生二义性③ 行性算法行算法中描述操作通已实现根运算执行限次实现④ 输入算法零输入输入取某特定象集合⑤ 输出算法输出
    (6)D 解析 坏情况快速排序泡排序直接插入排序需拟次数n(n1)2堆排序需拟次数nlog2n
    (7)B 解析 栈中允许插入删端称栈顶允许插入删端称栈底栈顶元素总插入元素先删元素栈底元素总先插入元素删元素栈先进出进先出原组织数
    (8)C 解析 数库逻辑设计分① 概念模型转换成般数模型② 般数模型转换特定数库理系统支持数模型概念模型转换成关系数模型ER图转换成组关系模式
    (9)D 解析 关系运算中交定义设R1R2参加运算两关系具相度n相应属性值取域 交运算结果度等n关系中交运算结果属R1属R2
    (10)C 解析 选课SC 表 学生S 表 课程C 表映射表键两表键组合
    〔11)C 解析 C语言中注释加程序中位置选项A)错误C程序分模块写文件中编译时组合起选项D)错误C程序书写风格行写语句语句写行中正确答案选C)
    (12)C 解析 C语言合法标识符命名规标识符字母数字划线组成第字符必须字母划线选项C)中标识符第字符&C)题正确答案
    (13)B 解析 C语言程序中单引号字符反斜线特定字符括起表示字符常量选项A)C)D)正确字符常量选项B)双引号括起字符表示字符串常量正确答案B)
    (14)C 解析 求余运算符两边运算象必须整型选项B)D)中 两边运算象浮点整数选项B)D)错误表达式选项A)中赋值表达式两边出现相变量x错误选项C)逗号表达式正确答案C)
    (15)B 解析 题考查变量定义方法果次进行变量定义间逗号隔开选项A)C)错误选项C)中变量c浮点型指针指浮点型数指指针变量b 正确答案B)
    (16)D 解析 输出格式控制符c表示变量字符形式输出输出格式控制符d表示变量带符号十进制整型数输出第输出语句输出结果a97第二输出语句输出结果k12选项D)正确答案
    (17)B 解析 C语言字符ASCII码形式存确定某字符写字母确定ASCII码'A''Z'间选项A)C)符合求函数isalpha确定字符否字母写字母ASCII码值范围6590果字母ASCII码91确定写字母题答案选B)
    (18)B 解析 满足表达式(c>2&&c<6)整型变量c值23456变量c值246时值35表达式c3C5中少真C值表达式B)真正确答案B)
    (19)B 解析 两if语句判断条件满足程序执行ca条语句变量c值等3变量b值没变化程序输出结果353正确答案B)
    (20)D 解析 题考查 switch结构容C语言中程序执行完case标号容果没break语句控制结构会转移case继续执行case 常量表达式起语句标号作该处进行条件判断题程序执行完部switch结构继续执行外部switch结构 case 2分支ab值分21
    (21)D 解析 题中程序执行次循环x值减2循环执行4次x值842时printf语句先输出x值x值减1x6时if语句条件成立程序先x值减1输出输出结果选项D)
    (22)A 解析 选项A)中变量n值先加1进行循环条件判断时循环条件n<0成立跳出循环正确答案A
    (23)D 解析 程序中指针变量p初始指a[3]执行p减1p指a[2]语句y*p作a[2]值赋变量y输出y3正确答案D)
    (24)C 解析 题考查二维数组定义初始化方法C语言中定义初始化二维数组时省略数组第维长度省略第二维长度应选项C)错误
    (25)A 解析 语句ps作字符数组s首址作初值赋指针变量pp指字符数组s第字符s[0]
    (26)D 解析 C语言中数组标0开始二维数组a[2][3]第维标取值01第二维标取值012选项A)B)C)错误选项D)表示数组元素a[0][0]正确答案D)
    (27)D 解析 格式输入中求出变易址D)答案中出s[1]值表达式
    (28)D 解析 C语言中预处理命令符号#开头命令程序编译前进行处理选项D)描述错误 答案选D)
    (29)A 解析 题考查typedef法结构体变量定义方法typedef声明结构体类型格式typedef struct {结构元素定义}结构类型 题正确答案A)
    (30)B 解析 getchar函数作终端读入字符
    (31)C 解析 for(i0i<12i++) c[s[i]]++中数组元素s[i]值作数组c标退出循环时数组c4元素值分4332输出结果选项C)
    (32)C 解析 函数fun(int *sint n1int n2)功数组s中元素进行首尾互相调换函数中fun(a03)执行完数组a[12]{4321567890}执行fun(a49)数组 a[12]{4321098765}执行fun(a09)数组a[12]{5678901234}正确答案C)
    (33)A 解析 函数fun(char *s[]int n)功字符串数组元素字符串长度排序函数中执行fun(ss5)语句*ss[]{xy bcc bbcc aabcc aaaacc}ss[0]ss[4]输出结果xyaaaacc选项A)正确答案
    (34)C 解析 函数int f(int x)递函数调x值等01时函数值等3情况yx2f(x2)函数中执行语句zf(3)时y3*3f(32)9f(1)936正确答案C)
    (35)C 解析 函数fun(char *achar *b)中while(*a'*')a++功果*a容'*'a指针移动直遇非'*'字符止退出循环进入while循环while(*b*a){b++a++}中字符数组a逐字符赋字符数组b函数中执行fun(st)语句字符数组t中容a*b****选项C)正确答案
    (36)A 解析 题考查函数调时参数传递问题程序调函数f时传函数f参数结构变量c栈中拷贝函数f做操作针数拷贝进行修改会影响变量c值
    (37)B 解析 函数中首先整型数组a[10]中元素写入文件d1dat中然次翻开文件文件d1dat中容读入整型变量n中输出变量n值正确答案B)
    (38)A 解析 题考查位运算知识二进制数1进行异运算会取反0进行异运算会产生变化题答案选A)
    (39)A 解析 C语言中动变量存放器变量时占存单元正确答案A)
    (40)B 解析 题考查指函数指针语句 int (* f)(int)函数声明中f指该函数指针该函数整型参数函数返回值类型整型答案选 B)
    二填空题
    (1)1 预期输出 解析 输入数指测试函数读取外部数数初始值预期输出指返回值测试函数写入外部数结果值
    (2)2 16 解析 满二叉树中叶子结点数目计算公式2n1中n树深度
    (3)3 24 解析 实现循环队列时头指针指第元素前空间尾指针指元素 时队列中67829二十四空间存元素队列中29524元素
    (4)4 关系 解析 关系数库中关系(二维表结构)表示实体间联系模型称关系数模型
    (5)5 数定义语言 解析 数定义语言负责数模式定义数物理存取构建数操语言负责数操查询增删改等数控制语言负责数完整性安性定义检查发控制障恢复等
    〔6)6 1 解析 字符空格ASCII码0题中表达式c值0 b 0&&1结果显然0
    (7)7 3 解析 题考查C语言逗号表达式相关知识程序计算逗号表达式时左右计算逗号分隔表达式值整逗号表达式值等中表达式值题中首先i赋值2加1i++值计算3
    (8)8 ##2##4 解析 for循环语句中变量k增表达式k++k++逗号表达式输出结果##2##4
    (9)9 2 10 2 4 6 8 解析 函数中根整型数组x[]定义知x[1]初值等2for循环语句中i0时p[0]&x[1]p[0][0]2 i1时p[1]&x[3]p[1][0]4i2时p[2]&x[5]p[2][0]6i3时p[3]&x[7]p[3][0]8程序输出结果2 4 6 8
    (10)11 3 5 解析 函数swap(int *aint *b)功实现*a*b中两数交换函数中调swap(pq)参形指针变量ab分指ijswap(int *aint *b)执行完指针变量ab分指ji指针变量pq指变量值没发生变化输出结果3 5
    (11)12 4 解析 函数中语句pap++指针p指数组a[1]输出结果4
    (12)13 1 3 解析 函数中调fun(3)时实参3传递形参xfun(x)执行第条语句输出1然执行第二条语句输出3结果1 3
    (13)14 person[I]sex 解析 函数fun(SS person[])person[]性进行判断正确调格式person[I]sex
    (14)15 fileadatr 解析 fopen函数调方式通常 fopen(文件名文件方式)题中求程序翻开fileadat文件读取文件中容空白处应填入 fileadatr
    文档香网(httpswwwxiangdangnet)户传

    《香当网》用户分享的内容,不代表《香当网》观点或立场,请自行判断内容的真实性和可靠性!
    该内容是文档的文本内容,更好的格式请下载文档

    下载文档到电脑,查找使用更方便

    文档的实际排版效果,会与网站的显示效果略有不同!!

    需要 20 香币 [ 分享文档获得香币 ]

    下载文档

    相关文档

    全国计算机等级考试二级C语言笔试试卷及标准解析

    2006年4月全国计算机等级考试二级C语言笔试试卷及标准解析一、选择题((1)一(10)每题2分,(11)一(50)每题1分,共60分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正...

    6年前   
    13594    0

    历年全国计算机等级考试二级Java语言程序设计试题及答案

    历年全国计算机等级考试二级Java语言程序设计试题及答案一、选择题(每小题1分,共40小题,共40分)   1.下列叙述中正确的是( )。   A.一个算法的空间复杂度大,则其时...

    3年前   
    712    0

    全国计算机等级考试一级试题及答案

    全国计算机等级考试一级试题及答案(25套)一、选择题(每题1分,共20分)D (1)世界上第一台计算机诞生于哪一年?A)1945年 B)1956年 C)1935年 D)1946年D(2)第4代...

    4年前   
    932    0

    计算机等级考试二级MS-Office基础知识 (1)

    第1章 数据结构与算法  1.1算法  1.算法的基本概念  (1)概念:算法是指一系列解决问题的清晰指令。  (2)4个基本特征:可行性、确定性、有穷性、拥有足够的情报。

    3年前   
    538    0

    计算机培训 c语言知识点概要

    C语言章节复习第一章:C语言概述1、C语言的特点 1)任何一个C程序有且有一个main()函数 。 2)任何一个C程序文件有且有一个main()函数 , 一个C程序总...

    3年前   
    618    0

    计算机专业c语言实训报告

    计算机专业c语言实训报告  通过c语言实训,让我加深了对c语言的了解,而不只是单单的在课本中学到的那些理论,平时乏味的课程,通过自己动手亲自编写,变的生动有趣,而在自己动手的过程中,出现的问题...

    12年前   
    582    0

    全国计算机等级考试健康情况声明书(2022年)

    全国计算机等级考试健康情况声明书本人已知晓并理解、遵守全国计算机等级考试关于考生个人健康要求和新冠肺炎疫情防控相关管理规定,并做如下声明:(一) 本人不属于疫情防控要求14天强制隔离期、医学观...

    2年前   
    914    0

    全国计算机等级考试一级B模拟试题及答案

      2012年3月全国计算机等级考试一级B模拟试题及答案 (1)在信息时代,计算机的应用非常广泛,主要有如下几大领域:科学计算、信息处理、过程控制、计算机辅助工程、家庭生活和    A)...

    9年前   
    6801    0

    2022山东省全国计算机等级考试健康管理信息采集表

    附件1山东省全国计算机等级考试健康管理信息采集表考生姓名准考证号联系方式身份证号情形健康排查(流行病学史筛查)考前21天内是否有国内中、高风险等疫情重点地区旅居史考前28天内是否有境外旅居史居...

    2年前   
    766    0

    2021中级导游等级考试笔试真题

    2021中级导游等级考试笔试真题(导游知识专题)真题及答案解析1、葛洪的( )对伤寒、温病等的发生和对其病因的认识深刻。(单选题,1分)A.《肘后一百方》B.《肘后备急方》C.《黄帝内经素问...

    3年前   
    602    0

    专升本C语言历年考试题及答案

    专升本C语言历年考试题及答案一、单项选择题1. ___D___是合法的用户自定义标识符。A、 b-b B、float C、<fr> ...

    3年前   
    1364    0

    语言培训机构合作方案

    语言培训机构合作方案  一、合作目的:  通过成显网发放留学优惠券或我们收取学生费用给语言机构返点等各种方式促销成显网的产品,同时达到帮助合作伙伴推广市场促成签单或直接给语言培训机构方利润的目...

    10年前   
    547    0

    C语言代码大全

     乘法口诀表 #include <stdio.h> #include <conio.h> void main(void) { int i,j,x,y; clrscr(); pr...

    5年前   
    1767    0

    计算机等级考试(NCRE)和英语等级考试(PETS)目标管理办法

    计算机等级考试(NCRE)和英语等级考试(PETS)目标管理办法 为充分调动和发挥广大社考工作者的主观能动性,促使全省各级考试机构、各考点在组考管理质量上有提升、项目发展规模上有突破,有力地...

    13年前   
    13313    0

    计算机二级office考试知识点

    一、计算机基础知识  1. 计算机的发展、类型及其应用领域。  2. 计算机软硬件系统的组成及主要技术指标。  3. 计算机中数据的表示与存储。  4. 多媒体技术的概念与应用。  5. 计算机...

    2年前   
    401    0

    2021年二级机构安全生产职责

    2021年二级机构安全生产职责1.建立健全安全生产保证体系,设置安全生产机构,配备专职安全员,并设置安全生产领导小组,定期召开会议(每季度不少于一次),负责对本单位安全生产工作的重大事项及时做...

    1年前   
    301    0

    计算机二级培训VFP总结

     计算机二级培训VFP总结1,文件类型.PJX 项目 .dbc 数据库 .dbf 表 .cdx 复合索引 .f...

    3年前   
    495    0

    最新电大C++语言程序设计期末复习题(本)资料考试小抄

    电大C++语言程序设计复习题资料参考一、单选题1. 在定义函数的格式类型修饰符 函数名 (形式参数表)函数体;中,函数体可以是( )。A、基本语句 B、复合语句C、空语句 D、语句...

    3年前   
    535    0

    专升本C语言题及答案

    C语言精编100题一、单选题1. 由C语言编写的代码程序( )A. 可直接执行 B. 是一个源程序C. 经过编译即可执行 D. 经过编译解释才能执行2. 按照C语言规...

    3年前   
    1175    0

    计算机二级公共基础知识(二级必过)

    第1章 数据结构与算法 经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概 念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。 详细...

    5年前   
    1328    0

    文档贡献者

    静***雅

    贡献于2022-05-07

    下载需要 20 香币 [香币充值 ]
    亲,您也可以通过 分享原创文档 来获得香币奖励!
    下载文档

    该用户的其他文档