电大c形考册及答案.docx

上传人:叶*** 文档编号:34928929 上传时间:2022-08-19 格式:DOCX 页数:24 大小:36.71KB
返回 下载 相关 举报
电大c形考册及答案.docx_第1页
第1页 / 共24页
电大c形考册及答案.docx_第2页
第2页 / 共24页
点击查看更多>>
资源描述

《电大c形考册及答案.docx》由会员分享,可在线阅读,更多相关《电大c形考册及答案.docx(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、 教化部人才培育形式 改革和开放教化试点 C+语言程序设计形成性考核册学校名称: 学生姓名: 学生学号: 班 级: 中央播送电视高校出版社姓 名: 学 号: 得 分: 老师签名: C+语言程序设计作业1一、填空题1C+语言中的每条根本语句以_;_作为完毕符,每条复合语句以_作为完毕符。2用于输出表达式值的标准输出流对象是_cout_,用于从键盘上为变量输入值的标准输入流对象是_cin_。3当不须要函数返回任何值时,那么应把该函数类型定义为_void_。4执行cout143+18=143+18endl;语句后得到的输出结果为_143+18=161_。5执行cout“nign“chen38endl

2、;语句后得到的输出结果为_nignchen38_。6在每个C+程序中都必需包含有这样一个函数,该函数的函数名为_main_。7C+源程序文件的缺省扩展名为_.cpp_, 由C+源程序文件编译而成的目的文件的缺省扩展名为_,由C+目的文件连接而成的可执行文件的缺省扩展名为_.exe_。8程序运行中须要从键盘上输入多于一个数据时,各数据之间应运用_空格_或_回车_符号作为分隔符。 9十进制数25表示成符合C+语言规那么的八进制和十六进制数分别为_031_ 和_ox19_。10在C+语言中,用转义字符序列_n_或操纵符_endl_表示输出一个换行符。11执行Coutchar(b+2)endl;语句后

3、得到的输出结果为_d_。12执行coutchar(K-3)endl; “语句后得到的输出结果为_H_。13 AZ的Ascll码为6590,当执行int x=H+5;语句后x的值为_77_。14AZ的Ascll码为6590,当执行char ch=16*5+2; coutchendl;语句序列后,得到的输出结果为_R_。15假定一个枚举类型的定义为enum RAxa,xb,xc,xd;,那么执行cout“xc=xcendl;语句得到的输出结果为_xc=2_。16假定一个枚举类型的定义为enum RBab,ac=3,ad,ae x=ad;,那么x的值为_4_。17char、short和int类型的大

4、小分别为_1B_、_2B_和_4B_。18float和double类型的大小分别为_4B_和_8B_。int_和_flaot_。20假设须要定义一个标识符常量,并且使C+可以进展类型检查,那么应在定义语句的开始运用保存字_#define_。21运用const语句定义一个标识符常量时,那么必需对它同时进展_初始化_。22执行int x=45,y=16;coutx/y x%yz的相反表达式为_x+y!Z或_x+y5&x10的相反表达式为_x=10_。34逻辑表达式ab| b=5的相反表达式为_a=b &b!=5_。35假设x=15,y=40,那么 xy 和 x=y的逻辑值分别为_0_和_1_。36

5、假定x=5,那么执行a=(x 10: 4*2);语句后a的值为_10_。37假定a=5,那么条件表达式a=0 10:20”的值为_20_。38;执行typedef int DataType;语句后,在运用int定义整型变量的地方都可以使用 DataType 来定义整型变量。39设x和y均为bool量,那么x&y为真的条件是_xture,yture_。40设x和y均为bool量,那么x| y为假的条件是_xfalse,yfalse_。二、写出以下程序运行后的输出结果 1# include void SB(char ch) switch(ch) case A:case a: Cout“well!;

6、break; Case B: case b: Cout“good! ; break; Case C:case c: cout“pass!;break; default: cout“bad!;break; good!Pass!Bad!Well! void main() char a1=b,a2=C,a3=f; SB(a1);SB(a2);SB(a3);SB(A); coutendl; 2#include #include double SD (int a,int b,char op) double x; switch(op) case +: x=double(a)+b; break; case

7、-: x=double(a)-b; break; case *: x=doubel(a)*b; break; case /: if(b) x=double(a)/b; else exit(1); break; default:exit(1); return x; void main( ) int x=20,y=12; coutSD(x,y,-) ; coutSD(x,y,*) ; coutSD(x+y,y-2,/)endl; 3#include void main() int s=0; for(int i=l; i6;i+) S+=i*i; cout“s=sendl; s=55 4# incl

8、ude void main() int s=0; for(int i=1;i+) if(s50)break; if(i%3=0)s+=i; cout“i,s=i“,sendl; i,s=19,63 5# include void main() int s1=0,s2=0; for(int i=0; i10;i+) if(i%2) s1+=i; else s2+=i; couts1 s2endl; 25 20 6# include void main() int n=10,y=1; while(n-) y+; +y; cout“y*y=y*yendl; y*y=441 三、写出以下每个函数的功能

9、 1# include int SA(int a,int b) if(ab) return 1; else if(a=b) return 0; 返回值 1 ab else return -1; 0 a=b -1 a=b&a=c) return a; if(b=a&b=c) return b; if(c=a&c=b) return c; 返回值int a,b,c中最大值 3. int SE(int n) /n为大于等于1的整数 int x; cinx; if(n=1) return x; int m=x; 输入x当n=1返回地址x while(-n) 否那么求输入x值之和放到m中并 cinx;

10、m+=x; 返回m处 return m ; 4 double SF(double x,ini n) /n为大于等于0的整数 double p=1,s=1; for(int i=1;i=n;i+) p*=X; s+=p/(i+1); return s; S=1+x/2+x*x/2+x*x*x/3+xn/n+1 5 # include bool SG(int x) /x为大于等于2的整数 int a=int(sqrt(x);/取x的平方根 int i=2; while(i=a) if(x%i=0)break; 推断x是否为质数是返回1,否返回0 i+; if(ix; while(x!=-100)

11、输入n个实数计算它的平均值以-100作完毕 n+; y+=x; cinx; if(n=0) return y; else return y/n; 姓 名: 学 号: 得 分: 老师签名: C+语言程序设计作业2 一、填空题1假定一个一维数组的定义为char *a5;,那么该数组所含元素的个数为_5_ 所占存储空间的字节数为_5_.2假定一个二维数组的定义为int a46;,那么该数组所含元素的个数为_24_, 所占存储空间的字节数为_96_ 。3假定一个二维数组的定义为char a88;,那么该数组所含元素的个数为_ 64_,所占存储空间的字节数为_64_。4. 执行typdef float

12、ABC10;语句把ABC定义为具有10个单精度元素的_数组_。5. 在函数外定义的变量称为_全局_ _变量,假设没有被初始化那么系统隐含对它赋初值0_。6函数中的形参变量的初值由 调用函数调用 该函数时获得。7函数调用时,实参向形参的传送分为_传值_ 和_传址_两种传送方式。8. 变量分为全局和部分两种, 部分 _变量没有赋初值时,其值是不确定的。二、给出以下程序运行后的输出结果 1# include void main() int a10=12,39,26,41,55,63, 72,40,83,95; int i0=0,i1=0,i2=0; for(int i=0;i10; i+) swit

13、ch (ai%3) case 0:i0+; break; case 1: i1+; break; case 2:i2+; coutiO il i2endl; 4 2 4 2 . # include # include void main( ) char a5= “student,worker,cadre,apple,peasant ; char *pl,*p2; pl=p2=a0; for(int i=0;i0) pl=ai; if(strcmp(ai,p2)0) p2=ai; coutpl p2endl; work apple 3 . # include void main( ) int a

14、8=36,73,48,14,55,40,32,66; int bl,b2; bl=b2=a0; for(int i=l; ibl ) if(blb2) b2=bl ; bl=ai ; coutbl b2endl; 73 36 4 . # include void main( ) char a=“aabcdaabacabfgacd; int il=0,i2=0,i=0; while (ai) if(ai=a) il+ ; if(ai=b) i2+ ; i+; 7 3 couti1 i2endl; 5 . # include void nain( ) char a=“abcdabcabdaeaf;

15、 int b5=0 , i=0; while(ai) switch(ai) case a: b0+; break; case b: bl+; break; case c: b2+; break; case d: b3+; break; default: b4+; i+; for(i=0;i5;i+) coutbi coutendl ; 5 3 2 2 2 6. # include void main() int a10=76,83,54,62,40,75,80,92,77,84; int b4=60,70,90,101; int c4=0; for(int i=0;i=bj) j+; cj+;

16、 for(i=0; i4; i+) coutci ; coutendl; 2 2 0 1 7. # include void main( ) int a34=1,2,7,8,5,6,11,12,24,10,3,4; int m=a00; int ii=0,jj=0; for(int i=0;i3;i+ ) for(int j=0;jm) m=aij; ii=i; jj=j; coutii jj aiijjendl; 2 0 248 . # includevoid main() int a=10,b=20; coutabendl; a*=4 int b=a+35; coutabendl; 10

17、20 40 75coutabendl; 40 75三、写出以下每个函数的功能 1int WC(int a,int n,int k) int c=0; for(int i=0;i=k)c+; 统计数值a中元素大于等于k的个数 return c; 2# include void WA(int a,int n) for(int i=0;in-1;i+) int k=i ; for(int j=i+1;jn;j+) 对数组a中n个元素从大到小排序 if(ajak)k=j;int x=ai; ai=ak; ak=x; 3# include template int WG(TT a,TT b) if(ab

18、) return 1; else if(a=b)return 0; else return -1; 用函数模板比较a和b的大小 4# include template Type WD(Type a,int n) Type m=a0; for(int i=0; im) m=ai; 用函数模板对数组中n个元素取最大值return m; 5templatee void WE(Type a,Type b,int n) for(int i=0;in ;i+) bi=ai* 2; 用函数模板把数组a中n个元素x2,再逐一传到b数组中 姓 名: 学 号: 得 分: 老师签名: C+语言程序设计作业3一、填空

