计算机二级题库Word文档格式.docx
- 文档编号:18503366
- 上传时间:2022-12-18
- 格式:DOCX
- 页数:89
- 大小:53.14KB
计算机二级题库Word文档格式.docx
《计算机二级题库Word文档格式.docx》由会员分享,可在线阅读,更多相关《计算机二级题库Word文档格式.docx(89页珍藏版)》请在冰豆网上搜索。
将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。
例如,若输入17,则应输出:
4 6 8 9 10 12 14 15 16。
部分源程序在文件PROG1.C中。
请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
voidfun(intm,int*k,intxx[])
{
inti,j,n=0;
for(i=4;
i<
m;
i++)
/*找出大于1小于整数m的非素数*/
{for(j=2;
j<
i;
j++)
if(i%j==0)break;
if(j<
i)xx[n++]=i;
}
*k=n;
/*返回非素数的个数*/
}
二级C_第2套上机题
函数fun的功能是:
统计所有小于等于n(n>2)的素数的个数,素数的个数作为函数值返回。
请在程序的下画线处填入正确的内容并把下画线删除,使程序得出正确的结果。
(1)j=2
(2)i (3)j
数列中,第一项为3,后一项都比前一项的值增5。
计算前n(4<
n<
50)项的累计和。
在累加过程中把那些被4除后余2的当前累加值放入数组中,符合此条件的累加值的个数作为函数值返回。
例如,当n的值为20时,该数列为3、8、13、18、23、28、…、93、98,符合此条件的累加值应为42、126、366、570、1010。
部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构!
(1)inti,j=0,k,sum;
(2)if(sum%4==2)
请编写函数fun,其功能是:
计算并输出下列多项式的值,
S=(1-1/2)+(1/3-1/4)+…+(1/(2n-1)-1/2n)
例如,若主函数从键盘给n输入8后,则输出为S=0.662872。
要求n的值大于1但不大于100。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
doublefun(intn)
{
inti;
doubles=0.0;
for(i=1;
=n;
s=s+(1.0/(2*i-1)-1.0/(2*i));
/*计算S=(1-1/2)+(1/3-1/4)+(1/(2n-1)-1/2n)*/
returns;
二级C_第3套上机题
程序通过定义学生结构体变量,存储学生的学号、姓名和3门课的成绩。
对形参b所指结构体变量中的数据进行修改,并在主函数中输出修改后的数据。
例如,若b所指变量t中的学号、姓名和三门课的成绩依次是:
10002、"
ZhangQi"
、93、85、87,修改后输出t中的数据应为:
10004、"
LiJie"
、93、85、87。
(1)->
sno
(2)->
name (3)&
t
用递归算法求形参a的平方根。
求平方根的迭代公式如下:
例如,a为2时,平方根值为:
1.414214。
部分源程序在文件MODI1.C中,不得增行或删行,也不得更改的程序的结构!
(1)doublefun(doublea,doublex0)
(2)if(fabs(x1-x0)>
=0.00001)
学生的记录由学号和成绩组成。
N名学生的数据已放入主函数中的结构体数组s中,请编写函数fun,其功能是:
把高于等于平均分的学生数据放在b所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。
doublefun(STREC*a,STREC*b,int*n)
inti;
doubleav=0.0;
*n=0;
for(i=0;
N;
av=av+a[i].s;
av=av/N;
/*求平均值*/
i++)
if(av<
=a[i].s)
{b[*n]=a[i];
*n=*n+1;
}/*将高于等于平均分的学生存入b所指存储单元中,并统计人数*/
returnav;
/*返回平均分*/
二级C_第4套上机题
给定程序中,函数fun的功能是:
利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排序,并输出排序结果。
ss所指字符串数组中共有N个字符串,且串长小于M。
(1)i
(2)ps[j] (3)tp
已知一个数列从0项开始的前3项:
0、0、1,以后的各项都是其相邻的前3项之和。
下列给定的程序中,函数fun的功能是:
计算并输出该数列前n项的平方根之和sum。
n的值通过形参传入。
例如,当n=10时,程序的输出结果应为23.197745。
(1)doublefun(intn)
(2)returnsum;
请编写函数fun,它的功能是计算下列级数和,和值由函数值返回。
S=1+x+x2/2!
+x3/3!
+…+xn/n!
例如,当n=10,x=0.3时,函数值为1.349859。
doublefun(doublex,intn)
doubles=1.0,s1=1.0;
for(i=1;
{s1=s1*i;
/*各项中的阶乘*/
s=s+pow(x,i)/s1;
/*按公式求出*/
returns;
二级C_第5套上机题
程序通过定义学生结构体数组,存储若干名学生的学号、姓名和三门课的成绩。
将存放学生数据的结构体数组,按姓名的字典序(从小到大)排序。
请在下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
(1)structstudent
(2)n-1
(3)a[i].name,a[j].name
从p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上,并将该字符前的原字符向后顺序移动。
例如,调用fun函数之前给字符串输入“ABCDeFGH”,调用后字符串中的内容应为“eABCDFGH”。
请改正程序中的错误,使它能得出正确的结果。
(1)q=p+i;
(2)while(q>
p)
学生的记录由学号和成绩组成,N名学生的数据已放入主函数中的结构体数组s中。
请编写函数fun,其功能是:
把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。
例如,输入的分数是60、69,则应当把分数在60~69的学生数据输出,包含60分和69分的学生数据。
主函数中把60放在low中,把69放在heigh中。
intfun(STREC*a,STREC*b,intl,inth)
inti,j=0;
if(a[i].s>
=l&
a[i].s<
=h)
/*将分数高于l,低于h的学生记录存入结构体数组b中*/
b[j++]=a[i];
returnj;
/*返回分数范围内的学生人数*/
二级C_第6套上机题
将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。
例如,s所指的字符串为"
def35adh3kjsdf7"
,执行后结果为"
defadhajsdf3537"
请在程序的下画线处填入正确的内容把下画线删除,使程序得出正确的结果。
(1)j++或j+=1或++j或j=j+1
(2)s[i]=t1[i] (3)j
用冒泡法对6个字符串进行升序排列。
(1)for(j=i+1;
j<
6;
j++)
(2)*(pstr+i)=*(pstr+j);
求ss所指字符串中指定字符的个数,并返回此值。
例如,若输入字符串123412132,输入字符为1,则输出3。
intfun(char*ss,charc)
inti=0;
for(;
*ss!
\0'
;
ss++)
if(*ss==c)
i++;
/*求出ss所指字符串中指定字符的个数*/
returni;
二级C_第7套上机题
下列给定程序中,函数fun的功能是计算下式
直到
,并将计算结果作为函数值返回。
例如,若形参e的值为1e-3,函数的返回值为2.985678。
(1)0
(2)i++或++i或i+=1或i=i+1 (3)2.0*i
将s所指字符串的正序和反序进行连接,形成的新串放在t所指的数组中。
例如,当s所指字符串为:
"
ABCD"
时,t所指字符串中的内容应为:
ABCDDCBA"
(1)voidfun(char*s,char*t)
(2)t[2*d]='
或t[d+i]='
或t[2*d]=0;
或t[d+i]=0;
将s所指字符串中除了下标为奇数同时ASCII值也为奇数的字符之外,其余的所有字符全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。
例如,若s所指字符串的内容为:
ABCDEFG12345"
,其中字符A的ASCII码值为奇数,但所在元素的下标为偶数,因此需要删除;
而字符1的ASCII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其它依此类推。
最后t所指数组中的内容应为:
135"
voidfun(char*s,chart[])
inti,j=0,n;
n=strlen(s);
n;
if(i%2!
=0&
s[i]%2!
=0)
{t[j]=s[i];
/*将下标为奇数同时ASCII码值为奇数的字符放入数组t中*/
j++;
t[j]='
/*最后加上结束标识符*/
二级C_第8套上机题
将形参a所指结构体变量s中的数据进行修改,并把a的地址作为函数值返回主函数,从主函数中输出修改的数据。
例如,a所指变量s中的学号、姓名和三门课的成绩依次是:
10001、"
ZhangSan"
、95、80、88,修改后输出t中的数据应为:
LiSi"
、96、81、89。
(1)structstudent*
(2)a->
score[i] (3)a
从N个字符串中找出最长的串,并将其地址作为函数值返回。
各字符串在主函数中输入,并放入一个字符串数组中。
(1)char*fun(char(*sq)[M])
(2)returnsp;
将a、b中的两个两位正整数合并成一个新的整数放在c中。
合并的方式是:
将a中的十位和个位数依次放在变量c的百位和个位上,b中的十位和个位数依次放在变量c的十位和千位上。
例如,当a=45,b=12,调用该函数后c=2415。
voidfun(inta,intb,long*c)
*c=a%10+(b/10)*10+(a/10)*100+(b%10)*1000;
二级C_第9套上机题
将形参a中的数据进行修改,把修改后的数据作为函数值返回主函数进行输出。
例如,若传给形参a的数据中学号、姓名和三门课的成绩依次是:
、95、80、88,修改后的数据应为:
(1)structstudent
(2)a.name
(3)a.score[i]
假定整数数列中的数不重复,并存放在数组中。
删除数列中值为x的元素。
变量n中存放数列中元素的个数。
(1)if(p==n)return-1;
(2)a[i]=a[i+1];
将两个两位数的正整数a、b合并成一个整数放在c中。
将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。
例如,当a=45,b=12时,调用该函数后,c=1524。
数据文件IN.DAT中的数据不得修改。
请勿动改主函数的main和其它函数中的任何内容,仅在函数fun的花括号填入你编写的若干语句。
*c=a/10+(b%10)*10+(a%10)*100+(b/10)*1000;
二级C_第10套上机题
在形参s所指字符串中的每个数字字符之后插入一个*号。
例如,形参s所指的字符串为"
def3*5*adh3*kjsdf7*"
部分源程序给出如下。
(1)&
(2)0或'
(3)s[j]或*(s+j)
根据整型形参m,计算如下公式的值。
例如,若m的值为5,则应输出1.463611。
(1)for(i=2;
=m;
(2)y+=1.0/(i*i);
或y+=(double)1.0/(i*i)
实现B=A+A'
,即将矩阵A加上A的转置,存放在矩阵B中。
计算结果在main函数中输出。
例如,输入下面的矩阵:
其转置矩阵为:
程序输出:
注意:
请勿请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
voidfun(inta[3][3],intb[3][3])
inti,j;
3;
for(j=0;
b[i][j]=a[i][j]+a[j][i];
/*把矩阵a加上a的转置,存放在矩阵b中*/
二级C_第11套上机题
判断形参s所指字符串是否是"
回文"
(Palindrome),若是,函数返回值为1;
不是,函数返回值为0。
是正读和反读都一样的字符串(不区分大小写字母)。
例如,LEVEL和Level是"
,而LEVLEV不是"
(1)s
(2)-- (3)return0
求出如下分数列的前n项之和。
和值通过函数值返回main函数。
例如,若n=5,则应输出8.391667。
(2)s=s+(double)a/b;
请编写一个函数voidfun(intm,intk,intxx[]),该函数的功能是:
将大于整数m且紧靠m的k个素数存入所指的数组中。
例如,若输入17,5,则应输出19、23、29、31、37。
voidfun(intm,intk,intxx[])
inti,j,n;
for(i=m+1,n=0;
k;
i++)/*找大于m的素数,循环k次,即找出紧靠m的k个素数*/
{for(j=2;
j++)/*判断一个数是否为素数,如果不是,跳出此循环,判断下一个数*/
if(i%j==0)break;
if(j>
=i)/*如果是素数,放入数组xx中*/
xx[n++]=i;
二级C_第12套上机题
统计长整数n的各位上出现数字1、2、3的次数,并用外部(全局)变量c1、c2、c3返回主函数。
例如,当n=123114350时,结果应该为:
c1=3c2=1c3=2。
请勿改动main函数和其他函数中的任何内容,仅在函数fun的横线上填入所编写的若干表达式或语句。
(1)n%10
(2)break (3)break
下列给定程序中,函数fun实现的功能是:
统计一个无符号整数中各位数字值为0的个数,通过形参传回主函数,并把该整数中各位上最大的数字值作为函数值返回。
例如,若输入无符号整数30800,则数字值为0的位的个数为3,各位上数字值最大的是8。
请改正函数fun中的错误,使它能得出正确的结果。
部分源程序在文件MODI1.C中,不要改动main函数,不得增行或删行,也不得更改程序的结构。
(1)if(t==0)
(2)*zero=count;
计算并输出下列多项式的值。
例如,在主函数中从键盘为n输入50后,输出为S=1.718282。
要求n的值在大于1但不大于100之间。
部分源程序在文件PROG1.C中
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 题库