C_14练习题答案

2023-12-16 04:56:58

一、单项选择题(本大题共 20小题,每小题 2分,共 40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。)

  1. 以下叙述不正确的是(D)

A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面

2.以下C语言用户标示符中,不合法的是(D)

A._1
B. Aa
C. a_b
D. a-b

3.编写好的 C 程序一般需要经过编译、连接、调试等步骤后才能运行成功。连接后产生的文件的后缀名一般是(C)

A…c
B…obj
C…exe
D…h

4,下面4个选项均是合法整型常量的选项是?。

A. 160 x 011
B. Oxcdf 018 Oxel
C. 123 2.le+8 3.14
D. -0x88g 2e5 32467

  1. 达式5>3>1 值是(A )。

A.0
B.1
C.3
D.表达式语法错误

6.设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是(A)

A.10<a<15
B.a11ll a12 Il a13 ll a14
C. a>10 &&a<15
D.!(a<=10)&&!(a>=15)

7.定义int score = 75;则表达式80 < score < 90的值是(A)

A.1
B.0
C. true
D. false

  1. 下列运算符优先级最高的是(B)。

A.=
B.%
C.&&
D.<=

9.假设有变量定义如下int a,k;则以下哪条语句不能确保将变量k的值变为C

A.k=a±a+1;
B. k=k;
C. k = k >> 16;
D. k= k &-k;

10、字符串"\128"ABC""的长度是(B)

A.11
B.8
C.5
D.3

  1. 下列程序段的输出结果是(A)。
#include <stdio.h>

int main() {
   
    int x = 1, a = 0, b = 0;

    switch (x) {
   
        case 0:
            b++;
        case 1:
            a++;
        case 2:
            a++;
            b++;
    }

    printf("a=%d, b=%d\n", a, b);

    return 0;
}

A. a=2,b=1
B.a=1,b=1
C.a=1,b=0
D.a=2,b=2

12,设i,x都是int类型,则下面的for循环体可执行多少次(for (i=0, x=0;i<=9 && x!= 876;i++))。B

A.9次
B.10次
C. 876次
D.无限循环

13.若有定义语句:int a[3][6];,按在内存中的存放顺序,a数组的第10个元素是(B)

A.a[0][4]
B.a[1][3]
C. a[0][3]
D. a[1][4]

14,若有定义:int a[2][3];以下选项中对数组元素正确引用的是(D)

A. a[2][0]
B. a[2][3]
C. a [0][3]
D. a[1>2][1]

15.下面程序段运行时输出结果是?。
char s[18]= “a book! “;
printf(”%.4s”,s);

A. a book!
B. a book!
C. a bo
D.格式描述不正确,没有确定输出

  1. 以下叙述中不正确的是(D)

A.在不同的函数中可以使用相同名字的变量
B.函数中的形式参数是局部变量
C.在一个函数内定义的变量只在本函数范围内有效
D.在一个函数内的复合语句中定义的变量在本函数范围内有效

  1. 对函数形参的说明有错误的是?。

A. int a(int x],int n)
B. int a(int *x,int n)
C. int a(int x], n)
D. int a(int x,int n)

  1. 下列语句定义 x 为指向 int 类型变量 a 的指针,正确的是(B)

A. int a, *x = a;
B. int a, *x = &a;
Cint *x = &a, a;
D. int a, x=a;

  1. 若有以下宏定义:#define N 2#define Y(n) ((N+1)n)则执行语句"z=2(N+Y(5);"后的结果是(B)

A.语句有错误
B.z=34
C. z=70
D.z 无定值

20.若有以下语句,则下面表达式的值为1002的是(struct student{ int age;intaum;entstruct student stu[3]=((1001,20),(1002,19),(1003,2)); struct student *p;p=stu;

D

A. (p++)->num
B. (p++)->age
C. (p)num
D. (
++p).age

二、程序阅读题(本大题共5小题,每小题6分,共30分。请将程序的运行结构填写在答题纸的相应位置上。)

5

#include <stdio.h>

#define MOD(a, b) a % b

void main() {
   
    int x = 4, y = 15, z;
    z = MOD(y, x + 2);
    printf("%d\n", z++);
}

15

#include <stdio.h>

int func(int a, int b) {
   
    return (a + b);
}

void main() {
   
    int x = 2, y = 5, z = 8, r;
    r = func(func(x, y), z);
    printf("%d\n", r);
}

The value of Sval is:
Sval is: 37

#include <stdio.h>

union memb {
   
    float v;
    int n;
    char c;
};

int main() {
   
    union memb tag, Sval;
    tag.n = 37;
    Sval = tag;

    printf("The value of Sval is:\n");
    printf("Sval is: %d\n", Sval.n);

    return 0;
}

6789054123

#include <stdio.h>

void fun(int *s, int nl

文章来源:https://blog.csdn.net/weixin_47431459/article/details/134905728
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。