19、题1假定P所指对象的值为28,p+1所指对象的值为62,那么*p+的值为_28_。2假定p所指对象的值为28,P+l所指对象的值为62,那么*+p的值为_62_。3假定p所指对象值为25,p+l所指对象的值为50,那么执行(*p)+;语句后,p所指对象的值为_25_。4假定p所指对象的值为25,p+1所指对象的值为50,那么执行 *(p+);语句后,p所指对象的值为_50_。5假定a是一个指针数组,那么a+i所指对象的地址比a地址大_i*sizeof(a0)_ 字节。6假定a是一个一维数组,那么ai的指针访问方式为_*(a+i)_ _。7假定a是一个二维数组,那么aij的指针访问方式为_*(a

20、i+j)_。8假定a是一个一维数组,那么ai对应的存储地址(以字节为单位)为 &a0+i*sizeof(a00)_。9假定一个二维数组为aMN,那么aij对应的存储地址(以字节为单位)为_&a+(i*4j)*sizeof(a00)。10假定一个二维数组为aMN,那么ai的地址值(以字节为单位)为&a00+(i*aj)*sizeof(a00)。11假定p是一个指向float型数据的指针,那么p+l所指数据的地址比p所指数据的地址大4_字节。12假定a为一个字符数组名,那么元素a8的字节地址为_&a+8_。13假定a为一个整型数组名,那么元素a4的字节地址为_&a+16_。14假定一个构造类型的定

