吉大17秋学期《C语言程序设计》在线作业一-0005

有以下程序:    #include    union pw    { int i;    char ch[2];}a;     main()     {a.ch[0]=13;a.ch[1]=0;printf("%d\n",a.i);}    程序的输出结果是
A:13
B:14
C:208
D:209

设有以下语句:    char x=3,y=6,z;    z=x^y<<2;    则z的二进制值是
A:00010100
B:00011011
C:00011100
D:00011000

下列程序的输出结果是    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

以下叙述中不正确的是
A:在不同的函数中可以使用相同的名字的变量
B:函数中的形式参数是局部变量
C:在一个函数内定义的变量只在本函数范围内有效
D:在一个函数内的复合语句中定义的变量在本函数范围内有效

下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除,请选择填空。   <font face=”Arial”>#include &quot;stdio.h&quot;&nbsp; main(){ int i=0,j,k;do{i++;k=316-13*i;}while(k%11);j=k/11;printf(&quot;316=13*%d+11*%d&quot;,i,j);}</font>
A:k%11
B:k
C:k/11==0
D:k==0

在16位IBM-PC机上使用C语言,若有如下定义    struct data    { int i;    char ch;    double f;    } b;    则结构变量b占用内存的字节数是
A:1
B:2
C:7
D:11

<p>以下程序的输出结果是   </p><p><font face=”Arial”>#include &quot;stdio.h&quot;<br />void reverse(int a[],int n)<br />{<br />&nbsp;int i,t;<br />&nbsp;for(i=0;i&lt;n/2;i++){<br />&nbsp;&nbsp;t=a;<br />&nbsp;&nbsp;a=a[n-1-i];<br />&nbsp;&nbsp;a[n-1-i]=t;<br />&nbsp;}<br />}<br />main(){<br />&nbsp;int b[10]={1,2,3,4,5,6,7,8,9,10};<br />&nbsp;int i,s=0;<br />&nbsp;reverse(b,8);<br />&nbsp;for(i=6;i&lt;10;i++) s+=b;<br />&nbsp;printf(&quot;%d\n&quot;,s);<br />}</font></p>
A:22
B:10
C:34
D:30

以下程序有错,错误原因是    main()    { int *p,i;char *q,ch;    p=&amp;i;    q=&amp;ch;    *p=40;    *p=*q;    ……    }
A:p和q的类型不一致,不能执行*p=*q;语句
B:*p中存放的是地址值,因此不能执行*p=40;语句
C:q没有指向具体的存储单元,所以*q没有实际意义
D:q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*p=*q;没有意义,可能会影响后面语句的执行结果

函数 rewind 的作用是
A:使文件位置指针重新返回文件的开始位置
B:将文件位置指针指向文件中所要求的特定位置
C:使文件位置指针指向文件的末尾
D:使文件位置指针自动移至下一个字符位置

阅读以下程序及对程序功能的描述,其中正确的描述是   #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,”r”))==NUL
A:程序完成将磁盘文件的信息在屏幕上显示的功能
B:程序完成将两个磁盘文件合二为一的功能
C:程序完成将一个磁盘文件复制到另一个磁盘文件中
D:程序完成将两个磁盘文件合并并在屏幕上输出

C提供的预处理功能主要有______。
A:宏定义
B:文件包含
C:条件编译
D:异常终止

已知:int x,a,b;下列选项中正确的if语句是______。
A:if(a=b) x++;
B:if(a=&lt;b) x++;
C:if(a-b) x++;
D:if(x) x++;

以下说法不正确的是______。
A:定义函数时,形参的类型说明可以放在函数体内
B:return后边的值不能为表达式
C:如果函数值的类型与返回值表达式的类型不一致,以函数值类型为准
D:如果形参与实参的类型不一致,以实参类型为准

以下叙述中正确的是______。
A:对于double类型数组,不可以直接用数组名对数组进行整体输入或输出
B:当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息
C:可以通过赋初值的方式确定数组元素的个数
D:数组名代表的是数组所占存储区的首地址,其值不可改变

下列关于#include命令的叙述中,正确的是______。
A:一个#include命令中只能指定一个被包含文件
B:一个#include命令中可以指定多个被包含文件
C:一个被包含文件中又可以包含另一个被包含文件
D:#include命令中,文件名可以用双引号或尖括号括起来

puts和gets函数只能输入或输出一个字符串
A:错误
B:正确

主函数和其它函数可以相互调用
A:错误
B:正确

使用printf和scanf函数时,必须添加#include &lt;stdio.h&gt;命令。(  )
A:错误
B:正确

switch语句中,多个case可以共用一组执行语句。(  )
A:错误
B:正确

调用函数只可得到一个返回值,而用宏可以设法得到几个结果。
A:错误
B:正确

数据结构指的是数据的组织形式,数组就是一种数据结构(  )
A:错误
B:正确

C程序中各函数之间既允许直接递归调用也允许间接递归调
A:错误
B:正确

静态外部变量既可以在文本文件中引用,也可以在其它文件引用
A:错误
B:正确

C程序的执行总是从第一个定义的函数开始
A:错误
B:正确

若打开文件的方式为“w”而该文件已经存在,则文件中原有数据被清除。
A:错误
B:正确

提供优质的教育资源

公众号: 超前自学网