二级C语言程序设计题

上传人:豆*** 文档编号:202539910 上传时间:2023-04-22 格式:DOC 页数:19 大小:70.50KB
返回 下载 相关 举报
二级C语言程序设计题_第1页
第1页 / 共19页
二级C语言程序设计题_第2页
第2页 / 共19页
二级C语言程序设计题_第3页
第3页 / 共19页
点击查看更多>>
资源描述
语言程序设计请编写函数f,其功能是:找出2M整型二维数组中最大元素的值,并将此值返回调用函数。in fn(it M)nt ,j,ma=a00; o(i;i2;+) for(j=0;M;j+) if(maxaij) maxaij; retur max;编写函数f,其功能是:根据如下公式求的值(规定精度.00,即某项不不小于.0005时停止迭代)。 程序运营后,若输入精度0.0005,则程序应输出为3.1。dul fun ( duble eps) doubl s=0,s1=1.; int1; hil(s1=ps) /*当某项不小于精度规定期,继续求下一项*/ s11n(2*n1); *求多项式的每一项*/ s=s+; /*求和*/ n+; run2*s;编写函数fun,其功能是:求出1000之间能被7或1整除,但不能同步被7和11整除的所有整数,并将其放在a所指的数组中,通过返回这些数的个数。vidun (i*a,int *) int i,j=0; for(i=1;i=1000;+) /求1到100之内能被7或1整除、但不能同步被和1整除的所有整数,并放入数组a中/ if(i%7=0i%11=0)&i7!=0) aj+=; *n=j; 规定输入的字符串中只涉及字母和号。编写函数fu,其功能是:删除字符串中所有的*号。编写函数时,不得使用语言提供的字符串函数。例如,字符串中的内容为:*A*C*DG*,删除后字符串中的内容应当是:BCDEFG。vid un(ca*) nt i,j0; r(i=0;ai!=;i+) if(i!=*) a+=i; /*若不是要删除的字符则留下 a=0;规定输入的字符串中只涉及字母和号。编写函数fn,其功能是:将字符串中的前导*号所有删除,中间和尾部的*号不删除。例如,字符串中的内容为:*BC*DE*G*,删除后字符串中的内容应当是:A*DEF*G*。编写函数时,不得使用C语言提供的字符串函数。void fn( ar * )car *p=a; while(*p) p+; *指针指向字符串第一种字母*/ for(;*!=;p+,a) *p; /从第一种字母开始,其后的字符都放入指针所指的字符串中* *a=0; /*在字符串最后加上字符串结束标记/假定输入的字符串中只涉及字母和*号。请编写函数fn,其功能是:除了尾部的*号之外,将字符中的其他的*号所有删除。形参p已指向字符串中最后的一种字母。在编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为*A*BC*DEF*,删除后,字符串中的内容应当是ACD*。void fun( chr *, cr *p )car*t=a; fo(;=p;+) i(!=*) *(a+)=; r(;*t!0;t+) *(a+)=*t; *a=; /*在字符串最后加上字符串结束标记*/规定输入的字符串中只涉及字母和*号。请编写函数fn,其功能是:只删除字符前导和尾部的号,串中字母间的*号都不删除。形参n给出了字符串的长度,形参给出了字符串中前导*号的个数,形参e给出了字符串中尾部号的个数。在编写函数时,不得使用C语言提供的字符串函数。例如,字符串中的内容为:*ABC*DE*G*,删除后,字符串中的内容应当是:ABC*DEF*G。void fn( car *a, n ,int h,int e )in i,j=0; f(h;iae0.; fr(i=0;iave+-s; /*求各门成绩的总和 a-ve/=; /*求平均分*/N名学生的成绩已在主函数中放入一种带头节点的链表构造中,h指向链表的头节点。请编写函数fun,其功能是:求出平均分,并由函数值返回。例如,若学生的成绩是:8 76 6 97264 87,则平均分应当是:7.625。dob fn( SEC *h ) double ae=0.0; STRC *=h-next; whie(p!=NULL) v=ves; p=p-ext; etrn av/N;编写函数fn,其功能是:将所有不小于1不不小于整数的非素数存入x所指数组中,非素数的个数通过k返回。例如,若输入17,则应输出:46 89 10 12 416。vod un( in m, it *k, int )t i,j,n=0;or(i=4;i+) /*找出不小于1不不小于整数m的非素数* for(j=2;ji;j+) if(i%j=0) reak; if(ji) xn+i;*k=; /*返回非素数的个数/ 编写函数u,其功能是:求s所指字符串中指定字符的个数,并返回此值。例如,若输入字符串,输入字符为1,则输出。int fn(chr*ss, char )int i=0; for(;!=0;s+) if(*s=c) i+;/*求出s所指字符串中指定字符的个数* en ;编写函数fun,其功能是:计算门课程的平均分,成果作为函数值返回。例如:若有5门课程的成绩是:0.5,72,80,6,5,则函数的值为:718。fat fun (foat *a , in ) it i; foatav=00; for(i=;i;i+) *求分数的总和* va+ai; rtr(av/); /返回平均值/学生的记录由学号和成绩构成,N名学生的数据已放入主函数中的构造体数组s中,请编写函数un,其功能是:把分数最高的学生数据放在b所指的数组中。注意:分数最高的学生也许不止一种,函数返回分数最高的学生的人数。int fn( TRC *a, SRE b ) ini,j=0,ma=0.s; /*找出最大值*/ for(=0;iN;i+) i(axai.s) mx=i.s; or(i=0;i;i+) if(ma=.) bj+; 找出成绩与max相等的学生的记录,存入构造体b中*/ retuj; /*返回最高成绩的学生人数*/编写函数voidfn(hr *tt,nt ),记录在tt所指的字符串中到z2个小写字母各自浮现的次数,并依次放在pp所指的数组中。例如,当输入字符串abcdefabdebc后,程序的输出成果应当是:3 3 221 0 00 0 0 0 00 0 00 0 0void fun(ch*t, intpp)nt i; for(i=0;i=a&t=z) pp*ta+; 编写函数fun,其功能是:比较字符串的长度,(不得使用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符长度相似,则返回第一种字符串。例如,输入bejingshanghi(为回车键),函数将返回shnghai。chr * ( char *s, chr *t) nt i,j; for(i=;si!= 0;i+); /*求字符串的长度/ for(j=0;! ;j+); if(i=) *比较两个字符串的长度 retrn t; /*函数返回较长的字符串,若两个字符串长度相等,则返回第1个字符串*/ ee returns;学生的记录由学号成绩构成,N名学生的数据已放入主函数中的构造体数组s中,请编写函数fun,其功能是:函数返回该学号的学生数据,指定的学号在主函数中输入。若没找到指定学号,在构造体变量中给学号置空串,给成绩置-1,作为函数值返回。(用于字符串比较的函数是stcm)。TEfun( STR*a,cha *)inti;STREC tr0,-1; *若没找到指定的学号,在构造体变量中给学号置空串,给成绩置1*/ fr(i0;i1-6);return x1;学生记录由学号和成绩构成,N名学生的数据已放入主函数中的构造体数组中,请编写函数fu,其功能是:把分数最低的学生数据放入b所指的数组中,注意:分数最低的学生也许不止一种,函数返回分数最低的学生人数。int fun( STC a, STREC *b)it i,j,in=a0.; for(i0;N;+) if(minai.s) min=ai.s; /*找出最小值*/ fo(=0;iN;+) if(mn=ai.s) j+=ai; *找出成绩与min相等的学生的记录,存入构造体b中*/retrn j; 编写函数un,其功能是计算:s作为函数值返回。 在C语言中可调用og()函数求ln()。log函数的引用阐明为:oubl lg(dul x)。 例如,若m的值为2,则un函数值为656583。oubl fun( int m) int i; oubls=.0; or(i=1;i=m;i+) s=s+g(i); /*计算s=l()+n()ln()+ln(m)*/ retun sqr(s); /对s求平方根并返回*/函数fun的功能是:将s所指字符串中下标为偶数的字符删除,剩余字符形成的新串放在所指数组中。例如,当s所指字符串中的内容为CHJ时,在所指数组中的内容应是:BDFHJ。void fu(cars, char t)i i,j=,k=stln(); /*为字符串的长度*/ fo(i1;i;i+2) /*将所指字符串中下标为奇数的字符存入t所指字符串中* tj+=si; tj=0;编写函数fun,其功能是:将a、b中的两个两位正整数合并成一种新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量的百位和个位上,b中的十位和个位数依次放在变量的十位和千位上。例如,当a=4,b2,调用该函数后c=2415。id un(in a, nt , long *c)*c=a%10+(/1)*1+(a10)*10(b)*1000;学生的记录由学号和成绩构成,N名学生的数据已放入主函数中的构造体数组s中,请编写函数fun,其功能是:按分数降序排列学生的记录,高分在前,低分在后。void fun( SREC ) nt i,j; SEC t; for(i1;N;+) /用冒泡法进行排序,进行N次比较*/ or(j=0;jN-1;j+) /*在每一次比较中要进行N1次两两比较*/ if(ajs+.s) aj;ajaj+1;a+1=t; 按分数的高下排列学生的记录,高分在前*/学生的记录由学号和成绩构成。N名学生的数据已放入主函数中的构造体数组中,请编写函数fun,其功能是:把高于等于平均分的学生数据放在所指的数组中,高于等于平均分的学生人数通过形参n传回,平均分通过函数值返回。ube fun( STE *a, TREC *b, nt *n) nt i; double v0.0; *n=; fo(i=0;iN;i+) v=av+ai.s; avav/N; *求平均值*/ for(=0;i;i+) i(av=ai.) *na;*n=*+1; /*将高于等于平均分的学生存入b所指存储单元中,并记录人数*/ rt av; *返回平均分/编写函数un,其功能是:将1到m之间(含m)能被或11整除的所有整数放在数组a中,并通过返回这些数的个数。例如,若传给m的值为0,则程序输出:711 142122 2833 35249void fun ( in , in a ,int *n)inti,j=0; for(i=1; w(h!=NULL) 通过循环找到最高分数*/ i(axs; h=hnext; retu max;请编写函数fun,其功能是:找出一维整型数组元素中最大的值及其所在的下标,并通过形参传回。数组元素中的值已在主函数中赋予。主函数中x是数组名,n是x中的数据个数,ax寄存最大值,ix寄存最大值所在元素的下标。vod fun(it a,it n, nt*mx, int ) it ; max=a; d=0; for(=0;in;i+) /将最大的元素放入指针ax所指的单元,最大元素的下标放入指针d所指的单元* if(*maxai) *max=ai;*d=i;编写函数un,其功能是:将所指字符串中除了下标为奇数同步ASCII值也为奇数的字符之外,其他的所有字符所有删除,串中剩余字符所形成的一种新串放在t所指的数组中。例如,若s所指字符串的内容为:ABDEFG1234,其中字符A的ASCI码值为奇数,但所在元素的下标为偶数,因此需要删除;而字符的AII码值为奇数,所在数组中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指数组中的内容应为:35。voi n(hr *s, char t) n i,j0,; =strlen();r(i0;in;+) i(i%2!=0&si%2!=0) t=i; /*将下标为奇数同步ASCII码值为奇数的字符放入数组t中* +; tj=;最后加上结束标记符/编写函数u,其功能是:实现B=AA,即将矩阵A加上A的转置,寄存在矩阵B中。计算成果在main函数中输出。例如,输入下面的矩阵:其转置矩阵为: 程序输出: void fun (it a3, nt3)nt i,; for(i=0;i3;i+) for(0;j3;j+) bijaijji;/*把矩阵加上a的转置,寄存在矩阵b中*请编写函数fun,该函数的功能是:将M行列的二维数组中的数据,按列的顺序依次放到一维数组中。一维数 组中数据的个数寄存在形参n所指的存储单元中。例如,若二维数组中的数据为33 33 33 344 444 445 55 55 55则一维数组中的内容应是:334 55 33 44 5 3 445533 4 5oid fun(in(*s)10,it b,nt*,i mm,int n) it i,j; for(j0;jnn;j+) /*将二维数组中的数据按列的顺序依次放入一维数组中* fr(i=0;imm;i+) *n=*(*(s+)+j); =*+1; /*通过指针返回元素个数/
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!