open 发表于 2016-10-29 09:05:01

东师C程序设计16秋在线作业2参考答案

奥鹏东师C程序设计16秋在线作业2

一、单选题:
1.设i和k都是int类型,则有关for循环语句for(i=0,k=-1;k=1;i++,k++)printf("****\n");的说明正确的是(    )          (满分:3)
    A. 循环结束的条件不合法
    B. 循环体一次也不执行
    C. 循环体只执行一次
    D. 是无限循环
2.执行下面程序后:main(    ) {int a; printf("%d\n",(a=3*5,a*4,a+5));}a的值是(    )          (满分:3)
    A. 65
    B. 20
    C. 15
    D. 10
3.若有以下调用语句,                main(    )       { …         int a,n;          …         fun(n, &a);      }则不正确的fun函数的首部是(    )          (满分:3)
    A. void fun(int m
   int x[])
    B. void fun(int s
   int h)
    C. void fun(int p
   int *s)
    D. void fun(int n
   int a)
4.以下程序       main(    )   {int i=010,j=10,*pi,*pj;      pi=&i; pj=&j;      printf("%d,%d\n",*pi,*pj);   }的输出结果为(    )          (满分:3)
    A. 10
    10
    B. 8
    10
    C. 010
    10
    D. 8
    8
5.有如下函数调用语句: func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是(    )          (满分:3)
    A. 3
    B. 4
    C. 5
    D. 有语法错
6.下列程序把数组元素中的最大值放入a中,main(    ){ int a={6,8,3,1,5,9,4,2,7,0};for(i=0;i<10;i++,p++)   if(    ) *a=*p;printf(“%d\n”,*a);} 则在if语句中的条件表达式应该是(    )          (满分:3)
    A. p>a
    B. *p>a
    C. *p>*a
    D. *p>*a
7.以下程序:?char str=”hello!”;printf(“%d\n”,strlen(str)); 的输出结果是(    )          (满分:3)
    A. 15
    B. 14
    C. 7
    D. 6
8.已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是(    )          (满分:3)
    A. 6
    B. 0
    C. 2
    D. 1
9.以下叙述正确的是(    )          (满分:3)
    A. 任何存贮类型变量在未赋初值时,其值都是不确定的
    B. 将局部变量说明为static存贮类型,其生存期将得到延长
    C. 将全局变量说明为static时,其作用域将被扩大
    D. 形参可以使用的存贮类型说明符与局部变量相同
10.已定义c为字符型变量,则下列语句中正确的是 (    )          (满分:3)
    A. c=‘97’;
    B. c="97";
    C. c=97;
    D.
    E. c="a";
11.以下4个选项中,不能看作一条语句的是(    )          (满分:3)
    A. {;}
    B. a=0
    b=0
    c=0;
    C. if(a>0);
    D. if(b==0) m=1;n=2;
12.以下程序:main(    ){char c;int i;for(i=65;i<68;i++){c=i+32;switch(c){case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,");default: printf("end");} }}的输出结果为(    )          (满分:3)
    A. a
    ok
    end
    B. a
    ok
    endend
    C. a
    ok
    end
    end
    D. a
    ok
    ok
13.若有以下说明:   int a={1,2,3,4,5,6,7,8,9,10,11,12};   char c='a',d,g;   则数值为4的表达式是(    )          (满分:3)
    A. a
    B. a
    C. a['d'-'c']
    D. a['d'-c]
14.设有如下定义: char *aa={"abcd","ABCD"}; 则以下说法中正确的是(    )          (满分:3)
    A. aa数组成元素的值分别是"abcd"和ABCD"
    B. aa是指针变量
    它指向含有两个数组元素的字符型一维数组
    C. aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
    D. aa数组的两个元素中各自存放了字符'a'和'A'的地址
15.在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式为(    )          (满分:3)
    A. 只能是逻辑表达式
    B. 只能是关系表达式
    C. 只能是逻辑表达式或关系表达式
    D. 可以是任意表达式
16.若已定义:int a, *p=a;并在以后的语句中未改变p的值,不能表示a地址的表达式为(    )          (满分:3)
    A. p+1
    B.
    C. a+1
    D. a++
    E. ++p
17.有以下程序fun(int a, int b) { if(a>b) return(a); else return(b); } main(    ) { int x=3, y=8, z=6, r; r=fun(fun(x,y), 2*z); printf("%d\n", r); }   程序运行后的输出结果是(    )          (满分:3)
    A. 3
    B. 6
    C. 8
    D. 12
18.设整型变量a为5,使b不为2的表达式是(    )          (满分:3)
    A. b=a/2
    B. b=6-(--a)
    C. b=a%2
    D. b=a>3?2
19.以下能正确定义一维数组的选项是(    )          (满分:3)
    1
20.以下不能正确定义二维数组的语句是(    )          (满分:3)
    A. int num [];
    B. #define N 100   int num ;
    C. int num;
    D. int N=100; int num;
三、判断题:
1.在一个由优先级相同的运算符组成的表达式中,计算顺序将是自左至右进行。          (满分:2)
    A. int a={{1}
    {2}};
    B. int a[]={1
    2
    3
    4};
    C. int a={{1}
    2
    3};
    D. int a[]={{1
    2}
    {3
    4}};
2.C语言的所有循环语句都要求至少要执行一次循环体。          (满分:2)
    A. 错误
    B. 正确
3.C语言是一种低级语言。          (满分:2)
    A. 错误
    B. 正确
4.getchar(    )函数的功能是从键盘上输入一个字符串。          (满分:2)
    A. 错误
    B. 正确
5.在程序中定义了一个结构体类型后,可以多次用它来定义具有该类型的变量。          (满分:2)
    A. 错误
    B. 正确
6.从变量的作用域分,变量分为静态变量和动态变量。          (满分:2)
    A. 错误
    B. 正确
7.在Turbo C中,整型数据在内存中占2个字节。          (满分:2)
    A. 错误
    B. 正确
8.在使用函数fgetc(    )时,文件可以“w”的方式打开。          (满分:2)
    A. 错误
    B. 正确
9.C++源程序文件编译而成的目标代码文件的缺省扩展名为.exe。          (满分:2)
    A. 错误
    B. 正确
10.一个函数中只允许有一条return语句。          (满分:2)
    A. 错误
    B. 正确
11.如果形参与实参的类型不一致,则以实参类型为准。          (满分:2)
    A. 错误
    B. 正确
12.当#include后面的文件名用双引号""括起,仅搜索当前目录。          (满分:2)
    A. 错误
    B. 正确
13.函数若无返回值,则它一定无形参。          (满分:2)
    A. 错误
    B. 正确
14.表示X的值大于等于50或者小于等于20的C语言表达式为:X≥50(    )X≤20。          (满分:2)
    A. 错误
    B. 正确
15.当循环体至少能执行一次时,while循环和do-while循环是等价的。          (满分:2)
    A. 错误
    B. 正确
16.任何数组在使用前必须先定义。          (满分:2)
    A. 错误
    B. 正确
17.若str1,str2是两个字符串,则if(str1==str2)可以比较两个字符串是否相等。          (满分:2)
    A. 错误
    B. 正确
18.数组的元素在内存中连续存贮。          (满分:2)
    A. 错误
    B. 正确
19.选择结构if语句和循环结构都可以使用嵌套形式。          (满分:2)
    A. 错误
    B. 正确
20.C程序总是从main(    ) 函数的第一条语句开始执行的。          (满分:2)
    A. 错误
    B. 正确

**** Hidden Message *****
页: [1]
查看完整版本: 东师C程序设计16秋在线作业2参考答案