1、计算机上机考试的一些大题请编写函数fun(),对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按ASCII值码升序排列。例如:原来的字符串为BdsihAd,则排序后输出为BAdhisd。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。试题程序:此题的源文件在考生目录下,文件名为: prog1.c#include #include #include int fun(char *s, int num)main() FILE *fp; char s10; char b10=BdsihAd,c10=*a)0!; print
2、f(Please Input a string including 7 Character:); gets(s); fun(s,7); printf(n%s,s); fp=fopen(out.dat,w); fun(b,7); fprintf(fp,%s,b); fun(c,7); fprintf(fp,%s,c); fclose(fp);本改错题共有 1道,改错题源文件在考生目录中,请在*下一行将错误改正。不得增行与减行,改正后使程序运行正确存盘即可。改错题的源文件分为:modi1.c,第1题分值为:10分,下列给定程序中函数fun()的功能是计算1/n!的值。例如:给n输入5,则输出0.0
3、08333。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。试题程序:#include #include /*found*/int fun(int n) double result =1.0; if(n=0) return 1.0; while(n1 & n 170)/*found*/ result *=n+ ; result=1/result; return result ;main() int n; printf(Input N:); scanf(%d,&n); printf(n1/%d!=%lfn,n,fun(n);本改错题共有
4、1道,改错题源文件在考生目录中,请在*下一行将错误改正。不得增行与减行,改正后使程序运行正确存盘即可。改错题的源文件分为:modi1.c,第1题分值为:10分,给定程序的功能是:计算s=1+(1+2)+(1+2+3)+.+(1+2+.+n),期中n通过键盘输入请改正程序中的错误,使它能计算出正确的结果。注意不得增行或删行,也不得更改程序的结构!注意不得增行或删行,也不得更改程序的结构! 程序中有两处错误。#include stdio.hmain() int n,i,j,f,s=0; printf(请输入n:n); scanf(%d,n); for(i=1;i=n;i+) f=0 for(j=1
5、;j=i;j+) f=f+j; s=s+f; printf(s=%dn,s);请编写一个函数 double fun(int n),求s=1!+2!+.+n!, n通过键盘输入,大小n不超过20,如输入3,输出结果应为9,函数的返回值为所求和。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#include #include double fun(int n) main( ) FILE *wf; int n,i,k=0; double s,bb10; printf(请输入n:n
6、); scanf(%d,&n); s=fun(n); printf(和为:%f,s); printf(n);/*/ wf=fopen(out.dat,w); for(i=1;i=10;i+) bbk+=fun(i); for (k=0 ;k10 ; k+) fprintf(wf,%f ,bbk) ; fclose(wf);/*/本改错题共有 1道,改错题源文件在考生目录中,请在*下一行将错误改正。不得增行与减行,改正后使程序运行正确存盘即可。改错题的源文件分为:modi1.c,第1题分值为:10分,下列给定程序中,函数fun()的功能是逐个比较a,b两个字符串对应位置中的字符,把ASCII值小
7、或相等的字符依次存放到c数组中,形成一个新的字符串。例如:a中的字符串为fshADfg,b中的字符串为sdAEdi,则c中的字符串应为fdAADf。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。#include #include void fun(char *p,char *q,char *c) int k=0; while(*p|*q)/*found*/ if (*p=*q) ck=*q; else ck=*p; if(*p) p+; if(*q) q+ ;/*found*/ k+ main() char a10=fshADfg,b
8、10=sdAEdi,c80=0; fun(a,b,c); printf(The string a:); puts(a); printf(The string b:); puts(b); printf(The result :); puts(c);请编写一个函数fun(),它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较短的字符串。若两个字符串长度相等,则返回第1个字符串。例如,输入abcde xyz (为回车键),函数将返回xyz;或输入ab abcd (为回车键),函数将返回ab;注意:部分源程序已给出请勿改动主函数main和其他函数中的任何内容,仅在
9、函数fun的花括号中填入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#includechar *fun(char *s, char *t)main() FILE *wf; char a20,b10,*p=nanjing123,*q=nanchang; int i; printf(Input 1th string: ); gets(a); printf(Input 2th string: ); gets(b); printf(%s,fun(a,b);/*/ wf=fopen(out.dat,w); fprintf (wf,%s,fun(p,q); fprintf(wf,
10、%c,n); fclose(wf);/*/本改错题共有 1道,改错题源文件在考生目录中,请在*下一行将错误改正。不得增行与减行,改正后使程序运行正确存盘即可。改错题的源文件分为:modi1.c,第1题分值为:10分,给定程序的功能是:计算某足球队在联赛中的积分等决定名次的参数。设已知某队在m场比赛(2m50)中各场的进球数和失球数(存入组长组xx),则可算出它的积分(胜一场得3分,平一场得1分,负一场得0分)、净胜球数n和总进球数与总失球数之比r。例如:若输入“4”和31、11、20、12、12、12、12、12,则应输出.The total mark:8The net score:28The
11、 ration of win vs lost:1.60请改正程序中的错误,使它能计算出正确的结果。注意不得增行或删行,也不得更改程序的结构!#include conio.h#include stdio.hstruct winlost int win;int lost;struct result int t;int n;float r;void total(int m,struct winlost xx,struct result * final) int i; final-t=0; final-n=0; final-r=0.0; for(i=0;ixxi.lost)/*found*/ fina
12、l-t+=2; else/*found*/ if(xxi.win=xxi.lost) final-t+=1; final-n+=xxi.win; final-r+=xxi.lost; i=final-n; final-n=i-final-r; final-r=i/final-r;void main(void) int i,m; struct winlost aa50; struct result last; printf(nHow many simes of competetion close the team tale:); scanf(%d,&m); printf(cPlease ente
13、r %d results of each competition,m); printf(win lost):n); for(i=0;im;i+) scanf(%d%d,&(aai.win),&(aai.lost); total(m,aa,&last); printf(nThe result of each competition:); for(i=0;im;i+) printf(n No.%2d:%2d(win:lost),i+1,aai.win,aai.lost); printf(nnThe total mark:%2d,last.t); printf(nThe net score:%2d,
14、last.n); printf(nThe ration of win vs lost:%5.2f,last.r);请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。例如,当a=16,b=35,调用该函数后,c=5361。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#include stdio.hvoid fun(int a ,int b,
15、long *c)main() FILE *wf; int a,b,i; long c; printf(Input a,b;); scanf(%d%d,&a, &b); fun(a,b,&c); printf(The result is:%ldn,c); wf=fopen(out.dat,w); for(i=10;i=90;i+) fun(i,100-i,&c); fprintf(wf,%ld,c); fclose(wf);本改错题共有 1道,改错题源文件在考生目录中,请在*下一行将错误改正。不得增行与减行,改正后使程序运行正确存盘即可。改错题的源文件分为:modi1.c,第1题分值为:10分,
16、下列给定程序中,函数fun()的功能是将字符串s中位于偶数位置的字符或ASCII码为奇数的字符放入字符串t中(规定第一个字符放在第0位中)。例如:字符串中的数据为ADFESHDI,则输出应当是AFESDI。请改正程序中的错误,使它能得到正确结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。#include #include #include #define N 80/*found*/void fun(char s, char t) int i, j=0; for(i=0; istrlen(s);i+)/*found*/ if(i%2=0|si%2!=0) tj+=si ;
17、 tj=0;main() char sN, tN; printf(nPlease enter string s :); gets(s); fun(s,t); printf(nThe result is :%sn,t);请编写函数void fun (int x, int pp, int *n),它的功能是:求出能整除x且不是偶数的各整数,并按从小到大的顺序放在pp所指的数组中,这些除数的个数通过形参n返回。例如,若x中的值为30,则有4个数符合要求,它们是1,3,5,15,它们都能被30整除且不是偶数。注意:部分源程序已给出请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填
18、入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#include #include void fun (int x, int pp, int *n)main () FILE *wf; int x,aa1000, n, i ; printf(nPlease enter an integer number : n ) ; scanf (%d, &x) ; fun (x, aa, &n) ; for (i=0 ; in ; i+) printf (%d , aa i); printf (n ) ;/*/ wf=fopen(out.dat,w); fun (100, aa, &
19、n) ; for (i=0 ; it=0; final-n=0; final-r=0.0; for(i=0;ixxi.lost)/*found*/ final-t+=2; else/*found*/ if(xxi.win=xxi.lost) final-t+=1; final-n+=xxi.win; final-r+=xxi.lost; i=final-n; final-n=i-final-r; final-r=i/final-r;void main(void) int i,m; struct winlost aa50; struct result last; printf(nHow many
20、 simes of competetion close the team tale:); scanf(%d,&m); printf(cPlease enter %d results of each competition,m); printf(win lost):n); for(i=0;im;i+) scanf(%d%d,&(aai.win),&(aai.lost); total(m,aa,&last); printf(nThe result of each competition:); for(i=0;im;i+) printf(n No.%2d:%2d(win:lost),i+1,aai.
21、win,aai.lost); printf(nnThe total mark:%2d,last.t); printf(nThe net score:%2d,last.n); printf(nThe ration of win vs lost:%5.2f,last.r);请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。例如,当a=16,b=35,调用该函数后,c=5361。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花
22、括号中填入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#include stdio.hvoid fun(int a ,int b,long *c)main() FILE *wf; int a,b,i; long c; printf(Input a,b;); scanf(%d%d,&a, &b); fun(a,b,&c); printf(The result is:%ldn,c); wf=fopen(out.dat,w); for(i=10;i=90;i+) fun(i,100-i,&c); fprintf(wf,%ld,c); fclose(wf);请编写函数fun,
23、其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。例如,当a=16,b=35,调用该函数后,c=5361。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#include stdio.hvoid fun(int a ,int b,long *c)main() FILE *wf; int a,b,i; long c; printf(Input a,b;); sc
24、anf(%d%d,&a, &b); fun(a,b,&c); printf(The result is:%ldn,c); wf=fopen(out.dat,w); for(i=10;i=90;i+) fun(i,100-i,&c); fprintf(wf,%ld,c); fclose(wf);请编一个函数void fun(int ttMN, int ppN), tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。二维数组中的数已在主函数中给出。注意:部分源程序已给出。请勿改动主函数main和其他函数中的任何内容,否则得不到成绩后果自负,仅在函数fun的花括号中填入所编写的若干语句。此题的源文件在考生目录下,文件名为: prog1.c#include #include #define M 3#define N 4void fun(int ttMN,int ppN) main() FILE *wf
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1