中石大C语言程序设计第3次在线作业答案Word格式.docx
- 文档编号:18295104
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:9
- 大小:18.64KB
中石大C语言程序设计第3次在线作业答案Word格式.docx
《中石大C语言程序设计第3次在线作业答案Word格式.docx》由会员分享,可在线阅读,更多相关《中石大C语言程序设计第3次在线作业答案Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
5.(2.5分)C语言规定,函数返回值的类型是由()。
A、A.return语句中的表达式类型所决定
B、B.调用该函数时的主调函数类型所决定
C、C.调用该函数时系统临时决定
D、D.在定义该函数时所指定的函数类型决定
D此题得分:
6.(2.5分)在C语言程序中,以下描述正确的是()。
A、A.函数的定义可以嵌套,但函数的调用不可以嵌套
B、B.函数的定义不可以嵌套,但函数的调用可以嵌套
C、C.函数的定义和函数的调用均不可以嵌套
D、D.函数的定义和函数的调用均可以嵌套
7.(2.5分)以下叙述中正确的是()。
A、A.全局变量的作用域一定比局部变量的作用域范围大
B、B.静态(static)类别变量的生存期贯穿于整个程序的运行期间
C、C.函数的形参都属于全局变量
D、D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值
8.(2.5分)以下程序的运行结果是()。
#include<
stdio_h>
voidsub(ints[],inty){staticintt=3;
y=s[t];
t--;
}main(){inta[]={1,2,3,4},i,x=0;
for(i=0;
i<
4;
i++){sub(a,x);
printf("%d",x);
}printf("\n");
}
A、A.1234
B、B.432l
C、C.0000
D、D.4444
C此题得分:
9.(2.5分)以下程序的运行结果是:
main(){intw=5;
fun(w);
}fun(intk){if(k>
O)fun(k-1);
printf("
%d"
,k);
A、A.5432l
B、B.012345
C、C.12345
D、D.543210
10.(2.5分)当调用函数时,实参是一个数组名,则向函数传送的是()
A、A.数组的长度
B、B.数组的首地址
C、C.数组每一个元素的地址
D、D.数组每个元素中的值
11.(2.5分)在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()。
A、A.地址传递
B、B.单向值传递
C、C.由实参传给形,再由形参传回实参
D、D.传递方式由用户指定
12.(2.5分)定义一个结构体变量时系统分配给它的内存是()。
A、A.各成员所需要内存量的总和
B、B.结构体中第一个成员所需内存量
C、C.成员中占内存量最大者所需的容量
D、D.结构中最后一个成员所需内存量
13.(2.5分)设有如下定义:
structsk{inta;
floatb;
}data,*p;
若有p=&
data;
,则对data中的a域的正确引用是()。
A、A.(*p).data.a
B、B.(*p).a
C、C.p->
data.a
14.(2.5分)当定义一个共用体变量时系统分配给它的内存是()。
B、B.共用体中第一个成员所需内存量
D、D.共用体中最后一个成员所需内存量
15.(2.5分)设有如下枚举类型定义:
enumlanguage{Basic=3,Assembly,Ada=100,COBOL,Fortran};
枚举量Fortran的值()。
A、A.4
B、B.7
C、C.102
D、D.103
16.(2.5分)若x=5,y=5,则x&
y的结果是()。
A、A.0
B、B.2
C、C.3
D、D.5
17.(2.5分)在位运算中,操作数每左移两位,则结果相当于()。
A、A.操作数乘以2
B、B.操作数除以2
C、C.操作数除以4
D、D.操作数乘以4
18.(2.5分)C语言可以处理的文件类型是()。
A、A.文本文件和数据文件
B、B.文本文件和二进制文件
C、C.数据文件和二进制文件
D、D.数据代码文件
19.(2.5分)在执行fopen函数时,若执行不成功,则函数的返回值是()。
A、A.TRUE
B、B.–1
C、C.1
D、D.NULL
20.(2.5分)在C程序中,可把整型数以二进制形式存放到文件中的函数是()。
A、A.fprintf函数
B、B.fread函数
C、C.fwrite函数
D、D.fputc函数
判断题(共20道题)
21.(2.5分)下面程序段运行时输出结果是:
0,01,3voidmain(){inti;
for(i=0;
2;
i++)add();
}add(){intx=0;
staticinty=0;
%d,%d"
x,y);
x++;
y=y+3;
正确
错误
错误此题得分:
22.(2.5分)下面程序段运行时输出结果是:
38.5intx;
voidmain(){x=7;
s();
%d\n"
x);
}voids(){x=5*x+x/2;
23.(2.5分)下面程序段运行时输出结果是2intf(intn){ints;
if(n==1||n==2)s=1;
elses=n-f(n-1);
returns;
}voidmain(){printf(“%d”,f(3));
}
正确此题得分:
24.(2.5分)下面程序段运行时输出结果是29fun(intx,inty,intz){z=x*x+y*y;
}main(){inta=31;
fun(5,2,a);
printf("%d",a);
25.(2.5分)编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述的结果。
判断以下程序是否正确:
stdio.h>
string.h>
voidfltj(charstr[],inta[]){intll,i;
ll=strlen(str);
for(i=0;
ll;
i++){if(str[i]>
='
a'
&
str[i]<
z'
||str[i]>
A'
Z'
)a[0]++;
elseif(str[i]>
0'
9'
)a[1]++;
elseif(str[i]=='
'
)a[2]++;
elsea[3]++;
}}voidmain(){staticcharstr[60];
staticinta[4]={0,0,0,0};
gets(str);
fltj(str,a);
%schar:
%ddigit:
%dspace:
%dother:
%d"
str,a[0],a[1],a[2],a[3]);
26.(2.5分)打印出1-100之间的全部素数(要求编写两个函数,一个用于判断一个数是否是素数,另一个是main函数,在main函数中调用该函数实现打印1-100之间的全部素数)。
#include<
intprime(intm){inti;
for(i=2;
m;
i++)if(m%i==0)return0;
return1;
}voidmain(){inti;
100;
i++)if(prime(i))printf("
%d"
i);
27.(2.5分)对10个数进行从小到大排序。
要求排序在函数sort内完成,用起泡算法。
main函数内进行数据输入、调用排序函数sort、并输出排序后的数据。
voidsort(inta[],intn){inti,j,k;
for(i=0;
i<
n-1;
i++)for(j=0;
j<
n-1-i;
j++)if(a[j]>
a[j+1]){k=a[j];
a[j]=a[j+1];
a[j+1]=k;
}}voidmain(){inta[10],i,j,k;
请任意输入10个整数:
\n"
);
for(i=0;
10;
i++)scanf("
&
a[i]);
\n"
);
sort(a,10);
按由小到大的顺序输出10个整数是:
10;
i++)printf(“%d,"
,a[i]);
28.(2.5分)
fun函数用来统计各分数段的分数个数,其中所有分数存放在数组a中,各分数段的分数个数存放在数组b中,85-100分的个数存放到b[0],60-84分的个数存放到b[1],60以下的个数存放到b[2]。
main函数中输入所有的分数值,调用fun函数,打印各分数段的分数个数。
#include
#defineN20
voidfun(inta[],intb[],intn)
{inti;
for(i=0;
iif(a[i]>
=85&
&
a[i]<
=100)b[0]++;
elseif(a[i]>
=60&
a[i]<
=84)b[1]++;
elseif(a[i]<
60&
a[i]>
=0)b[2]++;
return;
voidmain()
{inta[N],b[3],i;
fun(a,b,N);
for(i=0;
3;
i++)printf(“%d\n”,b[i]);
29.(2.5分)在定义函数时,函数名后面的括号中的变量名称为实参。
30.(2.5分)在调用一个函数的过程中又出现直接或间接调用该函数本身,称为函数的递归调用。
31.(2.5分)在函数内定义的变量是局部变量,在函数外定义的变量是外部变量。
外部变量是全局变量。
32.(2.5分)函数的参数不仅可以是整型、字符型、浮点型等数据,还可以是指针类型。
它的作用是将一个变量的地址传送到另一个函数中。
33.(2.5分)结构体的成员不能是结构体变量。
34.(2.5分)一个结构体变量的指针就是该变量所占内存段的起始地址。
35.(2.5分)“按位或”运算指两个运算数相应的二进制位中只要有一个为1,则该位结果值为1,比如0|0=0,1|0=1。
36.(2.5分)异或运算指两个运算数相应的二进制位相同则结果为0,相异则结果为1,比如0∧1=1,0∧0=0。
37.(2.5分)若fp是指某文件的指针,且已读到文件的末尾,则表达式feof(fp)的返回值是NULL
38.(2.5分)C语言库函数fgets(str,n,fp)的功能是从文件fp中读取n个字符串存入str指向的内存。
39.(2.5分)函数rewind的作用是使位置指针自动移至下一个字符位置。
40.(2.5分)C语言中以w+方式打开文件后,可执行的文件操作是可任意读写。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中石大 语言程序设计 在线 作业 答案