黄老师 发表于 2016-3-21 09:29:19

东北大学16春学期《C语言及程序设计》在线作业参考答案

东北大学16春学期《C语言及程序设计》在线作业1

一、单选题:
1.下列程序的输出结果是(    )main(    ){intb=4;b*=b+=b+b;printf(“%d\n”,a);}          (满分:5)
    A. 16
    B. 32
    C. 96
    D. 144
2.有下列语句和赋值语句:(1)charstr[]=”iamaboy.”(2)charstr=”iamaboy.”(3)char*p=”iamaboy.”(4)p=”iamaboy.”下列说法正确的是(    )          (满分:5)
    A. 只有(1)、(2)正确
    B. 只有(3)、(4)正确
    C. 只有(1)、(3)、(4)正确
    D. 只有(3)正确
3.下面对指针变量的叙述,正确的是(    )          (满分:5)
    A. 指针变量可以加上一个指针变量
    B. 可以把一个整形数赋给指针变量
    C. 指针变量的值可以赋给指针变量
    D. 指针变量不可以有空值,即该指针变量必须指向某一变量
4.若有定义:intA;能表现数组元素A的是(    )          (满分:5)
    A.(A+1)
    B. *(A)
    C.(*(A+1))
    D. *(A+5)
5.以下程序段执行后输出结果(    )。inti;for(i=1;;i++);printf(“%d”,i++);          (满分:5)
    A. 1
    B. 2
    C. 3
    D. 死循环
6.以下程序段(    )。intx=1,y=4;printf(x<y?”x=%d”:”y=%d”,x,y);          (满分:5)
    A. 输出控制格式错误
    B. 输出:x=1
    C. 输出:y=1
    D. 输出:y=4
7.已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为(    )。          (满分:5)
    A. D
    B. 68
    C. 一个不确定的值
    D. C
8.对于循环语句while(1);下面(    )是正确的。          (满分:5)
    A. 死循环
    B. 循环一次
    C. 不进如循环体
    D. 编译有错
