|
北交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
|
|