C_1练习题

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

  1. 若 x 为int 型变量,则执行以下语句后,x的值为()

x=5; x=x*x;

A. 25
B.-20
C. 20
D.-25

  1. 若x、i、j、k都是 int型变量,则计算下面表达式后, x的值为()x=(i=4,j=6,k-16

A. 4
B. 8
C. 16
D. 32

  1. 定义 int x=10,y=20,z;执行 y=z-xx=y-2后,变量 x 的值为()

A. 1
B. 10
C.16
D. 20

  1. 下列程序段执行后 k 值为()
    int k=0,i,j;
    for(i=0;i<4;i++)
    for(j=0;j<3;j++)
    k=k+1;

A. 15
B. 3
C. 5
D. 12

5,数学上的关系式x2y22,应使用C语言表达式()

A. (x>=y)&&(y>=z)
B. (x>=y)AND(y>=z)
C. (x>=y>=z)
D. (x>=y) & (y>=z)

6.若有变量定义double x;int a;要给x和a输入数据,正确的输入语句是()

A. scanf(“%d%d”,&x,&a);
B. scanf(“%f%d”,&x,&a);
C. scanf(“%f%f”,&x,&a);
D. scanf(“%lf%d”,&x,&a);

7·关系表达式15!=5的值是()

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

8,字符串"I 'm jerry."的长度是()

A. 11
B. 10
C. 12
D. 13

9.若char str[10]= “I am happy”,则 str[3]的值为()

A. T
B. ‘a’
C. "
D. ‘m’

10.设x, y和z是int型变量,且x=3, y=4, z-5,则下面表达式中值为0的是()

A. ‘x’&&'y
B. x<=y
C. xllytz && y-z
D. !((x

11函数int max(inty,ingy)geturn(x>y?xy); }的功能是()
A.求3个数的最大数
B. 求 3 个数的最小数
C. 求 2 个数的较大数
D. 求 2 个数的较小数

12,若x,y,z均为int型变量,则执行以下语句后的输出为()
x=(y=(z=10)+5)-5; printf(“x=%d,y=%d,z=%d\n”,x,y,z);

A. x=10,y=15,z=15
B. x=10,y=10,z=10
C. x=10,y=15,z=10
D. x=10,y=10,z=10

  1. 函数调用语句: d-max(c,max(a,b));中实参的个数为()

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

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

A. int n=3,b[n][n];
B. int a[1][2]={{1},{3}};
C.int c[2]0={{1,2},{3,4)}
D. int a[3][2]={{1,2},{3,4}}

15,在执行int a][3]-{1,2,3,4,5,6};语句后, a[1][0]的值是()

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

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

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

  1. C语言允许定义函数值类型为空类型,表示函数值为空类型的类型名是()

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

  1. 有如下程序段int*p,a=10,b=1; p=&a; a=*p+b;执行该程序段后,a的值为()

A. 12
B. 11
C. 10
D. 编译出错

19.设a=3,b=2,则表达式 a^b>>2 的值的二进制表示为()

A. 00000110
B. 00000011
C. 00000100
D. 00000010

20,假定w、x、y、2、m均为int型变量,有如下程序段:m=(m

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

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

1._______

#include 

int main() {
    int a = 7, b = 5;
    printf("%d\n", b = b / a);
    return 0;
}

2______

#include 

int func(int x, int y);

int main() {
    int a = 1, b = 2, c = 3, d = 4, e = 5;
    printf("%d\n", func((a + b, b + c, c + a), (d + e)));
    return 0;
}

int func(int x, int y) {
    return (x + y);
}

3______

#include 

void main() {
    int i = 0, s = 0;

    do {
        s += i * 2 + 1;
        printf("i=%d, s=%d\n", i, s);
        i++;
    } while (s < 10);
}

4_______

#include 

void func(int *a, int b[]) {
    b[0] = *a + 6;
}

void main() {
    int a, b[5];
    a = 0;
    b[0] = 3;

    func(&a, b);

    printf("%d \n", b[0]);
}

5_______

#include 

#define PR(ar) printf("%d", ar)

void main() {
    int j, a[] = {1, 3, 5, 7, 9, 11, 13, 15}, *p = a + 5;

    for (j = 3; j; j--)
        switch (j) {
            case 1:
            case 2:
                PR(*p++);
                break;
            case 3:
                PR(*(-p));
        }
}

三、程序填空题(每空5分,共35分。请将答案填写在答题纸的相应位置上

  1. 打印出杨辉三角形(要求打印出 10 行).
    注意:不可以增加或删除程序行,也不可以更改程序的结构。
    #include"stdio.h"
    void main(){
    int ij;
    int a[10][10];
    printf(“\n”);
    for(i=0;i<10;i++)
    {
    ① ;
    a[i][i]=1;
    }
    for(i=0;i<10;i++)
    forj=1;②;j++)
    a[i][i]=③
    for(i=0;i<10;i++)
    {
    for(j=0:j<=i:j++)
    printf(“%5d”,a[i][i]);
    printf(“n”);
    }
    }
    2.一球从 100 米高度自由落下,每次落地后反跳回原来高度的一半,再落下,求它在第十次落地时,共经过多少米?第十次反弹多高?
    #include
    void main
    {
    float Sn=100.0,hn=Sn/2;
    int n;
    for (n=2;n<=10;n++)
    {
    Sn=;hn=_;
    printf"第10次落地时共经过%f米n",Sn);
    printf(“第 10 次反弹%f 米\n”,hn);、
    }
    3,下面函数的功能是对n个整数利用选择法进行由小到大排序。所谓选择法是指:先将n个数中的最小的数与a[0]对换;再将a[1]到a[9]中的最小数与a[1]对换;如此往复……请填空。
    void sort(int a [], int n)
    {
    inti,j,k,t;
    for(i = 0; i {
    ①;
    for (j=i+l; j { if (②) k=j; }
    t=a[k]; a[k]=a[i]; a[i]=t
    }
    }

    四、编程题(本大题共3小题,每小题15分,共45分。请在答题纸的相应位置上作答。)
    1.编写函数copy(char str1D,char str20),实现字符串的复制。
    (1) 用 for 循环编写函数 copy(char str10,char str20),不允许用 strepy0函数。
    (2)编写主函数调用copy(char strl0,char str20)

    2,现有10个城市名及其春、夏、秋、冬四个季节的平均温度值,编写程序,定义合适的结构体,输入10个城市名和四季温度,计算各个城市的全年平均温度,并按照平均温度从低到高的顺序输出城市名、四季温度及全年平均温度。

3.用递归的方法将一个整数n转换成字符串。例如,输入1234S而输出字符串234954的位!数不确定,可以是任意位数的整数。

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