离线作业答案 发表于 2017-5-18 09:37:46

东师C程序设计17春在线作业答案

东师C程序设计17春在线作业2

一、单选题:
1.设有如下定义: int x=10,y=3,z;则语句printf("%d\n",z=(x%y,x/y)); 的输出结果是(    )          (满分:3)
    A. 1
    B. 0
    C. 4
    D. 3
2.在C语言中,字符型数据在内存中是以什么形式存放的?(    )          (满分:3)
    A. 原码
    B. BCD码
    C. 反码
    D. ASCII码
3.C语言中的文件类型只有(    )          (满分:3)
    A. 索引文件和文本文件两种
    B. 文本文件一种
    C. 二进制文件一种
    D. ASCII码文件和二进制文件两种
4.当说明一个结构体变量时,系统分配它的内存是(    )          (满分:3)
    A. 各成员所需内存容量的总和
    B. 结构体中第一个成员所需内存
    C. 各成员所需内存容量的最大值
    D. 结构体中最后一个成员所需内存
5.以下程序#define P 3 #define F(x) P*x*x main(    ) { printf("%d\n",F(3+5)); }   的输出结果是(    )          (满分:3)
    A. 192
    B. 29
    C. 25
    D. 编译出错
6.设a为整型变量,初值为12,执行完语句 a+=a-=a*a后,a的值是(    )          (满分:3)
    A. 552
    B. 144
    C. 264
    D. -264
7.若k为整型,则下列while循环      k=2;while(k==0)   printf(“%d”,k);   k--;printf(“\n”); 执行多少次?(    )          (满分:3)
    A. 2
    B. 9
    C. 0
    D. 1
8.以下程序: fun(int x, int y, int z)      { z=x*x+y*y; }      main(    )      { int a=31;      fun(5,2,a);      printf(“%d”,a);      } 程序的输出结果是(    )          (满分:3)
    A. 0
    B. 29
    C. 31
    D. 无定值
9.当说明一个共用体变量时,系统分配它的内存是(    )          (满分:3)
    A. 各成员所需内存容量的总和
    B. 共用体中第一个成员所需内存
    C. 各成员所需内存容量的最大值
    D. 共用体中最后一个成员所需内存
10.以下程序:main(    )   {int i=010,j=10;      printf("%d,%d\n",i,j);}的输出结果为(    )          (满分:3)
    A. 11,9
    B. 9,10
    C. 8,10
    D. 9,9
11.已知职工记录描述如下, struct worker{int no; char name; char sex;union { int day;int month;int year;}birth;} w; 在Turbo C中,系统为变量w分配字节的空间数目是(    )          (满分:3)
    A. 29
    B. 20
    C. 25
    D. 6
12.下面可以正确表示字符型常数的是(    )          (满分:3)
    A. ”a”
    B. ’t’
    C. ”\n”
    D. 297
13.若变量c为char类型,能正确判断出c为小写字母的表达式是(    )          (满分:3)
    A. ’a’<=c<=’z’
    B.(c>=’a’)(    )(c<=’z’)
    C.(‘a’<=c) and(‘z’>=c)
    D.(c>=’a’) &&(c<=’z’)
14.指出下面正确的输入语句(    )          (满分:3)
    A. scanf(“a=b=%d”,&a,&b);
    B. scanf(“%d,%d”,&a,&b) ;
    C. scanf(“%c”,c) ;
    D. scanf(“% f%d\n”,&f) ;
15.有以下程序            main(    )      { int x={8,7,6,5,0,0},*s;      s=x+3;      printf("%d\n",s);       } 执行后输出结果是(    )          (满分:3)
    A. 随机值
    B. 0
    C. 5
    D. 6
16.以下不是建立函数的目的是(    )          (满分:3)
    A. 提高程序的执行效率
    B. 提高程序的可读性
    C. 减少程序的篇幅
    D. 实现模块化编程
17.若要用下面的程序片段使指针变量p指向一个存储整型变量的动态存储单元:int *p;p=(    )(    ) malloc( sizeof(int));则应填入(    )          (满分:3)
    A. int
    B. *int
    C.(*int)
    D.(int *)
18.在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式为(    )          (满分:3)
    A. 只能是逻辑表达式
    B. 只能是关系表达式
    C. 只能是逻辑表达式或关系表达式
    D. 可以是任意表达式
19.设有如下定义: char *aa={"abcd","ABCD"}; 则以下说法中正确的是(    )          (满分:3)
    A. aa数组成元素的值分别是"abcd"和ABCD"
    B. aa是指针变量,它指向含有两个数组元素的字符型一维数组
    C. aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
    D. aa数组的两个元素中各自存放了字符'a'和'A'的地址
20.以下程序: main(    ){char s1="country",s2="side";int i=0,j=0;   while(s1!='\0')i++;    while(s2!='\0')s1=s2;s1=0; printf("%s\n",s1); }的输出结果为(    )          (满分:3)
    A. side
    B. country
    C. sidetry
    D. countryside
