C语言程序设计形考任务3

上传人:Sc****h 文档编号:134565004 上传时间:2022-08-13 格式:DOC 页数:13 大小:239.50KB
收藏 版权申诉 举报 下载
C语言程序设计形考任务3_第1页
第1页 / 共13页
C语言程序设计形考任务3_第2页
第2页 / 共13页
C语言程序设计形考任务3_第3页
第3页 / 共13页
资源描述:

《C语言程序设计形考任务3》由会员分享,可在线阅读,更多相关《C语言程序设计形考任务3(13页珍藏版)》请在装配图网上搜索。

1、一、选择题(共30 分,每小题 2 分)题目 1在下面的函数声明语句中,存在着语法错误的是()。选择一项:a. AA(int a, int b)b. AA(int, int)c. AA(int a; int b)d. AA(int a, int)正确答案是: AA(int a; int b)题目 2在下面的保留字中,不能作为函数的返回值类型的是()。选择一项:a. voidb. intc. enumd. long正确答案是: enum题目 3假定 p 是一个指向 float型数据的指针,则 p+1 所指数据的地址比p 所指数据的地址增加的字节数为 () 。选择一项:a. 1b. 2c. 4d.

2、 8正确答案是: 4题目 4假定 a 为一个数组名,在下面的表达式中,存在语法错误的是() 。选择一项:a. aib. *a+c. *ad. *(a+1)正确答案是: *a+题目 5用 calloc函数创建具有 10 个整型元素的一维数组的正确语句是()。选择一项:a. int *p=calloc(10,2);b. int *p=calloc(10);c. int *p=calloc(10,4);d. int *p=malloc(10)正确答案是: int *p=calloc(10,4);题目 6假定变量 m定义为“ int m=7; ”,则下面正确的语句为()。选择一项:a. int p=&

3、m;b. int *p=&m;c. int &p=*m;d. int *p=m;正确答案是: int *p=&m;题目 7假定 k 是一个 double 类型的变量,则定义变量p 的正确语句为()。选择一项:a. double p=&k;b. int *p=&k;c. double &p=*k;d. char *p=Thank you!;正确答案是: char *p=Thank you!;题目 8若有语句为 “inta10,x, *pa=a; ”,要把数组a 中下标为3 的元素值赋给x,则不正确的语句为()。选择一项:a. x=pa3;b. x=*(a+3);c. x=a3;d. x=*pa+

4、3;正确答案是: x=*pa+3;题目 9假定有语句为 “intb10;int*pb; ”,则下面不正确的赋值语句为 ()。选择一项:a. pb=b;b. pb=&b0;c. pb=b+2;d. pb=b5;正确答案是: pb=b5;题目 10已知“ int *p=malloc(100);”,要释放 p 所指向的动态内存,正确的语句为()。选择一项:a. free(p);b. free p;c. free(*p);d. freep;正确答案是: free(p);题目 11在程序的一个文件中定义的函数,若要在另一个文件中调用, 则必须在这另一个文件中给出该函数的()。选择一项:a. 原型语句b.

5、 参数表c. 函数名d. 返回类型正确答案是:原型语句题目 12假定一个函数定义为“ static int f1(int x,int y)return x+y;”,该函数名称为()。选择一项:a. staticb. intc. f1d. return正确答案是: f1题目 13假定一个函数的原型语句为“int ff(int* x);”,一个整型数组为a10 ,则下面函数调用表达式不正确的是()。选择一项:a. ff(a)b. ff(a0)c. ff(a+3)d. ff(&a0)正确答案是: ff(a0)题目 14假定一个函数的数组参数说明为char a,与之等价的指针参数说明为()。 1B选择

6、一项:a. char ab. char* ac. char& ad. char*a正确答案是: char* a题目 15假定一个函数的二维数组参数说明为char wN ,与之等价的指针参数说明为()。选择一项:a. char (*w)Nb. char *wNc. char (*w)Nd. char*a正确答案是: char (*w)N二、判断题(共 30 分,每小题 2 分。叙述正确则回答“是”,否则回答“否”)题目 16在 C 语言中,一个函数由函数头和函数体组成。选择一项:对错正确的答案是“对”。题目 17在函数模块之外定义的变量称为全局变量,若没有被初始化则系统隐含对它赋初值 0。选择一

