2013年3月计算机二级C语言上机试题题库答案Word下载.doc
- 文档编号:13140287
- 上传时间:2022-10-06
- 格式:DOC
- 页数:46
- 大小:138KB
2013年3月计算机二级C语言上机试题题库答案Word下载.doc
《2013年3月计算机二级C语言上机试题题库答案Word下载.doc》由会员分享,可在线阅读,更多相关《2013年3月计算机二级C语言上机试题题库答案Word下载.doc(46页珍藏版)》请在冰豆网上搜索。
i++;
p++;
}
while(*p)
{if(*p!
='
{a[i]=*p;
i++;
}
a[i]='
\0'
;
第二套
1.给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。
函数fun的功能是:
把形参x的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序。
1x2p3s
2.给定程序MODI1.C中函数fun的功能是:
计算正整数num的各位上的数字之积。
1longk=1;
2num/=10
3.请编写函数fun,它的功能是:
计算n门课程的平均分,计算结果作为函数返回。
inti;
floatave=0.0;
for(i=0;
i<
n;
i++)
ave=ave+a[i];
ave=ave/n;
returnave;
第三套
在形参ss所指字符串数组中,查找含有形参substr所指子串的所有字符串并输出,若没找到输出相应信息。
Ss所指字符串数组中共有N个字符,且串长小于M。
程序中库函数strstr(s1、s2)的功能是早s1串中查找s2子串,若没有,函数值为0,若有,为非0。
1N2substr30
求三个数的最小公倍数。
1fun(intx,inty,intz)2returnj;
只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。
形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数。
char*p=a;
intj=0,len=0;
while(*p){p++;
len++;
while(j<
len-h-e){
a[j]=a[h+j];
j++;
a[j]=0;
第四套
在形参ss所指字符串数组中查找与形参t所指字符串相同的串,找到后返回该串在字符串中的位置(下标值),未找到则返回-1。
ss所指字符串数组中共有N个内容不同的字符串,且串长小于M。
1N2i3-1
从整数1到55之间,选出能被3整除、且有一位上的数是5的那些事,并且把这些数放在b所指的数组中,这些数作为函数值返回。
规定,函数中a1放个位数,a2放十位数。
1a2=k/10;
2returni;
3.假定输入的字符串中只包含字母和*号。
将字符串尾部的*号全部删除,前面和中间的*号不删除。
while(*p)p++;
p--;
while(*p=='
)p--;
p++;
*p=0;
第五套
统计出带有头结点的单向链表中结点的个数,存放在形参n所指的存储单元中。
1*n2next3head
求出s所指字符串最后一次出现的t所指字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;
若未找到,则函数值NULL。
1a=NULL;
2if(*r==*p)
3.函数fun的功能是:
将s所指字符串中除了下标为偶数,同时ASCII指也为偶数的字符外,其余的全部都删除:
串中剩余字符所形成的一个新串放在t所指的数组中。
inti,j=0;
strlen(s);
i+=2)
if(s[i]%2==0)t[j++]=s[i];
t[j]=0;
第六套
1.函数fun的功能是:
进行数字字符转换。
若形参ch中是数字字符‘0’—‘9’,则‘0’转换成‘9’,‘1’转换成‘8’,‘2’转换成‘7’,……‘9’转换成‘0’;
若是其他字符则保持不变,并将转换后的结果做函数值返回。
1char2ch<
9'
3'
0'
将p所指字符串中所有字符复制到b中,要求复制第三个字符之后插入一个空格。
1b[k]=*p;
2b[k]='
'
k++;
3.N名学生的成绩已在主函数中放入一个带头结点的链表结构中,h指向链表的头结点。
求出平均分,有函数值返回。
STREC*p=h->
next;
doubleav=0.0;
intn=0;
while(p!
=NULL)
{
av=av+p->
s;
p=p->
n++;
av/=n;
returnav;
第七套
1.函数fun的功能是:
把形参a所指数组中的偶数按原顺序依次存放a[0]、a[1]、a[2]……中,把奇数从数组中删除,偶数个数通过函数值返回。
1a[i]%22a[j]3j
按以下递推公式求函数值。
例如,当给n输出5时,函数值为18;
当给n输入3时,函数值为14.
1fun(intn)2if(n==1)
使字符串中尾部的*号不得多于n个;
若多于n个则删除多余的*号;
若少于或等于n个,则什么也不做,字符串中间和前面的*号不删除。
intj=0;
n&
*p){
}
第八套
利用指针数组对形参ss所指字符串数组中的字符串按由长到短的顺序排列,并输入排序结果。
ss所指定字符串数组中共有N个字符串,且串长小于M。
1i2ps[j]3tp
2.已知一个数列从第0项开始的前三项分别是0、0、1以后的各项都是它相邻的前三项之和。
给定程序MODI1.C中函数fun的功能是:
计算并输出该数列前n项的平方根之和。
n的值通过形参传入。
1doublefun(intn)2returnsum;
3.编写函数fun,它的功能是:
计算下列级数和,和值由函数值返回。
例如,当n=10,x=0.3时,函数值为1.349859。
inti;
doubles=1.0,s1=1.0;
for(i=1;
=n;
{s1=s1*i;
s=s+pow(x,i)/s1;
returns;
第九套
计算x所指数组中N个数的平均值(规定所有数均为正数),平均值通过形参返回主函数,将小于平均值且最接近平均值的数作为函数值返回,在主函数中输出。
1*av2i3x[j];
根据整型形参n计算如下公式的值。
例如:
若n=10,则应输出:
0.617977.
1floatfun(intn)2for(i=2;
3.程序定义了N×
N的二维数组,并在主函数中自动赋值,请编写函数fun,它的功能是:
使数组右上三角元素中的值乘以m。
inti,j;
N;
for(j=i;
j<
j++)
a[i][j]*=m;
第十套
将s所指字符串所有数字字符移到所有非数字字符之后,并保持数字字符串和非数字字符串原有的先后次序。
1j++2s[i]=t1[i]3j
用冒泡法对6个字符串按由小到大的顺序排列。
1for(j=i+1;
6;
j++)2*(pstr+i)=*(pstr+j);
求出ss所指字符串中指定字符的个数,并返回次值。
intcnt=0;
char*p=ss;
while(*p){
if(*p==c)cnt++;
returncnt;
第十一套
把形参a所指数组中的奇数按原顺序依次存放到a[0]、a[1]、a[2]……中,把偶数从数组中删除,奇数个数通过函数值返回。
若a所指数组中的数据最初排列为:
9、1、4、2、3、6、5、8、7,删除偶数后a所指数组中的数据为:
9、1、3、5、7,返回值为5。
第一处1第二处j++第三处j
求出两个非零正整数的最大公约数,并作为函数值返回。
1t=a;
a=b;
b=t;
2return(b);
删除字符串中所有的*号。
if(*p!
a[j++]=*p;
第十二套
(一)程序通过定义学生结构体数组,存储了若干个学生的学号、姓名和三门课的成绩。
将存放学生数据的结构体数组,按照姓名的字典序(从小到大排序)。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
(1)structstudent
(2)n-13a[i].name,a[j].name
(二)给定程序MODI1.C中函数fun的功能是:
在p所指字符串中找出ASCII码值最大的字符,将其放在第一个位置上;
并将该字符前的原字符向上顺序移动。
1q=p+i;
2while(q>
p)
(三)学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:
把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。
if(a[i].s>
=l&
a[i].s<
=h)
b[j++]=a[i];
returnj;
第十三套
(一)给定程序中已建立一个带有头结点的单向链
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2013 计算机 二级 语言 上机 试题 题库 答案