9.在x值处于-2到2,4到8时值为“真”,否则为“假”的表达式是(    )。          (满分:5)
    A.(2>x>-2)(    )(4>x>8)
    B.((x<=-2)(    )(x>=2)(    )((x>4)(    )(x>=8))
    C.(x<2)(x>=-2)(x>4)(x<8)
    D.(x>-2)(x>4)(    )(x<8)(x<2)
10.函数rewind(fp)的作用是:使文件位置指针(    )。          (满分:5)
    A. 重新返回文件的开头
    B. 返回到前一个字符的位置
    C. 指向文件的末尾
    D. 自动移至下一个字符的位置
11.一个C语言程序总是从(    )。          (满分:5)
    A. 主过程开始执行
    B. 主函数开始执行
    C. 子程序开始执行
    D. 主程序开始执行
12.下面对函数的叙述,不正确的是(    )。          (满分:5)
    A. 函数的返回值是通过函数中的return语句获得的
    B. 函数不能嵌套定义
    C. 一个函数中有且只有一个return语句
    D. 函数中没有return语句,并不是不带回值
13.以下叙述中不正确的是(    )          (满分:5)
    A. 在C程序中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参
    B. 在C程序的函数中,最好使用全局变量
    C. 在C程序中,形参只是局限于所在函数
    D. 在C程序中,函数名的存储类别为外部
14.以下是正确的C语言标识符是(    )。          (满分:5)
    A. #define
    B. 123
    C. %d
    D. \n
15.071^052的结果是(    )          (满分:5)
    A. 32
    B. 16
    C. 23
    D. 22
三、判断题:
1.函数必须有返回值,否则不能使用函数          (满分:5)
    A. 错误
    B. 正确
2.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串是“ab+”。          (满分:5)
    A. 错误
    B. 正确
3.声明语句int x=y=z=5;可以正确定义整型变量x,y和z并为其赋初值5。          (满分:5)
    A. 错误
    B. 正确
4.声明语句int a[]={{1,0,1},{},{1,1}};能对二维数组a进行正确初始化。          (满分:5)
    A. 错误
    B. 正确
5.c语言结构类型变量在程序执行期间所有成员一直驻留在内存。          (满分:5)
    A. 错误
    B. 正确
16春学期《C语言及程序设计》在线作业2

一、单选题:
1.以下对二维数组a的正确说明是(    )。          (满分:5)
    A. inta[];
    B. &quot;floata(3
    4);&quot;
    C. doublea
    D. floata(3)(4);
2.当正常执行了文件关闭操作时,fclose函数的返回值是(    )。          (满分:5)
    A. -1
    B. 随机值
    C. 0
    D. 1
3.已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为(    )。          (满分:5)
    A. D
    B. 68
    C. 一个不确定的值
    D. C
4.char*A,则标识符A的意义时(    )。          (满分:5)
    A. A是一个指向有5个字符型元素的指针变量
    B. A是一个有5个元素的一维数组,每个元素指向字符型的指针变量
    C. A是一个指向字符型的函数的指针变量
    D. A是一个有5个元素的一维数组,每个元素指向整型变量的指针变量
5.下面四个选项中,均是合法转义字符的选项是(    )。          (满分:5)
    A. \'''\\''\n'
    B. &quot;\''\017''\&quot;&quot;'&quot;
    C. \018''\f''xab'
    D. \\0''\101''xlf'
6.在C语言中,引用数组元素时,其数组下标的数据类型允许是(    )。          (满分:5)
    A. 整型常量
    B. 整型表达式
    C. 整型常量或整型表达式
    D. 任何类型的表达式
7.以下程序段执行后输出结果(    )。inti;for(i=1;;i++);printf(“%d”,i++);          (满分:5)
    A. 1
    B. 2
    C. 3
    D. 死循环
8.若有变量说明:inta=0,b=0,c=0;,以下符合C语言语法的赋值表达式是(    )。          (满分:5)
    A. a=9+b+c=a+9
    B. a=9+b;c=a+9;
    C. &quot;a=(9+b
    b++)&quot;
    D. a=9+b++=a+7
9.下面程序的输出是(    )。main(    ){intx=10,y=3;printf(“%d\n”,y=x%y);}          (满分:5)
    A. 0
    B. 1
    C. 3
    D. 不确定的值
10.若有说明:inta;则对数组元素的正确引用是(    )。          (满分:5)
    A. a
    B. &quot;a[3
    5]&quot;
    C. a(5)
    D. a
11.为了避免嵌套的条件语句if-else的二义性,C语言规定:else与(    )是正确的。          (满分:5)
    A. 缩排位置相同的if
    B. 其之前最近的if
    C. 其之后if
    D. 同一行上的if
12.标有/**/语句的输出结果为(    )intx=20;printf(“%d,%o,%x”,x,x,x);/**/          (满分:5)
    A. 20
    20
    20
    B. &quot;20
    24
    14&quot;
    C. &quot;20
    14
    24&quot;
    D. &quot;20
    024
    14&quot;
13.设已定义i和k为int类型变量,则以下for循环语句for(I=0;k=-1,k=1;i++,k++)printf(“****\n”);          (满分:5)
    A. 判断循环结束的条件不合法
    B. 是无限循环
    C. 循环依次也不执行
    D. 循环只执行一次
14.C语言中,逻辑“真”等价于(    )。          (满分:5)
    A. 大于零的数
    B. 大于零的整数
    C. 非零的数
    D. 非零的整数
15.下面四个选项中,均是C语言关键字的选项是(    )。          (满分:5)
    A. autoenuminclude
    B. switchtypedefcontinue
    C. signedunionscanf
    D. ifstructtype
三、判断题:
1.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值          (满分:5)
    A. 错误
    B. 正确
2.c语言结构类型变量在程序执行期间所有成员一直驻留在内存。          (满分:5)
    A. 错误
    B. 正确
3.在c语言中,函数形参的存储类型是自动类型的变量          (满分:5)
    A. 错误
    B. 正确
4.C语言fread(    )函数的功能是从文件fp中读取n个字符存入指定的内存。          (满分:5)
    A. 错误
    B. 正确
5.在swith语句中可以根据需要使用或不需要使用break语句。          (满分:5)
    A. 错误
    B. 正确
16春学期《C语言及程序设计》在线作业3

一、单选题:
1.下面程序的运行结果是(    )。charc[]=&quot;\t\v\\\0will\n&quot;;printf(&quot;%d&quot;,strlen(c));          (满分:5)
    A. 14
    B. 3
    C. 9
    D. 字符串中有非法字符,输出值不能确定
2.设int类型的数据长度为2个字节,则unsignedint类型数据的取值范围是(    )。          (满分:5)
    A. 0~255
    B. 0~65535
    C. -32768~+32767
    D. -256~+255
3.对于循环语句while(1);下面(    )是正确的。          (满分:5)
    A. 死循环
    B. 循环一次
    C. 不进如循环体
    D. 编译有错
4.若有以下类型说明语句:chara;intb;floatc;doubled;则表达式a*b-2*d+c的结果类型为(    )          (满分:5)
    A. float
    B. char
    C. int
    D. double
5.有定义inta,输入其3行2列元素的正确语句为(    )          (满分:5)
    A. scanf(“%d”
    a[3
    2]);
    B. &quot;scanf(“%d”
    *(*(a+2)+1))&quot;
    C. &quot;scanf(“%d”
    *(a+2)+1);&quot;
    D. &quot;scanf(“%d”
    *(a+1));&quot;
6.下列程序的输出为(    )#includestdio.h;main(    ){intm=13;floata=12.6,x;x=m/2+a/2;printf(“%f\n”,x);}          (满分:5)
    A. 12
    B. 12.3
    C. 12.8
    D. 12.3
7.若有说明:inta;则数组a中各元素(    )。          (满分:5)
    A. 可在程序的运行阶段得到初值0
    B. 可在程序的编译阶段得到初值0
    C. 不能得到确定的初值
    D. 可在程序的编译或运行阶段得到初值0
8.合法的C语言标识符是(    )。          (满分:5)
    A. abc
    B. 2ab
    C. a1
    D. /n
9.标有/**/语句的输出结果为(    )intx=20;printf(“%d,%o,%x”,x,x,x);/**/          (满分:5)
    A. 20
    20
    20
    B. &quot;20
    24
    14&quot;
    C. &quot;20
    14
    24&quot;
    D. &quot;20
    024
    14&quot;
10.若x为float型变量,则以列程序段结果是(    )x=1234.6789;printf(“%-2.1f”,x);          (满分:5)
    A. 输出格式描述符的域宽度不够,不能输出
    B. 输出为1234.7
    C. 输出为1234.6
    D. 输出为-1234.6
11.设I和x都是int类型,则对于for循环语句for(i=0,x=0;i<9;i++),下列哪句话正确(    )。          (满分:5)
    A. 执行8次
    B. 执行9次
    C. 是无限循环
    D. 循环体一次也不执行
12.在C语言中,一维数组的定义方式为:类型说明符数组名(    )。          (满分:5)
    A. [常量表达式]
    B. [整型表达式]
    C. [整型常量或整型表达式]
    D. [整型常量]
13.若有以下定义:intm=7,n=12;则能得到值为3的表达式是(    )。          (满分:5)
    A. n%=(m%=5)
    B. n%=(m-m%5)
    C. n%=m-m%5
    D.(n%=m)-(m%=5)
14.下列各数组定义程序段,正确的是(    )。          (满分:5)
    A. intn=10;inta;&quot;
    B. &quot;main(    ){charstr=”aman”}&quot;
    C. &quot;staticint[]={{0
    1
    2}
    {80
    89
    2}};&quot;
    D. staticchar=“iamastudent.”;
15.述语句中,(    )中的if语法有错误。          (满分:5)
    A. if(xy);
    B. &quot;if(x==y)x+y;&quot;
    C. &quot;if(x!=y)scanf(&quot;&quot;%d&quot;&quot;
    x)else scanf(&quot;&quot;%d&quot;&quot;
    y);&quot;
    D. &quot;if(xy){x++;y++;}&quot;
三、判断题:
1.若要用fopen函数打开一个新的二进制文件,该文件要既能读也能写,则文件方式字符串是“ab+”。          (满分:5)
    A. 错误
    B. 正确
2.声明语句int a[]={{1,0,1},{},{1,1}};能对二维数组a进行正确初始化。          (满分:5)
    A. 错误
    B. 正确
3.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值          (满分:5)
    A. 错误
    B. 正确
4.int a[];可以对二维数组a的正确说明。          (满分:5)
    A. 错误
    B. 正确
5.已知int a[]={1,2,3,4},y,*p=&a;则执行语句y(*--p)++;变量y的值是3。          (满分:5)
    A. 错误
    B. 正确

页: [1]
查看完整版本: 东北大学16春学期《C语言及程序设计》在线作业参考答案