三、判断题:
1.链表是一种动态数据结构,在程序运行中可动态生成或释放存贮空间。          (满分:2)
    A. 错误
    B. 正确
2.函数的函数体可以为空。          (满分:2)
    A. 错误
    B. 正确
3.getchar(    )函数没有参数。          (满分:2)
    A. 错误
    B. 正确
4.main函数不能有形参。          (满分:2)
    A. 错误
    B. 正确
5.C语言的所有循环语句都要求至少要执行一次循环体。          (满分:2)
    A. 错误
    B. 正确
6.C程序中,一行上可以写多个语句。          (满分:2)
    A. 错误
    B. 正确
7.指针在任何情况下都可进行>,=,<=,==运算。          (满分:2)
    A. 错误
    B. 正确
8.数组是一种构造型数据,即是若干相同类型的数据的集合。          (满分:2)
    A. 错误
    B. 正确
9.C 语言源程序文件通过了编译、连接之后 , 生成一个后缀为 .EXE 的文件。          (满分:2)
    A. 错误
    B. 正确
10.任何两个毫无关系的指针作相减运算是没有意义的。          (满分:2)
    A. 错误
    B. 正确
11.break语句用在循环体中,可结束本层循环,continue语句用在循环体中,可结束本次循环。          (满分:2)
    A. 错误
    B. 正确
12.C语言规定数组元素的下标从0开始。          (满分:2)
    A. 错误
    B. 正确
13.在Turbo C中,整型数据在内存中占2个字节。          (满分:2)
    A. 错误
    B. 正确
14.在对某一函数进行多次调用时,系统会对相应的自动变量重新分配存储单元。          (满分:2)
    A. 错误
    B. 正确
15.int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果为A。          (满分:2)
    A. 错误
    B. 正确
16.若有宏定义:#define PI 3.14i5926,则系统预编译时会报错。          (满分:2)
    A. 错误
    B. 正确
17.一个程序中可以使用多条文件包含命令,但一条文件包含命令只能包含一个文件。          (满分:2)
    A. 错误
    B. 正确
18.数组的元素在内存中连续存贮。          (满分:2)
    A. 错误
    B. 正确
19.char *p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。          (满分:2)
    A. 错误
    B. 正确
20.宏定义的宏名一定要大写,否则无效。          (满分:2)
    A. 错误
    B. 正确
C程序设计17春在线作业1

一、单选题:
1.设有以下宏定义:#defineH30#define LEN H+20则执行赋值语句v=LEN*10;后,v的值是(    )          (满分:3)
    A. 60
    B. 230
    C. 500
    D. 0
2.设有如下程序段,int k=10; while(k=0)k=k-1;下面描述中正确的是(    )          (满分:3)
    A. 循环执行一次
    B. 循环是无限循环
    C. 循环体语句一次也不执行
    D. 循环体语句执行一次
3.以下程序:main(    ) { int i , sum; for(i=1;i<6;i++) sum+=i; printf(“%d\n”,sum); } 执行程序后sum的值是(    )          (满分:3)
    A. 15
    B. 14
    C. 不确定
    D. 0
4.不是C语言提供的合法关键字的是(    )          (满分:3)
    A. switch
    B. true
    C. case
    D. default
5.选出下列标识符中不是合法的标识符的是(    )          (满分:3)
    A. hotdo
    B. cat1
    C. pri
    D. 2ab
6.C语言源程序的基本单位是(    )          (满分:3)
    A. 过程
    B. 函数
    C. 子程序
    D. 标识符
7.下列描述中不正确的是(    )          (满分:3)
    A. 字符型数组中能存放字符串。
    B. 可以对字符型数组进行整体输入、输出。
    C. 可以对整型数组进行整体输入、输出。
    D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
8.设有说明 int(*ptr)(    );其中标识符ptr是(    )          (满分:3)
    A. 是一个指向整型变量的指针
    B. 它是一个指向函数值是int的函数指针
    C. 是一个函数名
    D. 定义不合法
9.下列描述中不正确的是(    )          (满分:3)
    A. 字符型数组中可以存放字符串。
    B. 可以对字符型数组进行整体输入、输出。
    C. 可以对整型数组进行整体输入、输出。
    D. 不能在赋值语句中通过赋值运算符“=”对字符型数组进行整体赋值。
10.已有定义:int i,a,*p;,则合法的赋值语句是(    )          (满分:3)
    A. p=100;
    B. p=a;
    C. p=a+2;
    D. p=a+2;
11.已定义c为字符型变量,则下列语句中正确的是 (    )          (满分:3)
    A. c=‘97’;
    B. c="97";
    C. c=97;
    D.
    E. c="a";
