奥鹏教育西南交通大学《高级语言程序设计A》在线作业二
奥鹏西南交通大学平时作业
西南交《高级语言程序设计A》在线作业二
下面程序段的运行结果是 char *format=%s,a=%d,b=%d\n; int a=11,b=10; a+=b; printf(format,a+=b,a,b);
A:for,a+=b,ab
B:format,a+=b
C:a+=b,a=21,b=10
D:以上结果都不对
答案问询微信:424329
返回值为void的函数,其含义为( )
A:调用函数之后,被调用的函数没有返回值
B:调用函数之后,被调用的函数不返回
C:调用函数之后,被调用的函数的返回值为任意的类型
D:该类函数不允许被调用
答案问询微信:424329
若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为
A:4
B:16
C:32
D:52
答案问询微信:424329
下列程序的输出结果是 int b=2; int func(int *a) { b += *a; return(b);} main() { int a=2, res=2; res += func(a); printf(%d\n,res); }
A:4
B:6
C:8
D:10
答案问询微信:424329
在16位IBM-PC机上使用C语言,若有如下定义 struct data { int i; char ch; double f; } b; 则结构变量b占用内存的字节数是
A:1
B:2
C:7
D:11
答案问询微信:424329
设有以下说明语句 struct ex { int x ; float y; char z ;} example; 则下面的叙述中不正确的是
A:struct结构体类型的关键字
B:example是结构体类型名
C:x,y,z都是结构体成员名
D:struct ex是结构体类型名
答案问询微信:424329
阅读以下程序及对程序功能的描述,其中正确的描述是 #include main() { FILE *in,*out; char ch,infile[10],outfile[10]; printf("Enter the infile name:\n"); scanf("%s",infile); printf("Enter the outfile name:\n"); scanf("%s",outfile); if((in=fopen(infile,&q奥鹏西南交通大学平时作业uot;r"))==NUL
A:程序完成将磁盘文件的信息在屏幕上显示的功能
B:程序完成将两个磁盘文件合二为一的功能
C:程序完成将一个磁盘文件复制到另一个磁盘文件中
D:程序完成将两个磁盘文件合并并在屏幕上输出
答案问询微信:424329
在“文件包含”预处理语句的使用形式中,当#include后面的文件名用“”(双引号)括起来时,寻找被包含文件的方式是( )
A:仅仅搜索当前目录
B:仅仅搜索源程序所在目录
C:直接按系统设定的标准搜索目录
D:在系统当前目录搜索和C语言系统系统指定的INCLUDE目录中搜索
答案问询微信:424329
以下程序的输出结果是 void reverse(int a[],int n) { int i,t; for(i=0;i n/2;i++) { t=a[i]; a[i]=a[n-1-i];a[n-1-i]=t;} } main() { int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0; reverse(b,8); for(i=6;i10;i++)s+=b[i]; printf( %d\n ,s);
A:22
B:10
C:34
D:30
答案问询微信:424329
下列各数据类型不属于构造类型的是
A:枚举型
B:共用型
C:结构型
D:数组型
答案问询微信:424329
C语言允许函数类型缺省定义,此时函数值隐含的类型是
A:float
B:int
C:long
D:double
答案问询微信:424329
如下程序 :
void main( )
{
int i,sum;
for(i=1;i=5;sum++) sum+=i;
printf("%dn",sum);
}
该程序的执行结果是( )
A:死循环
B:3
C:6
D:15
答案问询微信:424329
以下程序有错,错误原因是 main() { int *p,i;char *q,ch; p=i; q=ch; *p=40; *p=*q; …… }
A:p和q的类型不一致,不能执行*p=*q;语句
B:*p中存放的是地址值,因此不能执行*p=40;语句
C:q没有指向具体的存储单元,所以*q没有实际意义
D:q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果
答案问询微信:424329
若已定义: int a[]={0,1,2,3,4,5,6,7,8,9}, *p=a,i; 其中 0i9, 则对a数组元素不正确的引用是
A:a[p-a]
B:*(a[i])
C:p[i]
D:a[10]
答案问询微信:424329
若有以下说明语句,且0=i=10,则 ( )是对数组元素的错误引用。
int a[]={1,2,3,4,5,6,7,8,9,0},*p,i; p=a;
A:5
B:6
C:9
D:8
答案问询微信:424329
C语言中运算对象必须是整型的运算符是( )
A:%
B:/
C:=
D:=
答案问询微信:424329
若有如下说明 int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; 则数值为6的元素的表达式是( )
A:*p+5
B:*(p+5)
C:*p+=5
D:p+5
答案问询微信:424329
执行以下程序后,a,b的值分别为 main() { int a,b,k=4,m=6,*p1= a=p1== b=(*p1)/(*p2)+7; printf("a=%d\n",a); printf("b=%d\n",b); }
A:-1,5
B:1,6
C:0,7
D:4,10
答案问询微信:424329
下列程序的输出结果是 main() { double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(%d\n, d*y); }
A:3
B:3.2
C:0
D:3.07
答案问询微信:424329
有如下程序: long fib(int n) { if(n2)return(fib(n-1)+fib(n-2)); else return(2); } main() { printf(%d\n,fib(3));} 该程序的输出结果是
A:2
B:4
C:6
D:8
答案问询微信:424329
在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是
A:a=20000+20000;
B:a=4000*10;
C:a=30000+10000;
D:a=4000L*10L
答案问询微信:424329
设有定义:int n=0,*p=n,**q=p,则下列选项中正确的赋值语句是
A:p=1;
B:*q=2;
C:q=p;
D:*p=5;
答案问询微信:424329
函数 rewind 的作用是
A:使文件位置指针重新返回文件的开始位置
B:将文件位置指针指向文件中所要求的特定位置
C:使文件位置指针指向文件的末尾
D:使文件位置指针自动移至下一个字符位置
答案问询微信:424329
设有以下语句: char x=3,y=6,z; z=x^y2; 则z的二进制值是
A:00010100
B:00011011
C:00011100
D:00011000
答案问询微信:424329
不与while(x)语句中的x等价的是_____。
A:x= =0
B:x= =1
C:x!=1
D:x!=0
答案问询微信:424329
内存中供用户使用的存储空间可分为:______。
A:程序区
B:静态存储区
C:动态存储区
D:数据存储区
答案问询微信:424329
以下正确的C语言标识符是_____。
A:ABC
B:abc
C:a_bc
D:ab.c
答案问询微信:424329
对静态变量的正确描述
A:静态局部变量在静态存储区内分配单元( )
B:静态外部变量可以赋初值,也可以不赋初值
C:静态外部变量的作用与外部变量相同
D:静态局部变量在函数调用结束时,仍保存其值,不会随着消失。
答案问询微信:424329
关于静态局部变量的说明正确的是______。
A:静态局部变量存储在静态存储区
B:静态局部变量是在编译时赋初值的,即只赋一次值,在程序运行时它已有初值
C:若在定义局部变量时不赋初值,则编译时自动赋初值为0或空字符
D:虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的
答案问询微信:424329
设有如下定义:int (*ptr)();则以下叙述中不正确的是______。
A:ptr是指向一维数组的指针变量
B:ptr是指向int型数据的指针变量
C:ptr是指向函数的指针,该函数返回一个int型数据
D:ptr是一个函数名,该函数的返回值是指向int型数据的指针
答案问询微信:424329
关于实参和形参的说法正确的是______。
A:在定义函数中指定的形参,在未出现函数调用时,它们并不占内存中的存储单元
B:实参可以是变量、常量或表达式
C:实参与形参的类型应相同或赋值兼容
D:实参变量对形参变量的数据传递是“值传递”
答案问询微信:424329
下列描述正确的是
A:由main 函数及其参数argc和* argv[]可以实现命令行方式
B:使用fclose关闭文件时,先释放文件指针,再写缓冲区数据到文件中
C:字符数组并不要求它的最后一个字符是
D:A和A都是字符串常量
答案问询微信:424329
若定义:int a[2][3]{0,2,4,6,8,10};以下描述正确的有
A:A、*(a+1)为元素6的地址
B:B、*(a[1]+1)的值为2
C:C、**(a+1)+2的值为8
D:D、a[0]与a相同
答案问询微信:424329
下列关于#include命令的叙述中,正确的是______。
A:一个#include命令中只能指定一个被包含文件
B:一个#include命令中可以指定多个被包含文件
C:一个被包含文件中又可以包含另一个被包含文件
D:#include命令中,文件名可以用双引号或尖括号括起来
答案问询微信:424329
以下不正确的描述是______。
A:函数的定义可以嵌套,函数的调用不可以嵌套
B:函数的定义不可以嵌套,函数的调用可以嵌套
C:函数的定义和函数的调用均可以嵌套
D:函数的定义和函数的调用均不可以嵌套
答案问询微信:424329
在缓冲文件系统中用于读写的函数有
A:putchar ()
B:fread()
C:rewind ()
D:putw()
答案问询微信:424329
C语言中函数返回值的类型与下列哪项无关?
A:定义函数时所指定的函数类型
B:调用函数时临时
C:调用该函数的主函数类型
D:return语句中的表达式类型
答案问询微信:424329
以下______是正确的转义字符。( )
A:‘\'
B:‘’
C:‘81'
D:‘ '
答案问询微信:424329
C提供的预处理功能主要有______。
A:宏定义
B:文件包含
C:条件编译
D:异常终止
答案问询微信:424329
数据结构指的是数据的组织形式,数组就是一种数据结构( )
A:错误
B:正确
答案问询微信:424329
一个int型与一个double型数据进行混合运算时,其结果是double型。
A:错误
B:正确
答案问询微信:424329
若打开文件的方式为“w”而该文件已经存在,则文件中原有数据被清除。
A:错误
B:正确
答案问询微信:424329
for(;;)语句相当于while(1)语句
A:错误
B:正确
答案问询微信:424329
共用体所占的内存空间大小取决于占空间最多的那个成员变量。
A:错误
B:正确
答案问询微信:424329
C语言编译系统在给出逻辑运算结果时,以数值1代表真,以0代表假,但在判断一个量是否为“真”时,以0代表假,以非0代表真。( )
A:错误
B:正确
答案问询微信:424329
使用printf和scanf函数时,必须添加#include stdio.h命令。( )
A:错误
B:正确
答案问询微信:424329
C程序中各函数之间既允许直接递归调用也允许间接递归调
A:错误
B:正确
答案问询微信:424329
puts和gets函数只能输入或输出一个字符串
A:错误
B:正确
答案问询微信:424329
C程序的执行总是从第一个定义的函数开始
A:错误
B:正确
答案问询微信:424329