21、义为struct A int a,b;short c; A * d;,那么该类型的大小为10_字节。A * d含义:允许用A的指针类型。指针占4字节15假定一个构造类型的定义为struct B int a8;char *b;,那么该类型的大小为36节。16假定一个构造类型的定义为struct D int a ; union int b;double c; D*d3; 那么该类型的大小为_12 _字节。17假定要动态支配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,那么运用的语句为_worker*r=new(workern_。18假定要访问一个构造x中的由a指针成员所指向的

22、对象,那么表示方法为_&a 对象。19假定要访问一个构造指针p所指对象中的b指针成员所指的对象,那么表示方法为 _ p b 对象。 二、给出以下程序运行后的输出结果 1# include void main() int a8=7,9,ll,13,3,8,15,17; int *p=a ; for(int i=0; i8;i+) coutsetw(5)*p+; if(i+1)4=0)coutendl; 7 9 11 13 3 8 15 17 2# inelude void main() int a5=3,6,15,7,20; int *p=a; for(int i=0;i5;i+) coutse

23、tw(5)*p+; coutendl; for(i=0;i5;i+) coutsetw(5)*-p;coutendl; 3 6 15 7 20 20 7 15 6 3 3# include void main() int a8=4,8,12,16,20,24;28,32; int *p=a ; do cout*p; p+=3; while(pa+8);coutendl; 4 28 4# include void main() int x=20,y=40,*p ; p=&x; cout*p; *p=x+10; p=y; cout*pendl;*p=y+20; coutxyendl; 20 40

24、30 60 5、# include int LA(int * a,int n) int s=0; for(int i=0; in ;i+) s+=ai; return s; void main() int a=5,10,15,20,25,30; int b=LA(a,5); int c=LA(a+3,2); coutbcb+2*cendl ; 75 45 165 6# include void LC(int a,int b) int x=a; a=b;b=X;coutabendl; void main() int x=15,y=36;LC(x,y);coutxyendl; 36 15 15 3

25、6 7# include void LF(int x,int y) X=X+y ; y=X+y;cout“x=“x“,y=“yendl; void main() int x=5,y=8; cout “x= “ x“,y= “y endl; x=5 y=8 LF(x,y) ; x=13 y=21 cout “x=“x“,y=“yendl; x=13 y=21 8 . # include void LG(int * & a,int & m) a= new intm ; int * p=a; for(int i=0; im; i+) *p+=2*i+l; void main( ) int *p,h=

26、5; LG(p, n) ; for(int i=0; in; i+) cout pi ; coutendl; “ delete P ; 1 3 5 7 9 9 . # include void LH(int *a,int n) int * p=a+n-l; while(ap) int x= *a; *a=*p; *p=x; a+;p-; void main() int * d=new int5 ; int i; for(i=0; i5; i+) di=2*i+3; coutsetw(5)di ; cout endl ; LH(d,5); for(i=0; i5; i+) coutsetw(5)

27、di ; coutendl; 3 5 7 9 11 delete d; 11 9 7 5 3 1O . # include struct Worker char name15 ; int age; float pay; ; void main( ) Worker x= “weirong, 55 , 640 ; weirong 55 640 Worker y, *p; weirong 60 630 y=x; p=&x; couty.name y.age y.payendl; coutname age+5 pay-10endl; 11 . # include # include struct Worker char name 15 ; int age; float pay; ; void main( ) Worker x; char *t=“liouting

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 初中资料

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