计算机二级题库.docx
- 文档编号:16460686
- 上传时间:2023-07-13
- 格式:DOCX
- 页数:115
- 大小:67.89KB
计算机二级题库.docx
《计算机二级题库.docx》由会员分享,可在线阅读,更多相关《计算机二级题库.docx(115页珍藏版)》请在冰点文库上搜索。
计算机二级题库
1◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
【填空】下列给定程序中,函数fun的功能是:
计算如下公式前n项的和并作为函数值返回。
例如,当形参n的值为10时,函数返回值为9.612558。
【答案】【1】0【2】n 【3】(t*t)
【改错】下列给定程序中函数fun的功能是:
统计substr所指的子符串在str所指的字符串中出现的次数。
例如,若字符串为aaas1kaaas,子字符串为as,则应输出2。
【答案】
【1】for(i=0;str[i];i++)
【2】if(substr[k+1]==′\0′)
【编程】编写函数fun,其功能是:
根据以下公式求π的值(要求精度0.0005,即某项小于0.0005时停止迭代)。
程序运行后,若输入精度0.0005,则程序应输出为3.14…。
【答案】
Doublefun(doubleeps)
{
doubles=1.0,s1=1.0;
intn=1;
while(s1>=eps)
{ s1=s1]s=s+s1;
n++;
}
return2}
2◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
【填空】下列给定程序中,函数fun的功能是:
将形参n中,各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新数,作为函数值返回。
例如,输入一个整数27638496,函数返回值为64862。
【答案】【1】0【2】10*x【3】n/10
【改错】下列给定程序中函数fun的功能是:
将长整型数中各位上为奇数的数依次取出,构成一个新数放在t中。
高位仍在高位,低位仍在低位。
例如,当s中的数为87653142时,t中的数为7531。
【答案】【1】*t=0;【2】if(d%2!
=0)
【编程】编写函数fun,其功能是:
实现两个字符串的连接(不要使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串的后面。
例如,分别输入下面两个字符串:
FirstString—SecondString程序输出:
FirstString--SecondString
【答案】
voidfun(charp1[],charp2[])
{
inti,j;
for(i=0;p1[i]!
=′\0′;i++);
for(j=0;p2[j]!
=′\0′;j++)
p1[i++]=p2[j];
p1[i]=′\0′;
}
3◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
【填空】下列给定程序中函数fun的功能是:
求ss所指字符串数组中长度最短的字符串所在的行下标,作为函数值返回,并把其串长放在形参n所指的变量中。
ss所指字符串数组中共有M个字符串,且串长 【答案】【1】M 【2】< 【3】k 【改错】下列给定程序中函数fun的功能是: 将tt所指字符串中的小写字母全部改为对应的大写字母,其它字符不变。 例如,若输入"Ab,cD",则输出"AB,CD"。 【答案】 【1】if((tt[i]>=′a′)&&(tt[i]<=′z′)【2】tt[i]-=32; 【编程】编写函数fun,其功能是: 将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k返回。 例如,若输入17,则应输出: 4 6 8 9 10 12 14 15 16。 【答案】 voidfun(intm,int*k,intxx[]) { inti,j,n=0; for(i=4;i { for(j=2;j if(i%j==0)break; if(j } *k=n; } 4◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 将s所指字符串中的所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的次序。 例如,s所指的字符串为def35adh3kjsdf7,执行后结果为defadhajsdf3537。 【答案】【1】j++【2】s[i]=t1[i] 【3】j 【改错】下列给定程序中函数fun的功能是: 用冒泡法对6个字符串进行升序排列。 【答案】 【1】for(j=i+1;j<6;j++) 【2】*(pstr+i)=*(pstr+j); 【编程】编写函数fun,其功能是: 求ss所指字符串中指定字符的个数,并返回此值。 例如,若输入字符串123412132,输入字符为1,则输出3。 【答案】 intfun(char*ss,charc) { inti=0; for(;*ss! =′\0′;ss++) if(*ss==c) i++; returni; } 5◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。 函数fun的功能是: 把形参x的值放入一个新结点并插入链表中,使插入后各结点数据域中的数据仍保持递增有序。 【答案】【1】x【2】p【3】s 【改错】下列给定程序中函数fun的功能是: 计算正整数num各位上的数字之积。 例如,若输入252,则输出应该是20。 若输入202,则输出应该是0。 【答案】【1】longk=1;【2】num/=10; 【编程】编写函数fun,其功能是: 计算n门课程的平均分,结果作为函数值返回。 例如: 若有5门课程的成绩是: 90.5,72,80,61.5,55,则函数的值为: 71.80。 【答案】 floatfun(float*a,intn) { floatav=0.0; inti; for(i=0;i av=av+a[i]; return(av/n); } 6◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中,函数fun的功能是: 把形参s所指字符串中下标为奇数的字符右移到下一个奇数位置,最右边被移出字符串的字符绕回放到第一个奇数位置,下标为偶数的字符不动(注: 字符串的长度大于等于2)。 例如,形参s所指字符串为abcdefgh,执行结果为ahcbedgf。 【答案】【1】1【1】s[k]【1】c 【改错】下列给定程序中fun函数的功能是: 求表达式s=aa…aa-…-aaa-aa-a(此处aa…aa表示n个a,a和n的值在1至9之间)例如,a=3,n=6,则以上表达式为: s=333333-33333-3333-333-33-3其值是296298。 a和n是fun函数的形参,表达式的值作为函数值传回main函数。 【答案】 【1】longs=0,t=0;【1】t=t/10; 【编程】编写函数voidfun(char*tt,intpp[]),统计在tt所指的字符串中'a'到'z'26个小写字母各自出现的次数,并依次放在pp所指的数组中。 例如,当输入字符串abcdefgabcdeabc后,程序的输出结果应该是: 33322110000000000000000000 【答案】 voidfun(char*tt,intpp[]) { inti; for(i=0;i<26;i++) pp[i]=0; if(*tt>=′a′&&*tt<=′z′) pp[*tt-′a′]++; } 7◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中已建立了一个带头结点的单向链表,在main函数中将多次调用fun函数,每调用一次,输出链表尾部结点中的数据,并释放该结点,使链表缩短。 【答案】 【1】next【2】t->data 【3】t 【改错】下列给定程序中函数fun的功能是: 将字符串中的字符逆序输出,但不改变字符串中的内容。 例如,若字符串为abcd,则应输出: dcba。 【答案】【1】voidfun(char*a) 【2】printf("%c",*a); 【编程】编写函数fun,其功能是: 比较字符串的长度,(不得使用C语言提供的求字符串长度的函数),函数返回较长的字符串。 若两个字符长度相同,则返回第一个字符串。 例如,输入beijing 【答案】 char*fun(char*s,char*t) { inti,j; for(i=0;s[i]! =′\0′;i++); for(j=0;t[j]! =′\0′;j++); if(i>=j) returns; else returnt; } 8◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序的功能是: 调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回1,失败时返回0。 在复制的过程中,把复制的内容输出到屏幕。 主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。 【答案】【1】"r"【2】fs 【3】ft 【改错】下列给定程序中函数fun的功能是: 将长整型数中各位上为偶数的数依次取出,构成一个新数放在t中。 高位仍在高位,低位仍在低位。 例如,当s中的数为87653142时,t中的数: 8642。 【答案】【1】if(d%2==0) 【2】s/=10; 【编程】编写函数fun,其功能是: 将两个两位数的正整数a、b合并成一个整数放在c中。 合并的方式是: 将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。 例如,当a=45,b=12时,调用该函数后,c=5142。 【答案】 voidfun(inta,intb,long*c) { *c=b%10+(a/10)*10+(b/10)*100+(a%10)*1000; } 9◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 有N×N矩阵,根据给定的m(m<=N)值,将每行元素中的值均向右移动m个位置,左位置为0。 例如,N=3,m=2,有下列矩阵 1 2 3 4 5 6 7 8 9 程序执行结果为 0 0 1 0 0 4 0 0 7 【答案】【1】i++ 【2】m 【3】m 【改错】下列给定程序中函数fun的功能是: 计算并输出high以内最大的10个素数的和。 high的值由主函数传给fun函数。 例如,若high的值为100,则函数的值为732。 【答案】 【1】while((high>=2)&&(n<10)) 【2】yes=0;break; 【编程】编写函数fun,其功能是: 利用下面的简单迭代方法求方程cos(x)-x=0的一个实根。 xn+1=cos(xn) 迭代步骤如下: (1)取x1初值为0.0; (2)x0=x1,将x1的值赋给x0; (3)x1=cos(x0),求出一个新的x1; (4)若x0-x1的绝对值小于0.000001,执行步聚(5),否则执行步聚 (2); (5)所求x1就是方程cos(x)-x=0的一个实根,作为函数值返回。 程序将输出结果Root=0.739086。 【答案】 floatfun() { floatx1=0.0,x0; do { x0=x1; x1=cos(x0); } while(fabs(x0-x1)>=1e-6); returnx1; } 10◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序的功能是: 从键盘输入若干行字符串(每行不超过80个字符),写入文件myfile4.txt中,用-1作字符串输入结束的标志,然后将文件的内容显示在屏幕上。 文件的读写分别由函数ReadText和WriteText实现。 【答案】【1】*fw【2】str【3】str 【改错】下列给定程序中函数fun的功能是: 从低位开始依次取出长整型变量s中奇数位上的数,构成一个新数存放在t中。 高位仍在高位,低位仍在低位。 例如,当s中的数为7654321时,t中的数为7531。 【答案】 【1】voidfun(longs,long*t) 【2】s1=s1*10 【编程】编写函数fun,其功能是: 将两个两位数的正整数a、b合并成一个整数放在c中。 合并的方式是: 将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。 例如,当a=45,b=12时,调用该函数后,c=1524。 【答案】 voidfun(inta,intb,long*c) { *c=a/10+(b%10)*10+(a%10)*100+(b/10)*1000; } 11◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 有N×N矩阵,将矩阵的外围元素做顺时针旋转。 操作顺序是: 首先将第一行元素的值存入临时数组r,然后使第一列成为第一行,最后一行成为第一列,最后一列成为最后一行,再使临时数组中的元素成为最后一列。 例如,若N=3,有下列矩阵: 1 2 3 4 5 6 7 8 9 操作后应为: 7 4 1 8 5 2 9 6 3 【答案】【1】0【2】j--【3】j 【改错】下列给定程序中函数fun的功能是: 计算S=f(-n)+f(-n+1)+…+f(0)+f (1)+f (2)+…+f(n)的值。 例如,当n的值为5时,函数值应为10.407143。 f(x)函数定义如下: f(x)=(x+1)/(x-2) x>0且x≠2 f(x)0 x=0或x=2 (x-1)/(x-2) x<0 【答案】【1】doublef(doublex) 【2】returns; 【编程】编写函数fun,其功能是计算: s作为函数值返回。 在C语言中可调用log(n)函数求ln(n)。 log函数的引用说明为: doublelog(doublex)。 例如,若m的值为20,则fun函数值为6.506583。 【答案】 doublefun(intm) { inti; doubles=0.0; for(i=1;i<=m;i++) s=s+log(i); returnsqrt(s); } 12◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中已建立了一个带头结点的单向链表,链表中的各结点按数据域递增有序链接。 函数fun的功能是: 删除链表中数据域值相同的结点,使之只保留一个。 【答案】【1】q【2】next【3】next 【改错】下列给定程序中函数fun的功能是: 用选择法对数组中的n个元素进行升序排列。 【答案】【1】p=j;【2】p=i; 【编程】编写函数fun,其功能是: 将1到m之间(含m)能被7或11整除的所有整数放在数组a中,并通过n返回这些数的个数。 例如,若传给m的值为50,则程序输出: 7 11 14 21 22 28 33 35 42 44 49 【答案】 voidfun(intm,int*a,int*n) { inti,j=0; for(i=1;i<=m;i++) if(i%7==0||i%11==0) a[j++]=i; *n=j; } 13◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是计算下式 直到,并将计算结果作为函数值返回。 例如,若形参e的值为1e-3,函数的返回值为2.985678。 【答案】【1】0【2】i++【3】2.0*i 【改错】下列给定程序中函数fun的功能是: 将s所指字符串的正序和反序进行连接,形成的新串放在t所指的数组中。 例如,当s所指字符串为: "ABCD"时,t所指字符串中的内容应为: "ABCDDCBA"。 【答案】 【1】voidfun(char*s,char*t)【2】t[d+i]=0; 【编程】编写函数fun,其功能是: 将s所指字符串中除了下标为奇数同时ASCII值也为奇数的字符之外,其余的所有字符全部删除,串中剩余字符所形成的一个新串放在t所指的数组中。 例如,若s所指字符串的内容为: "ABCDEFG12345",其中字符A的ASCII码值为奇数,但所在元素的下标为偶数,因此需要删除;而字符1的ASCII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其它依此类推。 最后t所指数组中的内容应为: "135"。 【答案】 voidfun(char*s,chart[]) { inti,j=0,n; n=strlen(s); for(i=0;i if(i%2! =0&&s[i]%2! =0) { t[j]=s[i]; j++; } t[j]=′\0′; } 14◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 在形参s所指字符串中的每个数字字符之后插入一个*号。 例如,形参s所指的字符串为def35adh3kjsdf7,执行后结果为def3] 【答案】【1】&&【2】0【3】s[j] 【改错】下列给定程序中函数fun的功能是: 根据整型形参m,计算如下公式的值。 例如,若m的值为5,则应输出1.463611。 【答案】 【1】for(i=2;i<=m;i++) 【2】y+=1.0/(i*i); 【编程】编写函数fun,其功能是: 实现B=A+A',即将矩阵A加上A的转置,存放在矩阵B中。 计算结果在main函数中输出。 例如,输入下面的矩阵: 其转置矩阵为: 程序输出: 2 6 10 6 10 14 10 14 18 【答案】 voidfun(inta[3][3],intb[3][3]) { inti,j; for(i=0;i<3;i++) for(j=0;j<3;j++) b[i][j]=a[i][j]+a[j][i]; } 15◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 将形参s所指字符串中下标为奇数的字符取出,并按ASCII码大小递增排序,将排序后的字符存入形参p所指字符数组中,形成一个新串。 例如,形参s所指的字符为: baawrskjghzlicda,执行后p所指字符数组中的字符串应为: aachjlsw。 【答案】【1】t=i【2】I【3】0 【改错】下列给定程序中函数fun的功能是: 用下面的公式求π的近似值,直到最后一项的绝对值小于指定的数(参数num)为止。 例如,程序运行后,输入0.0001,则程序输出3.1414。 【答案】【1】while(fabs(t)>=num) 【2】t=s/n; 【编程】编写函数fun,其功能是: 删除一个字符串中指定下标的字符。 其中,a指向原字符串,删除指定字符后的字符串存放在b所指的数组中,n中存指定的下标。 例如,输入一个字符串world,然后输入3,则调用该函数后的结果为word。 【答案】 voidfun(chara(),charb(),intn) { inti,k=0; for(i=0;a[i]! =′\0′;i++) if(i! =n) b[k++]=a[i]; b[k]=′\0′; } 16◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 将形参s所指字符串中的所有字母字符顺序前移,其他字符顺序后移,处理后将新字符串的首地址作为函数值返回。 例如,若s所指字符串为: asd123fgh543df,处理后新字符串为: asdfghdf123543。 【答案】【1】s[i]【2】k【3】0 【改错】下列给定程序中函数fun的功能是: 将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指字符串,所形成的新串放在w所指的数组中。 要求t1和t2所指字符串的长度相同。 例如,当s所指字符串中的内容为: "abcdabfabc",t1所指串中的内容为"ab",t2所指子串中的内容为"99"时,结果在w所指的数组中的内容应为"abcdabf99c"。 【答案】【1】while(*w) 【2】if(*r==*p) 【编程】编写函数fun,其功能是: 将s所指字符串中ASCII值为奇数的字符删除,剩余字符形成的新串放在t所指数组中。 例如,若s所指字符串中的内容为: "ABCDEFG12345",其中字符A的ASCII码值为奇数、…、字符1的ASCII码值也为奇数、…都应当删除,其它依此类推。 最后t所指的数组中的内容应是: "BDF24"。 【答案】 voidfun(char*s,chart[]) { inti,j=0,n; n=strlen(s); for(i=0;i if(s[i]%2==0) { t[j]=s[i]; j++; } t[j]=′\0′; } 17◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 将自然数1~10及其平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。 【答案】【1】fp【2】fclose(fp) 【3】fname 【改错】下列给定程序中fun函数功能是: 将n个无序整数从小到大排序。 【答案】【1】for(i=j+1;i 【编程】编写函数fun,其功能是: 将两个两位数的正整数a、b合并成一个整数放在c中。 合并的方式是: 将a数的十位和个位数依次在c数的个位和百位上,b数的十位和个位数依次放在c数的十位和千位上。 例如,当a=45,b=12时,调用该函数后c=2514。 【答案】 voidfun(inta,intb,long*c) { *c=a/10+(b/10)*10+(a%10)*100+(b%10)*1000; } 18◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 将N×N矩阵中元素的值按列向右移动1个位置,右边被移出矩阵的元素绕回左边第1列。 例如,N=3,有下列矩阵 1 2 3 4 5 6 7 8 9 计算结果为 3 1 2 6 4 5 9 7 8 【答案】【1】N【2】N-1【3】0 【改错】下列给定程序中函数fun的功能是: 计算并输出下列级数的前N项和SN,直到SN+1的值大于q为止,q的值通过形参传入。 例如,若q的值为50.0,则函数值应为49.394948。 【答案】【1】s=s+(double)(n+1)/n;【2】returnt; 【编程】编写函数fun,其功能是: 求Fibonacci数列中大于t的最小的数,结果由函数返回。 Fibonacci数列F(n)的定义为: F(0)=0,F (1)=1 F(n)=F(n-1)+F(n-2) 例如,当t=1000时,函数值为1597。 【答案】 intfun(intt) { intf0=0,f1=1,f; do{ f=f0+f1; f0=f1;f1=f; }while(f returnf; } 19◆◆◆◆◆◆◆◆◆◆◆◆◆◆ 【填空】下列给定程序中函数fun的功能是: 在带头结点的单向链表中,查找数据域中值为ch的结点。 找到后通过函数值返回该结点在链表中所处的顺序号;若不存在值为ch的结点,函数返回
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 二级 题库