二级c语言标准上机题库.docx
《二级c语言标准上机题库.docx》由会员分享,可在线阅读,更多相关《二级c语言标准上机题库.docx(265页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1.下列给定程序中,函数fun的功能是计算如下公式直到,并且把计算结果作为函数值返回。例如,若形参e的值为le3,则函数返回值为0.551690。请在下划线处填入正确的内容并 将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include double fun(double e) int i, k; double s, t, x;s=0; k=l; i=2;* found * */x=_1_/4;/* * fou nd*/while(x 2 e) s=s+k*x;k=k* (-1);t=2*i;/* fou nd */x=_
2、3_/(t*t);i+;return s;main() double e=le-3;printf(MnThe result is: %fnM,fun(e);【参考答案】(1)3.0 或(double)3(2)(3) (t+1)2,下列给定程序中,函数fun的功能是:计算如下公式前n项的和并作为函数值返回。例如,当形参n的值为10时,函数返回值为9.612558。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include double fun(int n) intdouble s, t;/字 *
3、 found* */ s=_1_;/不 * fou nd* */ fbr(i= 1; i= 2_; i+) t=2.0*i;/豕* found */s=s+(2.0*i-l )*(2.0*i+l )/_3_;return s;)main() int n=-l;while(n0): ); scanf(d”,&n); printf(nnThe result is: %fnM,fun(n);)【参考答案】 0(2)n(3) (t*t)3 .给定程序中,函数fun的功能是:统计形参s所指的字符串中数字字符出现的次数,并存 放在形参t所指的变量中,最后在主函数中输出。例如,若形参s所指的字符串为 abc
4、def35adgh3kjsdf7,则输出结果为 4。请在下划线处填入正确内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include void fun(char *s, int *t) int i, n;n=0;/字 * found* */for(i=0;1!=0; i+)/不 * fou nd* */if(si=O,&si=2) n+;/萃* fou nd */3;)main() char s80=,abcdef35adgh3kjsdf7M;int t;printf(MnThe original string is
5、 : %snM,s);fun(s,&t);printf(MnThe result is : %dn,t);)【参考答案】 si (2) 9(3)*t=n4 .下列给定程序中,函数fun的功能是:把形参a所指数组中的奇数按原顺序依次存放到a0、 al, a2,中,把偶数从数组中删除,奇数个数通过函数值返回。例如:若a所指数组中的数据最初排列为:9、1、4、2、3、6、5、8、7,删除偶数后a所 指数组中的数据为:9、1、3、5、7,返回值为5。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!#incl
6、ude#define int fun(intN 9 a, int n) int i,j;j = 0;for (i=0; in; i+)/* found* * */if(ai%2=-1)* found * */aj = ai;_2_;)/* * ou nd * */return3;)main() int bN=9,l,4,2,3,6,5,8,7,i,n;printf(MnThe original data :nH);for (i=0; iN; i+) printf(M%4d ”, bi);printf(,nM);n = fun(b, N);printf(HnThe number of odd :
7、 %d n n);printf(MnThe odd number :nH);for (i=0; in; i+) printf(%4d , bi);printf(MnM);【参考答案】(1)1(2)j+(3)j5 .下列给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从 高位到低位相反的顺序组成个新数,作为函数值返回。例如,输入一个整数27638496,函数返回值为64862。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不得更改程序的结构!#include unsigned long fun
8、(unsigned long n) unsigned long x=0; int t;while(n)t=n%10;/不 * found* */if(t%2=1)* found * */* * fou nd */n=3;return x;main() unsigned long n=-l;while(n99999999lln0) printf(MPlease input(0n 1000(X)000): ); scanf(H%ldH,&n); printf(MnThe result is: %ldnM,fun(n);)【参考答案】(1)0(2) 10*x (3) n/106 .下列给定程序中,函
9、数fun的功能是:把形参a所指数组中的最小值放在元素a0中,接 着把a所指数组中的最大值放在al元素中;再把a所指数组元素中的次小值放在a2中, 把a所指数组元素中的次大值放在a3,以此类推。例如,若a所指数组中的数据最初排列为:9、1、4、2、3、6、5, 8、7;则按规则移动后, 数据排列为:I、9、2、8、3、7、4、6、5。形参n中存放a所指数组中数据的个数。规定fun函数中的max存放当前所找的最大值,px存放当前所找最大值的下标。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。不得增行或删行,也不行更改程序的结构!# inc
10、lude #define N 9void fun(int a, int n) int i,j, max, min, px, pn, t;for (i=0; in-l; i+=2)(不* found* */max = min =1;px = pn = i;for (j=i+l; jn; j+) /不 * found* */if (max3) min = aj;pn=j; )if (pn != i) t = ai; ai = min; apn = t;if (px = i) px =pn;if (px != i+1) t = ai+l; ai+l = max; apx = t; )main() i
11、nt bN=9,l,4,2,3,6,5,8,7,i;printf(MnThe original data :n);for (i=0; iN; i+) printf(M%4d ”, bi);printf(Hnn);fun(b, N);printf(nnThe data after moving :nH);for (i=0; iN; i+) printf(M%4d ”, bi);printf(,AnM);)【参考答案】 ai (2) aj (3)aj7.下列给定程序中,函数fun的功能是进行数字字符转换。若形参ch中是数字字符U9,则将0,转换成9, T转换成8, 2转换成7,9转换成O;若是其它
12、字符则保持不变;并将转换后的结果作为函数值返回。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK 1.C中。不得增行或删行,也不得更改程序的结构!#include /字 * found* */1fun(char ch)/* * fou nd */ if(ch=,0, &-2_)/豕* found */return ,9- (ch-3);return ch;main() char cl, c2;printf(HnThe result :nn);cl =2; c2 = fun(cl);printf(Hc l=%c c2=%cnn, c 1, c2);
13、cl =8; c2 = fun(cl);printf(nc l=%c c2=%cnH, c 1, c2);cl=a; c2 = fun(cl);printf(Mc l=%c c2=%cnH, c 1, c2);【参考答案】(1) char (2) ch=9 (3)。8 .下列给定程序中,函数fun的功能是:求ss所指字符串数组中长度最短的字符串所在的行 下标,作为函数值返回,并把其串长放在形参n所指的变量中。ss所指字符串数组中共有M 个字符串,且串长vN。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。 不得增行或删行,也不得更改程序
14、的结构! #include#include#defineM5#defineN20int fun(char (*ss)N, int *n) int i, k=0, len= N;/豕* found */ for(i=0; i1; i+) len=strlen(ssi);if(i=0) *n=len;/* fou nd */ if(len 2 *n) *n=len;k=i;) ) /字* found* */retum(3);) main() char ssMN= shanghai ,/guangzhoun,beijingK,tianjingn,chongqing1); int n,k,i;prin
15、tf(MnThe original strings are :nM);for(i=0;iM;i+)puts(ssi);k=fun(ss,&n);printf(MnThe length of shortest string is : %dnn);printf(HnThe shortest string is : %snM,ssk);)【参考答案】 M (2)(3)k9 .下列给定程序中,函数fun的功能是:将s所指字符串中的所有数字字符移到所有非数字 字符之后,并保持数字字符串和非数字字符串原有的次序。例如,s所指的字符串为def35adh3kjsdf7,执行后结果为defadhajsdf353
16、7。请在程序的下划线处填入正确的内容把下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLANK1.C中。 不得增行或删行,也不得更改程序的结构! #include void fun(char *s) int i,j=0, k=0; char tl80, t2l80;for(i=0; si!=O*; i+) if(si=,0, & si=9,)/* found* */ t2|j=si;1一;)else tlk+=si;t2j=0; tlk=O;/* * fou nd */ for(i=0; ik; i+) 2;* found * */ for(i=0; i 3; i+) sk+i=t2
17、i; main() char s80=,ba3a54j7sd567sdffsH;printf(MnThe original string is : %snM,s);fun(s);printf(MnThe result is : %snn,s);【参考答案】j+或j+=l或+或)封+1 si=tli(3)j10下列给定程序中已建立一个带头结点的单向链表,链表中的各结点按结点数据域中的数 据递增有序链接。函数fun的功能是:把形参x的值放入个新结点并插入链表中,使插入 后各结点数据域中的数据仍保持递增有序。请在下划线处填入正确的内容并将下划线删除,使程序得出正确的结果。注意:部分源程序在文件BLA
18、NK1.C中。不得增行或删行,也不得更改程序的结构!#include#include#define typedefN 8 struct list int data;struct list *next; SLIST;void fun( SLIST *h, int x) SLIST *p, *q, *s;s=(SLIST *)malloc(sizeof(SLIST);/字* found */s-data=1;q=h;p=h-next;while(p!=NULL & xp-data) /* * fou nd */q=一2一;p=p-next;)s-next=p;/* found* */q-next=
19、 3;)SLIST *creatlist(int *a) SLIST *h,*p,*q; int i;h=p=(SLIST *)malloc(sizeof(SLIST);for(i=0; idata=ai; p-next=q; p=q;)p-next=0;return h;void outlist(SLIST *h) SLIST *p;p=h-next;if(p=NULL) printf(MnThe list is NULL!nu);else printf(nnHeadn);do printf(n-%d,p-data); p=p-next; while(p!=NULL);printf(,-En
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 语言 标准 上机 题库
限制150内