7、项:对错正确的答案是“对”。题目 18如果一个函数只允许同一程序文件中的函数调用, 则不应在该函数定义的开始前加上保留字 static 。选择一项:对错正确的答案是“错”。题目 19如果在一个函数体中又出现对自身函数的调用,此种函数调用被称为递归调用。选择一项:对错正确的答案是“对”。题目 20调用系统函数时,要先使用 #include 命令包含该系统函数的原型语句所在的系统头文件。选择一项:对错正确的答案是“对”。题目 21函数形参变量不属于局部变量。选择一项:对错正确的答案是“错”。题目 22假定 p 所指对象的值为25,p+1 所指对象的值为 46,则 *p+的值为 46。选择一项:对错

8、正确的答案是“错”。题目 23假定 p 所指对象的值为25,p+1 所指对象的值为 46,则 *+p 的值为 25。选择一项:对错正确的答案是“错”。题目 24假定 p 所指对象的值为 25,p+1 所指对象的值为 46,则执行 *(p+) 运算后, p 所指对象的值为 46。选择一项:对错正确的答案是“对”。题目 25假定 a 是一个指针数组,则a+i 所指对象的地址比a 地址大 4*i 字节。选择一项:对错正确的答案是“对”。题目 26若要把一个整型指针p 转换为字符指针,则采用的强制转换表达式为(char*)p。选择一项:对错正确的答案是“对”。题目 27假定一个数据对象为int* 类型

9、,则指向该对象的指针类型仍为int* 类型。选择一项:对错正确的答案是“错”。题目 28假定 x 为一个简单变量,则 &x 表示 x 的地址。选择一项:对错正确的答案是“对”。题目 29若 p 指向 x,则 *p 与 x 的值不同。选择一项:对错正确的答案是“错”。题目 30NULL是一个符号常量,通常作为空指针值,它代表的值为0。选择一项:对错正确的答案是“对”。信息文本三、写出下列每个程序运行后的输出结果(共20 分,每小题 4 分)题目 31#includeint WF(int x, int y) x=x+y;y=x+y;return x+y;void main() int x=5, y

10、=7;int z=WF(x,y);printf(z=%dn,z);z=31题目 32#include#includevoid fun(char ss);void main( ) char s15=0123456789;fun(s);printf(%sn,s);void fun(char ss) int i, n=strlen(ss) ;for(i=0; in/2; i+) char c=ssi;ssi=ssn-1-i;ssn-1-i=c;9876543210题目 33#includeint Count(int a, int n, int x)int i,c=0;for(i=0;ix) c+;r

11、eturn c;void main() int a8=20,15,32,47,24,36,28,70;int b=Count(a,8,30);printf(b=%dn,b);B=4题目 34#includevoid main() int a8=3,5,7,9,2,3,4,8;int s=0,*p;for(p=a;pa+8;) s+=*p+;printf(s=%dn,s);s=41题目 35#includeint LA(int *a, int n, int x) int i,s=0;for(i=0;in;i+)if(aix) s+=ai;return s;void main() int a8=5

12、,10,15,8,12,3,9,20;int b=LA(a,5,10);int c=LA(a+2,6,10);printf(%d %dn,b,c);13 20四、写出下列每个函数的功能(共20 分,每小题 4 分)题目 36double SF(double x, int n) /n为正整数double p=1,s=1;int i;for(i=1;i=n;i+) p*=x;s+=p;return s;计算出 1+x+x2+.+x n 的值并返回。题目 37int SG(int x) /x为大于等于 2 的整数int i=2;while(i*i=x) if(x%i=0) break;i+;if(i

13、*i=x) return 0; else return 1;判断 x 是否为一个质数(素数),若是则返回1,否则返回 0。题目 38int WB(int a, int n, int x) for(int i=0;in;i+)if(ai=x) return 1;return 0;从数组 an 中顺序查找值为x 的元素,若查找成功则返回1,否则返回 0。题目 39int fun(int m, int n) int c=0;static int b=2;if(mb | nb) return m*n;else if(m%b=0 & n%b=0) c=b; returnc*fun(m/b,n/b);else b+; return fun(m,n);一个递归函数过程,求出两个自然数m和 n 的最小公倍数。题目 40int LK(double a, int n) double s=0;int i,m=0;for(i=0;in;i+) s+=ai;s/=n;for(i=0;i=s) m+;return m;求出并返回数组a 的 n 个元素中大于等于平均值的元素个数。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!