C_6练习题答案

发布时间:2023年12月20日

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

1,若变量已正确定义并赋值,表达式(B)不符合 C 语言语法

A. a*b/c;
B. 3.14%2
C. 2, b
D. a/b/c

  1. 在 C 程序中,用(B)表示逻辑值“真”

A. 1
B. 非 0的数
C. 非1的数
D. 大于 0 的数

3.若变量已正确定义,表达式(C)的值不是 2

A. 2&3
B. 1<<1
C. a=2
D. 1^3

4,已知: char w; int x; float y; double z;,则表达式w*x+z-y 结果的类型是(D)

A. float
B. char
C. int
D. double

5.以下所列的C语言常量中,错误的是B

A. OxFF
B. e5
C. 2L
D.'“;”

6,设变量定义为"int x, *p-&x;",则&*p相当于(A)

A. p
B. *p
C. x
D. *&x

7·关系表达式15-5的值是(C)

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

8.表达式strlen(“hello10128”)的值是(C)

A. 5
B. 6
C. 7
D. 8

9,设变量定义为"int x, p=&x;",则p相当于(C)

A. p
B. *p
C. x
D. *&x

10下列关于单目运算符+、一的叙述中正确的是(D)

A.它们的运算对象可以是int型变量,但不能是double型变量和float型变量
B.它们的运算对象可以是任何变量和常量
C.它们的运算对象可以是char型变量和int型变量,但不能是float型变量
D.它们的运算对象可以是char型变量、int型变量和float型变量

  1. 以下描述中正确的是(C)

A. 由于 do-while 循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
B.do-while循环中,根据情况可以省略while
C. 在 doswhile 循环体中,必须有能使循环退出的操作:
D.doewhjle循环电do开始,用while结束,在while(表达式)后面不能写分号

  1. int a[10];合法的数组元素的最小下标值为(D)

A. 10
B. 9
C. 1
D. 0

13: 以下正确的函数定义是(C)

A. double fun(int x, int y){ z=x+y; retum z;
B. void fun(x, y) {int x,y; double z; z=x/y; retum z;}
C. float f(int x, int y) {float z; z=x/y; return z;}
D. int fun(int x, y) {int z; return z; }

  1. char al[]=“abc”,a2[80]-“1234”;将a1串连接到a2串后面的语句是(A)

A. strcat(a2,al);
B. strcat(al,a2);
C. strepy(al,a2);
D. strcpy(a2,al);

15,对于以下的变量定义,表达式(B)不符合 C 语言语法
struct node
{
int len;
char "pk;
}x= {2, “right”}, *p = &x;

A. p->pk
B. *p.pk
C. *p->pk
D. *x.pk

16,程序段如下,则以下说法中正确的是(C)
int k=10;
while(k==0) k=k+1;

A. while 循环执行 10 次
B. 循环是无限循环
C. 循环体语句一次也不执行
D. 循环体语句执行一次

  1. 有如下程序,该程序的输出的结果是(D)

#include <sdtio.b>
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 ",r);
}

A.12
B. 13
C.14
D.15

  1. 有如下程序段int *p=&a,a=10 ,b=1;a=*p+b;执行该程序段后, a的值为(D)
    A. 12
    B. 11
    C. 10
    D.编译出错

  2. 有程序段
    #define N 2
    #define M n+1
    #define NUM (M+1)*M/2
    void main(){
    int i,n=0;
    for(i=1;i<=NUM;i++){
    …}
    循环次数(C)

A. 6次
B. 8次
C. 0次
D. 无穷次

20,设有以下说明语句: struct ex fintx;float y;charz;) example;则下面叙述中不正确的是(B)

A. struct 结构体类型的关键字
B. example是结构体类型名
C. x, y,z都是结构体成员名
D. struct ex是结构体类型

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

#include <stdio.h>

int main() {
   
    int m, k = 0, s = 0;

    for (m = 1; m <= 4; m++) {
   
        switch (m % 4) {
   
            case 0:
            case 1:
                s += m;
                break;
            case 2:
            case 3:
                s -= m;
                break;
        }
        k += s;
        printf("%d\n", k);
    }

    return 0;
}

2___s=235____

#include <stdio.h>

int main() {
   
    int a[8] = {
   70, 63, 54, 95, 40, 75, 90, 66};
    int i, s = 0;

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