C_10练习题答案

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

1.设n=3;则表达式n++的结果是(B)

A. 2
B. 3
C. 4
D. 5

2.以下能正确定义且赋初值的语句是(B)

A. char a=b=‘a’,
B. char c=65;
C. char a,b=a;
D. char c=“a”;

3.以下选项中可作为C语言合法常量的是(A)。

A. 0ΧΑ
B. 080
C. 8el.0D. "

  1. 若有以下说明和语句:
    struct worker
    {
    int no;
    char *name;
    }work, *p=&work;

则以下引用方法不正确的是(D)

A. work.no
B. (*p).no
C. p->no
D. work->no

5.以下对二维数组进行正确初始化的是(B)

A. int a[2][3]={ {1,2},{3,4},{5,6}};
B. int a[][3]={1,2,3,4,5.6};
C.int a[2][]={1,2,3,4,5,6};
D.int a[2][0={ {1,2%,{3,4}};

  1. 当调用函数时,实参是一个数组元素,则向函数传送的是(D)。

A.数组的长度
B. 数组的首地址
C.该元素的地址
D. 该元素中的值

7,已知有变量定义: int a;char c;用scanf(“%d%c”,&a,&c);语句给a和c输入数据,使30存入a.字符b存入c,则正确的输入是(D)

A. 30’b’<回车>
B. 30 b<回车>
C. 30<回车>b<回车>
D. 30b<回车>>

  1. 下面程序段运行时输出结果是(chars[18]= “This is a book! “;printf(”%.6s”,s);
    C

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

  1. 以下错误的描述是(D)

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

10,为了判断两个字符串s1和s2不相等,应当使用(C)

A. if(sls2)
B. if(sl=s2)
C. if(strcmp(s1,s2))
D. if(strcmp(s1.s2)-0)

  1. 下面程序的输出结果是(C)
    #include
    void main()
    {
    int x=102,y=012;
    printf(“%2d,%2d”,x,y);
    }

A. 10,01
B. 02,12
C. 102,10
D. 02,01

12,以下能正确定义数组并正确赋初值的语句是(D)

A. int n=5;char a[n][n];
B. chara[1][2]={ {“a”),{“b”}};
C. char c[2]={“ab”};
D. char a=“abcde”;

  1. C语言中规定函数的返回值的类型是由(B)

A. return 语句中的表达式类型所决定
B.在定义该函数时所指定的函数类型所决定
C.调用该函数时系统临时决定
D.调用该函数时的主调函数类型所决定

14,下列关于#include命令的叙述中,错误的是(C)

A. #include命令中,文件名可以用双引号或尖括号括起来
B.一个被包含文件中又可以包含另一个被包含文件
c. 一个#include命令中可以指定多个被包含文件
D.一个#include命令中只能指定一个被包含文件

15.在定义 int a[10];之后,对a 的元素引用正确的是(D)

A. a[10]
B. a[7.3]
C. a(6)
D. a[20-12]

16,若有定义inta=8,b,*p=&a;则下列语句中使b不为8的语句是(D)

A. b=*&a;
C. b=a;
B. b=*p;
D. b=*a;

  1. 定义 int x,y;执行 y=x=7,++x, x+3 语句后,表达式的值是(B)

A. 10
B. 11
C. 7
D. 8

18,在while (!x)语句中的x与下面条件表达式等价的是(A)

A. x0
B.x
1
C. x!=1
D. x!=0

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

A.全局变量的作用域一定比局部变量的作用域范围大
B.静态(static)类别变量的生存期贯穿于整个程序的运行期间
c.函数的形参都属于全局变量
D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值

  1. 如下程序的输出结果(A)
    #include
    #define F(x) (x-1)*x
    void main
    { int a=l,b=2;
    printf"%dn",F(a+b));
    {

A. 4
B. 6
c. 12
D. 16

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

#include 

void sub(int s[], int y) {
   
    static int t = 3;
    y = s[t];
    t--;
}

int main() {
   
    int a[] = {
   5, 6, 7, 8};
    int i, x = 0;

    for (i = 0; i < 4; i++) {
   
        sub(a, x);
    }

    for (i = 0; i < 4; i++) {
   
        printf("%d ", a[i]);
    }

    printf("\n");

    return 0;
}

2____0 1 2 3 _____

#include 

void fun(int b[4]) {
   
    int j;
    for (j = 0

你可能感兴趣的:(2模拟2C答案,c语言,算法,开发语言,河北专升本)