12.以下关于函数的叙述中正确的是(    )          (满分:3)
    A. 每个函数都可以被其它函数调用(包括main函数)
    B. 每个函数都可以被单独编译
    C. 每个函数都可以单独运行
    D. 在一个函数内部可以定义另一个函数
13.设有如下定义 char x[]={“abcdefg”};char y[]={‘a’,’b’,’c’,’d’,’e’,’f’,’g’} ; 则正确的叙述为(    )          (满分:3)
    A. 数组x和y等价
    B. 数组x和y的长度相同
    C. 数组x的长度大于数组y的长度
    D. 数组x的长度小于数组y的长度
14.C程序设计语言是(    )          (满分:3)
    A. 机器语言
    B. 只适合编写应用软件的语言
    C. 高级语言
    D. 只适合编写系统软件的语言
15.以下程序: fun(int x, int y, int z)      { z=x*x+y*y; }      main(    )      { int a=31;      fun(5,2,a);      printf(“%d”,a);      } 程序的输出结果是(    )          (满分:3)
    A. 0
    B. 29
    C. 31
    D. 无定值
16.下列标识符中不是合法的标识符的是(    )          (满分:3)
    A. IF
    B. cat1
    C. pri
    D. a@b
17.若有定义int a[]={10,20,30},*p=a;则当执行p++后,下列说法错误的是(    )          (满分:3)
    A. p向高地址移了一个字节
    B. p向高地址移了两个字节
    C. p向高地址移了一个存贮单元
    D. p与a+1等价
18.要定义一个数组a是一个具有3个元素的指针数组,它的定义语句格式是(    )          (满分:3)
    A. int(*a)
    B. int *a
    C. int *a
    D. 以上写法都不对
19.以下程序: main(    ){char s1="country",s2="side";int i=0,j=0;   while(s1!='\0')i++;    while(s2!='\0')s1=s2;s1=0; printf("%s\n",s1); }的输出结果为(    )          (满分:3)
    A. side
    B. country
    C. sidetry
    D. countryside
20.t为int类型,进人下面的循环之前,t的值为0 while( t=l ) { …… } 则以下叙述中正确的是 (    )          (满分:3)
    A. 循环控制表达式的值为0
    B. 循环控制表达式的值为1
    C. 循环控制表达式不合法
    D. 以上说法都不对
三、判断题:
1.C语言中的文件在操作完毕以后,用feof(    )来关闭。          (满分:2)
    A. 错误
    B. 正确
2.for循环只能用于循环次数已经确定的情况。          (满分:2)
    A. 错误
    B. 正确
3.逻辑运算符的优先级为&&>(    )>!。          (满分:2)
    A. 错误
    B. 正确
4.指针是一种变量,该变量用来存放某个变量的地址值。          (满分:2)
    A. 错误
    B. 正确
5.C语言的所有循环语句都要求至少要执行一次循环体。          (满分:2)
    A. 错误
    B. 正确
6.C语言中有逻辑类型但没有集合类型。          (满分:2)
    A. 错误
    B. 正确
7.当函数类型与return 表达式;中表达式的类型不一致时,以函数类型为准。          (满分:2)
    A. 错误
    B. 正确
8.C语言中,变量名用大小写是等价的。          (满分:2)
    A. 错误
    B. 正确
9.已知int a,b,c=10; 则a+b=c;是合法的赋值表达式。          (满分:2)
    A. 错误
    B. 正确
10.switch(c) 语句中c可以是int ,long,char ,float ,unsigned int 类型。          (满分:2)
    A. 错误
    B. 正确
11.对整型变量可进行自加或自减运算,而对常量或表达式不可以。          (满分:2)
    A. 错误
    B. 正确
12.数组名可以作为参数进行传递。          (满分:2)
    A. 错误
    B. 正确
13.int *p=10;的含义是定义了一个指向整型的指针变量,且将变量p的值赋为10。          (满分:2)
    A. 错误
    B. 正确
14.当没写函数的返回类型时,系统隐含的函数类型为void.          (满分:2)
    A. 错误
    B. 正确
15.在定义函数中指定的形参变量,在未调用函数时,并不占内存中的存储单元。          (满分:2)
    A. 错误
    B. 正确
16.C语言规定:在一个源程序中,main函数的位置必须在最开始。          (满分:2)
    A. 错误
    B. 正确
17.44.while之后的表达式必须是逻辑表达式。          (满分:2)
    A. 错误
    B. 正确
18.宏定义可分为带参数的宏定义和不带参数的宏定义两类。          (满分:2)
    A. 错误
    B. 正确
19.C语言的常量在程序运行过程中不可以重新赋值。          (满分:2)
    A. 错误
    B. 正确
20.若有形参定义:int a;则a++是合法的表达式。          (满分:2)
    A. 错误
    B. 正确

页: [1]
查看完整版本: 东师C程序设计17春在线作业答案