计算机二级c++上机考试题库完整_第1页
计算机二级c++上机考试题库完整_第2页
计算机二级c++上机考试题库完整_第3页
计算机二级c++上机考试题库完整_第4页
计算机二级c++上机考试题库完整_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

可编辑版/所属语言:C++试卷总分:200分共有题型:5种一、填空共20题〔共计20分第1题〔1.0分假设变量a,b均为整型,表达式<a=5,b=2,a>b?a++:b++,a+b>的值是[1].答案:=======<答案1>=======8第2题〔1.0分若有以下数组a,数组元素:a[0]~a[9],其值为941282107513该数组的元素中,数值最大的元素的下标值是[1].答案:=======<答案1>=======2第3题〔1.0分下面程序段的输出结果是[1].inta=12;a=a&0377;pritnf<"%o\n",a>;答案:=======<答案1>=======14第4题〔1.0分若输入字符串:abcde<回车>,则以下while循环体将执行[1]次.While<<ch=getchar<>>=='e'>printf<"*">;答案:=======<答案1>=======0第5题〔1.0分将数组a的首地址赋给指针变量p的语句是[1].答案:=======<答案1>=======p=a;第6题〔1.0分C语言把文件看作是一个[1]的序列.答案:=======<答案1>=======字符=========或=========字节第7题〔1.0分静态变量和外部变量的初始化是在[1]阶段完成的,而自动变量的赋值是在[2]时进行的.答案:=======<答案1>=======编译=======<答案2>=======函数调用第8题〔1.0分若有定义:inta[3][2]={2,4,6,8,10,12};,则*<a[1]+1>的值是[1].答案:=======<答案1>=======8第9题〔1.0分C语言中,数组名是一个不可变的[1]量,不能对它进行加减和赋值运算.答案:======<答案1>=======地址第10题〔1.0分intx=2;z=x++-1;则x的值为[1].答案:=======<答案1>=======3第11题〔1.0分若所用变量都已正确定义,请填写以下程序段的输出结果[1].for<i=1;i<=5;i++>;printf<"OK\n">;答案:=======<答案1>=======OK第12题〔1.0分feof<fp>函数用来判断文件是否结束,如果遇到文件结束,函数值为[1],否则为[2].答案:=======<答案1>=======非0值======<答案2>=======0第13题〔1.0分如果函数不要求带回值,可用[1]来定义函数返回值为空.答案:=======<答案1>=======void第14题〔1.0分调用fopen函数打开一文本文件,在"使用方式"这一项中,为输出而打开需填入[1].答案:=======<答案1>=======w=========或=========w+第15题〔1.0分顺序结构存储方法是把逻辑上相邻的结点存储在物理位置[1]的存储单元中。答案:=======<答案1>=======相邻第16题〔1.0分一个类可以从直接或间接的祖先中继承所有属性和方法。采用这个方法提高了软件的[1]。答案:=======<答案1>=======可重用性第17题〔1.0分C++中封装性、继承性和[1]是面向对象程序设计的三个主要性质。答案:=======<答案1>=======多态性第18题〔1.0分C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取[1]方式。答案:=======<答案1>=======传地址第19题〔1.0分设i,j,k均为int型变量,则执行完for<i=0,j=10;j<=j;i++,j-->k=i+j;语句后,K的值为[1]。答案:=======<答案1>=======10第20题〔1.0分对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为[1]。答案:=======<答案1>=======45二、判断共20题〔共计20分第1题〔1.0分用fopen<"file","r+">;打开的文件"file"可以进行修改。答案:Y第2题〔1.0分inti=20;switch<i/10>{case2:printf<"A">;case1:printf<"B">;}的输出结果为A。答案:N第3题〔1.0分若有定义和语句:inta;charc;floatf;scanf<"%d,%c,%f",&a,&c,&f>;若通过键盘输入:10,A,12.5,则a=10,c='A',f=12.5.答案:Y第4题〔1.0分char*p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。答案:N第5题〔1.0分x*=y+8等价于x=x*<y+8>。答案:Y第6题〔1.0分如果有一个字符串,其中第十个字符为'\n',则此字符串的有效字符为9个。答案:N第7题〔1.0分通过return语句,函数可以带回一个或一个以上的返回值。答案:N第8题〔1.0分如果想使一个数组中全部元素的值为0,可以写成inta[10]={0*10};答案:N第9题〔1.0分一个include命令可以指定多个被包含的文件。答案:N第10题〔1.0分C程序中有调用关系的所有函数必须放在同一个源程序文件中。答案:N第11题〔1.0分进行宏定义时,宏名必须使用大写字母表示。答案:N第12题〔1.0分共同体变量所占的内存长度等于最长的成员的长度。答案:Y第13题〔1.0分在C语言中,此定义和语句是合法的:enumaa{a=5,b,c}bb;bb=<enumaa>5;答案:Y第14题〔1.0分7&3+12的值是15。答案:N第15题〔1.0分类有两个特殊的成员函数构造函数和虚函数答案:N第16题〔1.0分抽象类不仅可用做派生其他类的基类,也可以用于直接创建对象实例。答案:N第17题〔1.0分静态函数可声明为虚函数。答案:N第18题〔1.0分如果一个函数在其函数体内直接或间接的调用了自己,该函数称为递归函数。答案:Y第19题〔1.0分类中提供了三种访问控制权:公有、私有、保护三种类型。答案:Y第20题〔1.0分所谓继承就是利用已有的数据类型定义出新的数据类型。答案:Y三、单选共60题〔共计60分第1题〔1.0分fscanf函数的正确调用形式是〔。A:fscanf<fp,格式字符串,输出表列>;B:fscanf<格式字符串,输出表列,fp>;C:fscanf<格式字符串,文件指针,输出表列>;D:fscanf<文件指针,格式字符串,输入表列>;答案:D第2题〔1.0分C语言的if语句嵌套时,if与else的配对关系是〔。A:每个else总是与它上面的最近的if配对B:每个else总是与最外层的if配对C:每个else与if的配对是任意的D:每个else总是与它上面的if配对答案:A第3题〔1.0分C语言中,文件由〔。A:记录组成B:由数据行组成C:由数据块组成D:由字符<字节>序列组成答案:D第4题〔1.0分设C语言中,int类型数据占2个字节,则short类型数据占〔。A:1个字节B:2个字节C:4个字节D:8个字节答案:B第5题〔1.0分以下不符合C语言语法的赋值语句是〔。A:j++;B:j=j=5;C:k=2*4,k*4;D:y=float<j>;答案:D第6题〔1.0分C语言允许函数类型缺省定义,此时函数值隐含的类型是〔。A:floatB:intC:longD:double答案:B第7题〔1.0分int<*p>[6];它的含义为〔。A:具有6个元素的一维数组B:定义了一个指向具有6个元素的一维数组的指针变量C:指向整型指针变量D:指向6个整数中的一个的地址答案:B第8题〔1.0分经下列语句定义后,sizeof<x>,sizeof<y>,sizeof<a>,sizeof<b>在微机上的值分别为〔。charx=65;floaty=7.3;inta=100;doubleb=4.5;A:2,2,2,4B:1,2,2,4C:1,4,2,8D:2,4,2,8答案:C第9题〔1.0分char*match<charc>是〔。A:函数定义的头部B:函数预说明C:函数调用D:指针变量说明答案:A第10题〔1.0分若有说明:inta[3][4]={0};则下面正确的叙述是〔。A:只有元素a[0][0]可得到初值0B:此说明语句不正确C:数组a中各元素都可得到初值,但其值不一定为0D:数组a中每个元素均可得到初值0答案:D第11题〔1.0分当说明一个结构体变量时系统分配给它的内存是〔。A:各成员所需内存量的总和B:结构中第一个成员所需内存量C:成员中占内存量最大者所需的容量D:结构中最后一个成员所需内存量答案:A第12题〔1.0分以下不是无限循环的语句为〔。A:for<y=0,x=1;x>++y;x=i++>i=x;B:for<;;x++=i>;C:while<1>{x++;}D:for<i=10;;i-->sum+=i;答案:A第13题〔1.0分利用fseek函数可以实现的操作是〔。A:改变文件的位置指针B:文件的顺序读写C:文件的随机读写D:以上答案均正确答案:D第14题〔1.0分C语言中while和do-while循环的主要区别是〔。A:do-while的循环体至少无条件执行一次B:while的循环控制条件比do-while的循环控制条件更严格C:do-while允许从外部转到循环体内D:do-while的循环体不能是复合语句答案:A第15题〔1.0分sizeof<float>是〔。A:一种函数调用B:一个不合法的表达式C:一个整型表达式D:一个浮点表达式答案:C第16题〔1.0分以下程序的运行结果是〔。main<>{intn;for<n=1;n<=10;n++>{if<n%3==0>continue;printf<"%d",n>;}}A:12457810B:369C:12D:1234567890答案:A第17题〔1.0分以下不正确的叙述是〔。A:在C程序中所用的变量必须先定义后使用B:程序中,APH和aph是两个不同的变量C:若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b中的值不变D:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值答案:D第18题〔1.0分下列程序的输出结果为〔。main<>{intm=7,n=4;floata=38.4,b=6.4,x;x=m/2+n*a/b+1/2;printf<"%f\n",x>;}A:27.000000B:27.500000C:28.000000D:28.500000答案:A第19题〔1.0分凡是函数中未指定存储类别的局部变量,其隐含的存储类别为〔。A:自动<auto>B:静态<static>C:外部<extern>D:寄存器<register>答案:A第20题〔1.0分下列定义数组的语句中正确的是〔。A:#definesize10charstr1[size],str2[size+2];B:charstr[];C:intnum['10'];D:intn=5;inta[n][n+2];答案:A第21题〔1.0分以下描述中,正确的是〔。A:预处理是指完成宏替换和文件包含中指定的文件的调用B:预处理指令只能位于C源文件的开始C:C源程序中凡是行首以#标识的控制行都是预处理指令D:预处理就是完成C编译程序对C源程序第一遍扫描,为编译词法和语法分析作准备答案:C第22题〔1.0分位字段数据的单位是〔位。A:十六进制B:八进制C:二进制D:十进制答案:C第23题〔1.0分以下的选择中,正确的赋值语句是〔。A:a=1,b=2B:j++C:a=b=5;D:y=int<x>答案:C第24题〔1.0分若有int*p=<int*>malloc<sizeof<int>>;则向内存申请到内存空间存入整数123的语句为〔。A:scanf<"%d",p>;B:scanf<"%d",&p>;C:scanf<"%d",*p>;D:scanf<"%d",**p>;答案:A第25题〔1.0分已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'\101'是〔。A:字符AB:字符aC:字符eD:非法的常量答案:A第26题〔1.0分以下叙述中正确的是〔。A:C程序中注释部分可以出现在程序中任意合适的地方B:花括号"{"和"}"只能作为函数体的定界符C:构成C程序的基本单位是函数,所有函数名都可以由用户命名D:分号是C语句之间的分隔符,不是语句的一部分答案:A第27题〔1.0分假定int类型变量占用两个字节,其有定义:intx[10]={0,2,4};,则数组x在内存中所占字节数是〔。A:3B:6C:10D:20答案:D第28题〔1.0分在C语言中,形参的缺省存储类是〔。A:autoB:registerC:staticD:extern答案:A第29题〔1.0分已知字母a的ASCII十进制代码为97,则执行下列语句后的输出结果为〔。chara='a';a--;printf<"%d,%c\n",a+'2'-'0',a+'3'-'0'>;A:b,cB:a--运算不合法,故有语法错C:98,cD:格式描述和输出项不匹配,输出无定值答案:C第30题〔1.0分不仅可将C源程序存在磁盘上,还可将数据按数据类型分别以什么的形式存在磁盘上〔。A:内存B:缓冲区C:文件D:寄存器答案:C第31题〔1.0分表达式18/4*sqrt<4.0>/8值的数据类型为〔。A:intB:floatC:doubleD:不确定答案:C第32题〔1.0分以下能对二维数组a进行正确初始化的语句是〔。A:inta[2][]={{1,0,1},{5,2,3}};B:inta[][3]={{1,2,3},{4,5,6}};C:inta[2][4]={{1,2,3},{4,5},{6}};D:inta[][3]={{1,0,1}{},{1,1}};答案:B第33题〔1.0分函数rewind的作用是〔。A:使位置指针重新返回文件的开头B:将位置指针指向文件中所要求的特定位置C:使位置指针指向文件的末尾D:使位置指针自动移至下一个字符位置答案:A第34题〔1.0分在C语言中,要求运算数必须是整型或字符型的运算符是〔。A:&&B:&C:!D:||答案:B第35题〔1.0分inta=1,b=2,c=3;if<a>c>b=a;a=c;c=b;则c的值为〔。A:1B:2C:3D:不一定答案:B第36题〔1.0分对for<表达式1;;表达式3>可理解为〔。A:for<表达式1;0;表达式3>B:for<表达式1;1;表达式3>C:for<表达式1;表达式1;表达式3>D:for<表达式1;表达式3;表达式3>答案:B第37题〔1.0分a,b为整型变量,二者均不为0,以下关系表达式中恒成立的是〔。A:a*b/a*b==1B:a/b*b/a==1C:a/b*b+a%b==aD:a/b*b==a答案:C第38题〔1.0分chara1[]="abc",a2[80]="1234";将a1串连接到a2串后面的语句是〔。A:strcat<a2,a1>;B:strcpy<a2,a1>;C:strcat<a1,a2>;D:strcpy<a1,a2>;答案:A第39题〔1.0分设char*s="\ta\017bc";则指针变量s指向的字符串所占的字节数是〔。A:9B:5C:6D:7答案:C第40题〔1.0分以下描述中正确的是〔。A:由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句B:do-while循环由do开始,用while结束,在while<表达式>后面不能写分号C:在do-while循环体中,一定要有能使while后面表达式的值变为零<"假">的操作D:do-while循环中,根据情况可以省略while答案:C第41题〔1.0分对于void类型函数,调用时不可作为〔。A:自定义函数体中的语句B:循环体里的语句C:if语句的成分语句D:表达式答案:D第42题〔1.0分下列语句中,不正确的是〔。A:staticchara[2]={1,2};B:staticinta[2]={'1','2'};C:staticchara[2]={'1','2','3'};D:staticchara[2]={'1'};答案:C第43题〔1.0分设有定义intx;floaty;,则10+x+y值的数据类型是A:intB:doubleC:floatD:不确定答案:C第44题〔1.0分在类的定义中,用于为对象分配内存空间,对类的数据成员进行初始化并执行其他内部管理操作的函数是A:友元函数B:虚函数C:构造函数D:析构函数答案:C第45题〔1.0分下面对静态数据成员的描述中,正确的是A:静态数据成员可以在类体内进行初始化B:静态数据成员不可以被类的对象调用C:静态数据成员不能受private控制符的作用D:静态数据成员可以直接用类名调用答案:D第46题〔1.0分下面对友元函数描述正确的是A:友元函数的实现必须在类的内部定义B:友元函数是类的成员函数C:友元函数破坏了类的封装性和隐藏性D:友元函数不能访问类的私有成员答案:C第47题〔1.0分下面叙述不正确的是A:基类的保护成员在派生类中仍然是保护成员B:基类的保护成员在公有派生类中仍然是保护成员C:基类的保护成员在私有派生类中是私有成员D:对基类成员的访问必须是无二义性答案:A第48题〔1.0分在C++语言程序中,对象之间的相互通信通过A:继承实现B:调用成员函数实现C:封装实现D:函数重载实现答案:B第49题〔1.0分下列关于虚基类的描述中,错误的是A:设置虚基类的目的是为了消除二义性B:虚基类的构造函数在非虚基类之后调用C:若同一层包含多个虚基类,这些基类的构造函数按照它们的次序调用D:若虚基类由非基类派生而来,则仍然先调用基类构造函数,再用派生类的构造函数答案:B第50题〔1.0分下列运算符中,在C++语言中不能重载的是A:*B:>=C:::D:/答案:C第51题〔1.0分继承机制的作用是A:信息隐藏B:数据封装C:定义新类D:数据抽象答案:C第52题〔1.0分C++语言对C语言进行了很多改进,C++语言相对于C语言的最根本的变化是A:增加了一些新的运算符B:允许函数重载,并允许设置缺省参数C:规定函数说明符必须用原型D:引进了类和对象的概念答案:D第53题〔1.0分若x、i、j、k都是int型变量,则计算表达式x=<i=4,j=16,k=32>后,x的值为<>.A:4B:16C:32D:52答案:C第54题〔1.0分下列关于开关语句的描述中,错误的是<>.A:开关语句中,case子句的个数是不受限制的B:开关语句中,case子句的语句序列中一定要有break语句C:开关语句中,default子句可以省略D:开关语句中,右花括号具有退出开关语句的功能答案:B第55题〔1.0分下列while循环语句的循环次数是<>.while<inti=0>i--;A:0B:1C:2D:无限答案:A第56题〔1.0分下列运算符中优先级最高的是<>.A:?:B:%C:-=D:&&答案:B第57题〔1.0分采用函数重载的目的在于<>.A:实现共享B:减少空间C:使用方便,提高可靠性D:提高速度答案:C第58题〔1.0分使用磁盘文件,要包含_____头文件A:iostreamB:fstreamC:iomanipD:complex答案:B第59题〔1.0分<>是析构函数的特征.A:一个类中只能定义一个析构函数B:析构函数与类名不同C:析构函数的定义只能在类体内D:析构函数可以有一个或多个参数答案:A第60题〔1.0分下列关于字符数组的描述中,错误的是<>.A:字符数组中的每一个元素都是字符B:字符数组可以使用初始值表进行初始化C:字符数组可以存放字符串D:字符数组就是字符串答案:D四、程序填空共6题〔共计40分第1题〔5.0分/*[程序填空]功能:产生10个[30,90]区间上的随机整数,然后对其用选择法进行由小到大的排序。*/#include<stdio.h>main<>{/***********SPACE***********/[?];inti,j,k;inta[10];for<i=0;i<10;i++>a[i]=random<61>+30;for<i=0;i<9;i++>{/***********SPACE***********/[?];for<j=i+1;j<10;j++>/***********SPACE***********/if<[?]>k=j;if<k!=i>{t=a[k];a[k]=a[i];a[i]=t;}}/***********SPACE***********/for<[?]>printf<"%5d",a[i]>;printf<"\n">;}答案:=======<答案1>=======intt=======<答案2>=======k=i=======<答案3>=======a[k]>a[j]=========或=========a[j]<a[k]=======<答案4>=======i=0;i<10;i++=========或=========i=0;10>i;i++=========或=========i=0;i<=9;i+=1=========或=========i=0;9>=i;i++=========或=========i=0;i<10;i+=1=========或=========i=0;10>i;i+=1=========或=========i=0;i<=9;i++=========或=========i=0;9>=i;i+=1=========或=========i=0;i<10;++i=========或=========i=0;10>i;++i=========或=========i=0;9>=i;++i=========或=========i=0;i<=9;++i第2题〔5.0分/*[程序填空]功能:求一个二维数组中每行的最大值和每行的和。*/#include<stdio.h>main<>{inta[5][5],b[5],c[5],i,j,k,s=0;for<i=0;i<5;i++>for<j=0;j<5;j++>a[i][j]=random<40>+20;for<i=0;i<5;i++>{/***********SPACE***********/k=a[i][0];[?];for<j=0;j<5;j++>{/***********SPACE***********/if<k<a[i][j]>[?];s=s+a[i][j];}b[i]=k;/***********SPACE***********/[?];}for<i=0;i<5;i++>{for<j=0;j<5;j++>/***********SPACE***********/printf<"%5d",[?]>;printf<"%5d%5d",b[i],c[i]>;printf<"\n">;}}答案:=======<答案1>=======s=0=======<答案2>=======k=a[i][j]=======<答案3>=======c[i]=s=======<答案4>=======a[i][j]第3题〔5.0分/*[程序填空]功能:计算一元二次方程的根。*/#include<stdio.h>/***********SPACE***********/#include[?]main<>{doublex1,x2,imagpart;floata,b,c,disc,realpart;scanf<"%f%f%f",&a,&b,&c>;printf<"theequation">;/***********SPACE***********/if<[?]<=1e-6>printf<"isnotquadratic\n">;elsedisc=b*b-4*a*c;if<fabs<disc><=1e-6>printf<"hastwoequalroots:%-8.4f\n",-b/<2*a>>;/***********SPACE***********/elseif<[?]>{x1=<-b+sqrt<disc>>/<2*a>;x2=<-b-sqrt<disc>>/<2*a>;printf<"hasdistinctrealroots:%8.4fand%.4f\n",x1,x2>;}else{realpart=-b/<2*a>;imagpart=sqrt<-disc>/<2*a>;printf<"hascomplexroots:\n">;printf<"%8.4f=%.4fi\n",realpart,imagpart>;printf<"%8.4f-%.4fi\n",realpart,imagpart>;}}答案:=======<答案1>=======<math.h>=======<答案2>=======fabs<a>=======<答案3>=======fabs<disc>>1e-6=========或=========1e-6<fabs<disc>第4题〔5.0分/*[程序填空]功能:分别求出一批非零整数中的偶数、奇数的平均值,用零作为终止标记。*/#include<stdio.h>main<>{intx,i=0,j=0;floats1=0,s2=0,av1,av2;scanf<"%d",&x>;/***********SPACE***********/while<[?]>{if<x%2==0>{s1=s1+x;i++;}/***********SPACE***********/[?]{s2=s2+x;j++;}/***********SPACE***********/[?];}if<i!=0>av1=s1/i;elseav1=0;if<j!=0>/***********SPACE***********/[?];elseav2=0;printf<"oushujunzhi:%7.2f,jishujunzhi:%7.2f\n",av1,av2>;}答案:=======<答案1>=======x!=0=========或=========x=======<答案2>=======else=========或=========elseif<x%2==1>=========或=========elseif<x%2!=0>=========或=========if<x%2>=======<答案3>=======scanf<"%d",&x>=======<答案4>=======av2=s2/j第5题〔10.0分/*[程序填空]功能:以下程序的功能是输入字符串,再输入一个字符,将字符串中与输入字符相同的字符删除。*/#include<iostream.h>#include<stdio.h>#include<string.h>voidfun<chara[],charc>{inti,j;/***********SPACE***********/for<i=j=0;[?];i++>if<a[i]!=c>a[j++]=a[i];/***********SPACE***********/[?];}voidmain<>{chara[20],cc;/***********SPACE***********/[?];cc=getchar<>;/***********SPACE***********/[?];cout<<a;}答案:=======<答案1>=======a[i]!='\0'=========或=========a[i]!=0=========或=========i<strlen<a>=========或=========a[i]=======<答案2>=======a[j]='\0'=========或=========a[j]=0=======<答案3>=======cin>>a=========或=========printf<"%s",a>=========或=========gets<a> =========或=========cin.getline<a,20>=======<答案4>=======fun<a,cc>第6题〔10.0分/*[程序填空]功能:对任意10个字符串按升序排序,每个串的长度小于20个字符。*/#include<iostream.h>#include<string.h>#include<stdio.h>voidmain<>{/***********SPACE***********/chartemp[20],[?];inti,j,l;for<i=0;i<10;i++>gets<word[i]>;for<i=0;i<9;i++>{l=i;/***********SPACE***********/for<[?]>if<strcmp<word[l],word[j]>>0>/***********SPACE***********/[?];strcpy<temp,word[i]>;/***********SPACE***********/[?];strcpy<word[l],temp>;}for<i=0;i<10;i++>cout<<word[i];}答案:=======<答案1>=======word[10][20]=======<答案2>=======j=i+1;j<10;j++=========或=========j=i;j<10;j++=========或=========j=i;j<=9;j++=========或=========j=i+1;j<=9;j++=======<答案3>=======l=j=======<答案4>=======strcpy<word[i],word[l]>五、程序设计共6题〔共计60分第1题〔10.0分/*[程序设计]功能:求一组数中大于平均值的数的个数。例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。*/#include<stdio.h>voidwwjt<>;intfun<inta[],intn>{/**********Program**********//**********End**********/}main<>{inta[10]={1,3,6,9,4,23,35,67,12,88};inty;y=fun<a,10>;printf<"y=%d\n",y>;wwjt<>;}voidwwjt<>{FILE*IN,*OUT;intiIN[10],iOUT,i,j;IN=fopen<"in.dat","r">;if<IN==NULL>{printf<"PleaseVerifyTheCurrerntDir..itMayBeChanged">;}OUT=fopen<"out.dat","w">;if<OUT==NULL>{printf<"PleaseVerifyTheCurrentDir..itMayBeChanged">;}for<j=0;j<10;j++>{for<i=0;i<10;i++>fscanf<IN,"%d",&iIN[i]>;iOUT=fun<iIN,10>;}fprintf<OUT,"%d\n",iOUT>;fclose<IN>;fclose<OUT>;}答案:inti,k=0;floats=0,ave;for<i=0;i<n;i++>s+=a[i];ave=s/n;printf<"%f",ave>;for<i=0;i<n;i++>if<a[i]>ave>k++;returnk;第2题〔10.0分/*[程序设计]功能:输入2个学生3门课的成绩,计算学生成绩平均分,课程平均分和最高分.例如:输入2名学生3门课的成绩分别为92,87,68,56,92,84则学生1平均分:82.33学生2平均分:77.33课程1平均分:74.00课程2平均分:89.50课程3平均分:76.00最高分为:92*/#include<stdio.h>voidwwjt<>;/*定义全局变量*//*学生成绩平均分*/floatStuAgv[2];/*课程平均分*/floatCouAgv[3];/*所有学生的所有课程最高分*/floatMax=0;/*说明:需要在下面函数中把题干要求中的结果赋值到上面定义一变量中*/voidfun<floatscore[2][3]>{/**********Program**********//**********End**********/}voidmain<>{inti,j;floatscore[2][3];printf<"输入学生的成绩:">;for<i=0;i<2;i++>for<j=0;j<3;j++>scanf<"%f",&score[i][j]>;printf<"\n输出学生的成绩:">;for<i=0;i<2;i++>{for<j=0;j<3;j++>printf<"%.2f",score[i][j]>;printf<"\n">;}fun<score>;for<i=0;i<2;i++>printf<"第%d个学生的平均成绩是:%0.2f\n",i+1,StuAgv[i]>;for<j=0;j<3;j++>printf<"第%d门课的平均成绩是:%0.2f\n",j+1,CouAgv[j]>;printf<"所有分数中的最高分为:%.2f\n",Max>;wwjt<>;}voidwwjt<>{FILE*IN,*OUT;floatiIN[2][3];inti,j;IN=fopen<"in.dat","r">;if<IN==NULL>{printf<"PleaseVerifyTheCurrerntDir..itMayBeChanged">;}OUT=fopen<"out.dat","w">;if<OUT==NULL>{printf<"PleaseVerifyTheCurrentDir..itMayBeChanged">;}for<i=0;i<2;i++>for<j=0;j<3;j++>fscanf<IN,"%f",&iIN[i][j]>;fun<iIN>;for<i=0;i<2;i++>fprintf<OUT,"%.2f\n",StuAgv[i]>;for<j=0;j<3;j++>fprintf<OUT,"%.2f\n",CouAgv[j]>;fprintf<OUT,"%.2f\n",Max>;fclose<IN>;fclose<OUT>;return;}答案: inti,j; floatsum;for<i=0;i<2;i++>/*计算第i个学生平均分*/ { sum=0;for<j=0;j<3;j++>sum=sum+score[i][j];StuAgv[i]=sum/3; }for<j=0;j<3;j++>/*计算第j门课的平均分*/ { sum=0;for<i=0;i<2;i++>sum=sum+score[i][j];CouAgv[j]=sum/2; }Max=score[0][0];for<i=0;i<2;i++>for<j=0;j<3;j++>if<Max<=score[i][j]> { Max=score[i][j];}return;第3题〔10.0分/*[程序设计]功能:计算出k以内最大的10个能被13或17整除的自然数之和。〔k〈3000。*/#include<stdio.h>#include"conio.h"voidwwjt<>;intfun<intk>{/**********Program**********//**********End**********/}main<>{intm;printf<"Enterm:">;scanf<"%d",&m>;printf<"\nTheresultis%d\n",fun<m>>;wwjt<>;}voidwwjt<>{FILE*IN,*OUT;ints;intt;into;IN=fopen<"in.dat","r">;if<IN==NULL>{printf<"ReadFILEError">;}OUT=fopen<"out.dat","w">;if<OUT==NULL>{printf<"WriteFILEError">;}for<s=1;s<=5;s++>{

温馨提示

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

最新文档

评论

0/150

提交评论