|
北交17春《C语言程序设计(专)》在线作业一
答案联系QQ515224986
一、单选题:
1.设有以下语句: char x=3,y=6,z; z=x^y<<2; 则z的二进制值是 (满分:4)
A. 00010100
B. 00011011
C. 00011100
D. 00011000
2.以下程序有错,错误原因是 main( ) { int *p,i;char *q,ch; p=&i; q=&ch; *p=40; *p=*q; ...... } (满分:4)
A. p和q的类型不一致,不能执行*p=*q;语句
B. *p中存放的是地址值,因此不能执行*p=40;语句
C. q没有指向具体的存储单元,所以*q没有实际意义
D. q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果
3.下面能正确进行字符串赋值操作的是 (满分:4)
A. char s[5]={"ABCDE"};
B. char s[5]={ ′A′, ′B′, ′C′, ′D′, ′E′};
C. char *s;s="ABCDE";
D. char *s;char a; scanf("%s",&s);
4.以下不正确的定义语句是 (满分:4)
A. double x[5]={2.0,4.0,6.0,8.0,10.0};
B. int y[5]={0,1,3,5,7,9};
C. char c1[]={′1′,′2′,′3′,′4′,′5′};
D. char c2[]={′\x10′,′\xa′,′\x8′};
5.在16位IBM-PC机上使用C语言,若有如下定义 struct data { int i; char ch; double f; } b; 则结构变量b占用内存的字节数是 (满分:4)
A. 1
B. 2
C. 7
D. 11
6.设有数组定义: char array[]="China"; 则数组 array所占的空间为 (满分:4)
A. 4个字节
B. 5个字节
C. 6个字节
D. 7个字节
7.若有以下程序 #include int a[]={2,4,6,8}; main( ) { int i; int *p=a; for(i=0;i<4;i++)a[i]=*p; printf("%d\n",a[2]); } 上面程序输出结果是 (满分:4)
A. 6
B. 8
C. 4
D. 2
8.以下程序有语法错误,有关错误原因的正确说法是 main( ) { int G=5,k; void prtchar( ); ... k=prtchar(G); ... } (满分:4)
A. 语句 void prtchar( );有错,它是函数调用语句,不能用void说明
B. 变量名不能使用大写字母
C. 函数说明和函数调用语句之间有矛盾
D. 函数名不能使用下划线
9.请选出以下语句的输出结果 printf("%d\n",strlen("\t\"\065\xff\n")); (满分:4)
A. 5
B. 14
C. 8
D. 输出项不合法,无正常输出
10.假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入: PROG ABCDEFGH IJKL,则输出结果为 main( int argc, char *argv[]) { while(--argc>0) printf("%s",argv[argc]); printf("\n"); } (满分:4)
A. ABCDEFG
B. IJHL
C. ABCDEFGHIJKL
D. IJKLABCDEFGH
二、多选题:
1.在C语言中,正确的int类型的常数是:( )。 (满分:4)
A. 0
B. 32768
C. 037
D. 0xaf
2.关于静态局部变量的说明正确的是( )。 (满分:4)
A. 静态局部变量存储在静态存储区
B. 静态局部变量是在编译时赋初值的,即只赋一次值,在程序运行时它已有初值
C. 若在定义局部变量时不赋初值,则编译时自动赋初值为0或空字符
D. 虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的
3.若有以下定义和语句:double r=99,*p=&r; *p=r;则以下不正确的叙述是:( ) (满分:4)
A. 以上两处的*p含义相同,都说明给指针变量p赋值
B. 语句“*p=r;”把变量r的地址值赋给指针变量p
C. 语句“*p=r;”取变量r的值放回r中
D. 在“double r=99,*p=&r;”中,把r的地址赋值给了p所指的存储单元
4.函数调用可以( )。 (满分:4)
A. 出现在一个表达式中
B. 出现在执行语句中
C. 作为一个函数的实参
D. 作为一个函数的形参
5.关于宏定义的说法正确的是: (满分:4)
A. 宏名一般习惯用大写字母表示,以便与变量名相区别
B. 使用宏名代替一个字符串,可以减少程序中重复书写某些字符串的工作量
C. 宏定义是用宏名代替一个字符串,也就是简单的置换,不作正确性检查
D. 宏定义不是C语句,不必在行末加分号
6.已知:int x,a,b;下列选项中正确的if语句是( )。 (满分:4)
A. if(a=b) x++;
B. if(a=<b) x++;
C. if(a-b) x++;
D. if(x) x++;
7.C提供的预处理功能主要有( )。 (满分:4)
A. 宏定义
B. 文件包含
C. 条件编译
D. 异常终止
8.以下( )是正确的转义字符。( ) (满分:4)
A. ‘\\'
B. ‘\’
C. ‘\81'
D. ‘\0'
9.关于实参和形参的说法正确的是( )。 (满分:4)
A. 在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元
B. 实参可以是变量、常量或表达式
C. 实参与形参的类型应相同或赋值兼容
D. 实参变量对形参变量的数据传递是“值传递”
10.对静态变量的正确描述 (满分:4)
A. 静态局部变量在静态存储区内分配单元
B. 静态外部变量可以赋初值,也可以不赋初值
C. 静态外部变量的作用与外部变量相同
D. 静态局部变量在函数调用结束时,仍保存其值,不会随着消失。
三、判断题:
1.C程序的执行总是从第一个定义的函数开始 (满分:4)
A. 错误
B. 正确
2.使用符号常量的好处是:一,含义清楚,二,在需要改变一个常量时能做到“一改全改”( ) (满分:4)
A. 错误
B. 正确
3.共用体所占的内存空间大小取决于占空间最多的那个成员变量。 (满分:4)
A. 错误
B. 正确
4.主函数和其它函数可以相互调用 (满分:4)
A. 错误
B. 正确
5.C语言中,整常数有三种表示形式:十进制整数,八进制整数,十六进制整数。( ) (满分:4)
A. 错误
B. 正确
更多免费学习资料请登录www.openhelp100.com
|
|