|  | 
 
| 北交17春《C语言程序设计》在线作业一 答案
 
 一、单选题:
 1.以下可作为函数 fopen 中第一个参数的正确格式是(    )。          (满分:2)
 A. c:\user\file.txt
 B. "c:\user\file.txt"
 C. "c:\\user\\file.txt"
 D. c:user\file.txt
 2.已知: int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+2 ;则值为 3 的表达式是(    )。          (满分:2)
 A.(*p)++
 B. *p++
 C. *++p
 D. ++*p
 3.已知:int i=6,j;,则执行语句j=(++i)+(i++)后的j值是(    )。(    )          (满分:2)
 A. 4
 B. 14
 C. 13
 D. 15
 4.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是(    )。          (满分:2)
 A. float型
 B. int型
 C. long型
 D. double型
 5.C语言程序从main(    )函数开始执行,所以这个函数要写在(    )。          (满分:2)
 A. 程序文件的开始
 B. 程序文件的最后
 C. 它所调用的函数的前面
 D. 程序文件的任何位置
 6.调用strlen("abcd\0\ef\0g")的返回值是(    )。          (满分:2)
 A. 4
 B. 5
 C. 8
 D. 9
 7.若有初始化语句“ int a[5]={1,2,3,4,5}; ”,值为 4 的表达式是(    )。          (满分:2)
 A. a[4]
 B. a[a[2]+1]
 C. a[a[2]]
 D. a[3]+1
 8.若有输入语句scanf( "%d%d%d", &x,&y,&z);则不能使x值为5, y值为6, z值为7的输入是(    )。          (满分:2)
 A. 5,6 ,7<回车>
 B. 5 6 7<回车>
 C. 5 6 <回车> 7<回车>
 D. 5<回车>,6<回车>,7<回车>
 9.以下说法下确的是(    )。          (满分:2)
 A. C语言程序总是从第一个的函数开始执行
 B. 在C语言程序中,要调用的函数必须在main(    )函数中定义
 C. C语言程序总是从main(    )函数开始执行
 D. C语言程序中的main(    )函数必须放在程序的开始部分
 10.已知:int a,*p=&a;,则下列函数调用中错误的是(    )。(    )          (满分:2)
 A. scanf("%d",&a);
 B. scanf("%d",p);
 C. scanf("%d",*p);
 D. printf("%d",a);
 11.C语言是(    )语言。          (满分:2)
 A. 高级
 B. 中级
 C. 机器
 D. 汇编
 12.设n=3;则执行 ++n语句后,n的值为(    )。(    )          (满分:2)
 A. 5
 B. 4
 C. 3
 D. 2
 13.有以下程序片段 int n=0,p; do { scanf(%d",&p); n++; } while(p!=12345&&n<3); 此处 do-while 循环的结束条件是(    )          (满分:2)
 A. p的值不等于12345并且n的值小于3
 B. p的值等于12345并且n的值大于等于3
 C. p的值不等于12345或且n的值小于3
 D. p的值等于12345或且n的值大于等于3
 14.数组int**a[3][4]占据多大空间          (满分:2)
 A. 64
 B. 12
 C. 48
 D. 128
 15.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是(    )。          (满分:2)
 A. 1
 B. 2.0
 C. 2
 D. 2.5
 二、多选题:
 1.下列(    )(    )数据类型属于C语言提供的基本数据类型。          (满分:3)
 A. 数组类型
 B. 指针类型
 C. 整型
 D. 结构体类型
 E. 空类型
 F. 字符型
 G. 实型
 H. 共用体类型
 2.带参宏定义与函数的区别是:(    )。          (满分:3)
 A. 函数调用时,先求出实参表达式的值,然后代入形参,带参的宏只是进行简单的字符替换
 B. 函数调用是在程序运行时为形参分配临时的存储单元,而宏展开是在编译前进行的
 C. 宏不存在类型问题,宏名和参数都不存在类型问题
 D. 调用函数只能得到一个返回值,而使用宏可设法得到几个结果
 3.函数调用可以(    )。          (满分:3)
 A. 出现在一个表达式中
 B. 出现在执行语句中
 C. 作为一个函数的实参
 D. 作为一个函数的形参
 4.关于宏定义的说法正确的是:          (满分:3)
 A. <p>宏名一般习惯用大写字母表示,以便与变量名相区别</p>
 B. 使用宏名代替一个字符串,可以减少程序中重复书写某些字符串的工作量
 C. 宏定义是用宏名代替一个字符串,也就是简单的置换,不作正确性检查
 D. 宏定义不是C语句,不必在行末加分号
 5.关于静态局部变量的说明正确的是(    )。          (满分:3)
 A. 静态局部变量存储在静态存储区
 B. 静态局部变量是在编译时赋初值的,即只赋一次值,在程序运行时它已有初值
 C. 若在定义局部变量时不赋初值,则编译时自动赋初值为0或空字符
 D. 虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的
 6.在动态存储区中主要存放以下数据(    )。          (满分:3)
 A. 函数形式参数
 B. 自动变量
 C. 函数调用时的现场保护和返回地址
 D. 全局变量
 7.已知:int x,a,b;下列选项中正确的if语句是(    )。          (满分:3)
 A. if(a=b) x++;
 B. if(a=<b) x++;
 C. if(a-b) x++;
 D. if(x) x++;
 8.下列说法不正确的是(    )。          (满分:3)
 A. C程序由符号构成
 B. C程序由标识符构成
 C. C程序由函数构成
 D. C程序由C语句构成
 9.下列字符中能构成标识符的是(    )。          (满分:3)
 A. 数字字符
 B. 连接符
 C. 下划线字符
 D. 大写字母
 10.在C语言中,正确的int类型的常数是:(    )。          (满分:3)
 A. 0
 B. 32768
 C. 037
 D. 0xaf
 11.下列关于#include命令的叙述中,正确的是(    )。          (满分:3)
 A. 一个#include命令中只能指定一个被包含文件
 B. 一个#include命令中可以指定多个被包含文件
 C. 一个被包含文件中又可以包含另一个被包含文件
 D. #include命令中,文件名可以用双引号或尖括号括起来
 12.内存中供用户使用的存储空间可分为:(    )。          (满分:3)
 A. 程序区
 B. 静态存储区
 C. 动态存储区
 D. 数据存储区
 13.以下说法不正确的是(    )。          (满分:3)
 A. 定义函数时,形参的类型说明可以放在函数体内
 B. return后边的值不能为表达式
 C. 如果函数值的类型与返回值表达式的类型不一致,以函数值类型为准
 D. 如果形参与实参的类型不一致,以实参类型为准
 14.以下(    )是正确的转义字符。(    )          (满分:3)
 A. ‘\\'
 B. ‘\’
 C. ‘\81'
 D. ‘\0'
 15.设有如下定义:int(*ptr)(    );则以下叙述中不正确的是(    )。          (满分:3)
 A. ptr是指向一维数组的指针变量
 B. ptr是指向int型数据的指针变量
 C. ptr是指向函数的指针,该函数返回一个int型数据
 D. ptr是一个函数名,该函数的返回值是指向int型数据的指针
 三、判断题:
 1.在C语言中,不区分字母的大小写。(    )          (满分:2.5)
 A. 错误
 B. 正确
 2.对于二维数组a[2][3],则a[1]表示是第二行的首地址。          (满分:2.5)
 A. 错误
 B. 正确
 3.free函数只能释放malloc(    )函数分配的存储空间。          (满分:2.5)
 A. 错误
 B. 正确
 4.假定x和y为double型,则表达式x=2,y=x+3/2的值是3。          (满分:2.5)
 A. 错误
 B. 正确
 5.在C语言中,变量不区分大小写。          (满分:2.5)
 A. 错误
 B. 正确
 6.逻辑运算符的优先级比算术运算符高。          (满分:2.5)
 A. 错误
 B. 正确
 7.C语言中,整常数有三种表示形式:十进制整数,八进制整数,十六进制整数。(    )          (满分:2.5)
 A. 错误
 B. 正确
 8.若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,b)));在此函数调用语句中实参的个数是4。          (满分:2.5)
 A. 错误
 B. 正确
 9.宏定义就是用宏名代替一个字符串,也就是简单的置换,不作对性检查。          (满分:2.5)
 A. 错误
 B. 正确
 10.c程序是由c文件构成,而c文件是由函数构成。          (满分:2.5)
 A. 错误
 B. 正确
 更多免费学习资料请登录www.openhelp100.com
 
 
 | 
 |