版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、/j+模式(1)将两个两位的正整数a、b合并形成一个整数放在c中:将a的十位和个位数放在c的千位和十位,b的十位和个位数放在c的百位和个位.例如:假设a=45,b=12,使c=4152.voidfun(inta,intb,int*c)/c是指针(*c=a/10*1000+b/10*100+a%10*10+b%10;)(2)判断整数x是否是同构数(规定x是不大于100的正整数).假设是,函数返回1,否那么返回0.如果某个整数能够在它的平方数的最右边出现,就是“同构数.例如:5的平方数是25,5是25右边的数,所以5是同构数.intfun(intx)(return(x<10&&
2、;x*x%10=x)|(x>=10&&x*x%100=x);)(3)w是大于10的无符号整数,求w后n-1位的数作为函数值返回.例如:假设w是234,那么返回34.unsignedfun(unsignedw)(unsignedt=w,m=1;while(t)t/=10;m*=10;returnw%(m/10);y(4)对变量x中的值保存2位小数,并对第3位进行.一%四舍五入(规定x中的值为正数).2 .四doublefun(doublex)舍五入return(int)(x*100+0.5)/100.0;(5)求n以内(不包括n)同时能被3和7整除的所有自然数之和的平方根,
3、并作为函数值返回.doublefun(intn)3 .整除和inti;素数doublesu;+、日for(i=1;i<n;i+)问题|if(i%3=0&&i%7=0)s+=i;returnsqrt(s);/平方根(6)求1到m之内(含m)能被7或11整除的所有整数放在数组a中,通过函数返回这些数的个数.intfun(int*a,intm)inti,j=0;for(i=1;i<=m;i+)if(i%7=0|i%11=0)aj+=i;returnj;(7)求3到n之间所有素数的平方根之和,并返回.doublefun(intn)inti,k;doubles=0;for(i
4、=3;i<=n;i+)for(k=2;k<i;k+)判断素数if(i%k=0)break;整除中止if(i=k)s+=sqrt(i);是素数returns;(8)求出小于或等于lim的所有素数并放在a数组中,该函数返回所求的素数的个数.intfun(intlim,intaMAX)inti,k,j=0;for(i=2;i<=lim;i+)for(k=2;k<i;k+)if(i%k=0)break;if(k=i)aj+=i;/j+模式returnj;(9)将大于整数m且紧靠m的n个素数存入x所指的数组中.voidfun(intm,intn,intx)inti,k,j=0;f
5、or(i=m+1;j<n;i+)for(k=2;k<i;k+)if(i%k=0)break;if(k=i)xj+=i;/j+模式(10)求数组前n个数的小数局部的和,并返回.doublefun(intn,doublea)另'4求inti;总和doubles=0;均值for(i=0;i<n;i+)极值s+=ai-(int)ai;/原数-整数I一._returns;(11)把a数组的n个数的平方值,与b数组中逆序的n个数的平方值一一对应相加,存放在c数组中.voidfun(inta,intb,intc,intn)inti;for(i=0;i<n;i+)ci=ai*a
6、i+bn-1-i*bn-1-i;平方根/t作分母(12)计算并返回a数组中n门课程的平均分.doublefun(int*a,intn)(inti;doubles=0;for(i=0;i<n;i+)s+=ai;returns/n;(13)返回a数组n个学生中低于平均分的人数,并将低于平均分的分数放在b所指的数组中.intfun(inta,intn,intb)(inti,j=0;doubles=0;for(i=0;i<n;i+)s+=1.0*ai/n;平均分for(i=0;i<n;i+)if(ai<s)bj+=ai;/j+模式returnj;(14)求NXN的二维数组周边元
7、素的平均值并作为函数值返回给主函数.doublefun(intaNN)(inti,k;doubles=0;for(i=0;i<N;i+)for(k=0;k<N;k+)if(i=0|k=0|i=N-1|k=N-1)s+=aik;returns/(4*N-4);除以个数(15)求出s数组t个元素中最大元素在数组中的下神,并存放在k所指的存储单元中.voidfun(int*s,intt,int*k)(inti,m=0;for(i=1;i<t;i+)if(si>sm)m=i;*k=m;(16)求出数组aMN里每列中的最小元素,并依次放入bN数组中.voidfun(intaMN,
8、intbN)(inti,k,m;for(k=0;k<N;k+)共N歹U(m=a0k;for(i=0;i<M;i+)每列M行if(aik<m)m=aik;bk=m;(17)求Fibonacci数列中大于t的最小的一个数,果由函数返回.其中数列f(n)的定义为:f(0)=0,f(1)=1,f(n)=f(n-1)+f(n-2)intfun(intt)(inta=0,b=1,c=0;while(c<=t)(c=a+b;a=b;b=c;returnc;(18)根据以下公式求P的值,结果由函数值带回.floatfun(intm,intn)(inti;floatx=1,y=1,z=1
9、;for(i=1;i<=m;i+)x*=i;/m!for(i=1;i<=n;i+)y*=i;/n!for(i=1;i<=m-n;i+)z*=i;/(m-n)!returnx/y/z;(19)根据以下公式计算s,结果由函数值返回.S=+加(2)+加+1mMdoublefun(intm)(inti;doubles=0;for(i=1;i<=m;i+)s+=log(i);returnsqrt(s);(20)计算以下级数和,结果由函数值返回.+.2!3!假设x=0.3,n=10,那么函数值为1.349859.doublefun(doublex,intn)(inti;double
10、s=1,z=1,m=1;for(i=1;i<=n;i+)s+=(z*=x)/(m*=i);returns;(21)根据以下公式计算s,结果由函数值返回.S=1+F+-I1+21+2+31+2+.3+s*a+wfloatfun(intn)(inti,t=0;floats=0;for(i=1;i<=n;i+)(t+=i;s+=1.0/t;)returns;)(22)根据以下公式计算x的值,某项小于e时停止迭代:233x53x5x7假设e的值是0.0005,那么返回3.14doublefun(doublee)(doublen=1,v=1,s=0;while(v>=e)(s+=v;v
11、*=n+/(2*n+1);)returns*2;)(23)求给定10个数的方差,结果作为函数值返回:inti,k;for(i=0;i<N;i+)for(k=0;k<=i;k+)循环至i歹Ua皿k=0;(26)矩阵转置,如:输入102030输出104070(即行列互换)405060205080708090306090voidfun(intaNN)(inti,k,t;for(i=0;i<N;i+)for(k=0;k<i;k+)至i-1歹U(t=aik;aik=aki;aki=t;(27)将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中.例如:s数组中存放
12、39;A''B''C''D''0''E''F''G''H''0'那么a中应保存"AEBFCGDH"其中X'是10个数的平均值.doublefun(doublex10)(inti;doublev=0,s=0;for(i=0;i<10;i+)v+=xi/10;for(i=0;i<10;i+)s+=(xi-v)*(xi-v);returnsqrt(s/10);/V是平均值voidfun(charsMN,char
13、*a)(inti,k,j=0;for(k=0;k<N-1;k+)for(i=0;i<M;i+)aj+=sik;aj='0'(28)一维数组a中有n个整数,/跳过'0'列/j+模式串尾添'0'把下标从0到p(p)(24)求方程cos(x)-x=0的一个实根.步骤:x1初值0.0;x0=x1;x1=cos(x0);假设x0-x1的绝对值小于0.000001,执行步骤5,否那么执行步骤x1就是实根,作为函数值返回.doublefun()(doublex1=0.0,x0;do(x0=x1;x1=cos(x0);while(fabs(x0-x1
14、)>=1e-6);returnx1;2;小于等于n-1)的数组元素平移到数组的最后.卜voidfun(inta,intp,intn),'(7移inti,k,t;动数for(k=0;k<=p;k+)组元素t=a0;for(i=1;i<n;i+)ai-1=ai;/数据前移an-1=t;(29)假定输入的字符串中只包含字母和*号,将字符串中的前导*号全部移到字符串的尾部.6.矩阵问题如:原来值为:492357816voidfun(intaNN)()(25)把二维数组左下角元素全置为那么返回:0.092007000voidfun(char*a)inti,n=strlen(a)
15、;while(a0='*')for(i=1;i<n;i+)ai-1=ai;an-1='*'尾部添*号8,统计子串个inti,n=0;计数器置符串回文计数器置1,io.数据分类统计中,以此类推,100岁及以上的放在b10中.u.字符串转换(30)统计一个长度为2的字符串a在另一个字符串中出现的次数.intfun(char*a,char*b)(for(i=0;i<strlen(b);i+)if(bi=a0&&bi+1=a1)n+;returnn;)(31)统计字符串中单词的个数,作为函数值返回.字符串在主函数中输入,规定单词之间由假设干空
16、格隔开,一行的开始和结束都没有空格.intfun(chars)(inti,n=0;for(i=0;i<strlen(s);i+)if(si!=''&&(si+1=''|si+1='0')n+;returnn;)(32)判断字符串是否为回文数.假设是那么函数返回否那么返回0.回文是指顺读和倒读都是一样的串.intfun(char*a)(inti,m=strlen(a);for(i=0;i<m/2;i+)if(ai!=am-1-i)return0;return1;)(33)统计数组a中的各年龄段的人数(N个).09岁的人数
17、放在b0中,1019岁的人数放在b1voidfun(int*a,intb11)(inti;for(i=0;i<11;i+)bi=0;计数器置0for(i=0;i<N;i+)if(ai>=100)b10+;elsebai/10+;)(34)统计在t字符串中26个字母'a'到'z'各自出现的次数,并依次放在p所指的数组中.voidfun(char*t,intp)(inti;for(i=0;i<26;i+)pi=0;计数器置0for(i=0;i<strlen(t);i+)if(ti>='a'&&ti&
18、lt;='z')pti-'a'+;)(35)统计在字符串a中,以下字符出现的次数,并存到b数组中,其中:字符'+'出现的次数存到b0中,字符'-'出现的次数存到b1中,字符'*'出现的次数存到b2中,字符'/'出现的次数存到b3中,字符&出现的次数存到b4中,其它字符出现的次数存到b5中.voidfun(char*a,intb)(inti;b0=b1=b2=b3=b4=b5=0;for(i=0;i<strlen(a);i+)if(ai='+')b0+;elseif(ai
19、='-')b1+;elseif(ai='*')b2+;elseif(ai='/')b3+;elseif(ai='&')b4+;elseb5+;其它字符)(36)把字符串a中的内容逆置.voidfun(char*a)(chart;inti,m=strlen(a);for(i=0;i<m/2;i+)t=ai;ai=am-1-i;am-1-i=t;)(37)将s所指字符串中所有下标为奇数位置上的字母转换为大写(假设该位置上不是字母,那么不转换)voidfun(char*s)inti;for(i=1;i<strlen(
20、s);i+=2)if(si>='a'&&si<='z')si-=32;转为大写(38)将一个字符串转换为一个整数,例:把"456转换为456,把"-23"转换为-23.longfun(char*a)inti=0,t=1;longs=0;if(a0='-')t=-1;i=1;处理负号for(;i<strlen(a);i+)s=s*10+ai-'0'returns*t;(39)在字符串的所有数字字符前加一个$字符.例如:输入:A1B23CD4,输出:A$1B$2$3CD$
21、4.voidfun(char*s)chartN;inti,j=0;for(i=0;i<=strlen(s);i+)/含'0'if(si>='0'&&si<='9')tj+='$'tj+=si;/j+模式strcpy(s,t);(40)实现字符串连接:把p2所指的字符串连接到-X12.实现字符串函数pl所指的字符串后.不得使用函数voidfun(char*p1,char*p2)(strcpy(p1+strlen(pl),p2);或者:pl=pl+strlen(pl);while(*p1+=*p2+)
22、;strcat./方法1/方法2(41)比拟两个字符串长度,返回较长的字符串.假设长度相同,那么返回第一个串.char*fun(char*a,char*b)(inti=0,k=0;while(ai)i+;while(bk)k+;return(i>=k?a:b);不得使用函数strlen./a串长度/b串长度(42)删除一个字符串中指定位置的字符.其中放原字符串,b存放删除后的字符串.例如,为"World,n为3,那么使b串为"Word".voidfun(chara,charb,intn)(J13.删除指定数据strcpy(b,a);strcpy(b+n,a+
23、n+1);(43)将a所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的新串放在t所指的数组中.voidfun(char*a,char*t)(inti,j=0,m=strlen(a);for(i=0;i<m;i+=2)if(ai%2=0)tj+=ai;tj='0'/j+模式串尾加0'(44)删除数组中相同的数,使之只剩一个.数组已按从小到大排列,函数返回删除后数组中数据个数.假设原数组是:22234455666,删除后,数组前面元素的内容是:23456,函数返回5.intfun(inta,intn)(inti,j=0
24、;for(i=0;i<n-1;i+)if(ai!=ai+1)aj+=ai;/j+模式aj+=an-1;最后1个数returnj;".删除星(45)字符串中只包含字母和*号,删除字符串中所有的*号,不得使用字符串函数.voidfun(chars)(inti,j=0;for(i=0;si;i+)if(si!='*')sj+=si;/j+模式sj='0'串尾加'0'(46)字符串中只包含字母和*号,删除字符串中的前导*号,不得使用字符串函数.voidfun(chars)(inti=0,j=0;while(si='*')i
25、+;找第1字母while(sj+=si+);/j+模式(47)字符串中只包含字母和*号,删除串尾部所有的*号,不得使用字符串函数.voidfun(chars)(inti=0;while(si)i+;后移到''0'while(s-i='*'&&i>=0)si='0'尾部置'0(48)字符串只包含字母和*号,使字符串尾部的*号不得多于n个;假设多于n个,那么删除多余的*号;假设少于或等于n个,那么什么也不做.字符串中间和前面的*号不删除.不得使用字符串函数.voidfun(char*a,intn)(inti=0,
26、t=0,v;while(ai)i+;后移到''0'v=i;存串长度while(a-i='*'&&i>=0)t+;/计*号个数if(t>n)av-(t-n)='0'/截断串(49)字符串只包含字母和*号,除了字符串前导的*号之外,将串中其它*号删除.不得使用字符串函数.voidfun(char*s)(inti=0,j;while(si='*')i+;找第1字母for(j=i;si;i+)if(si!='*')sj+=si;/j+模式sj='0'串尾加'0
27、39;(50)字符串只包含字母和*号,除了前导和尾部*号之外,删除其它*号.指针h已指向第一个字母,p已指向最后一个字母.不得使用字符串函数.voidfun(chars,char*h,char*p)(intj=h-s,i;for(i=h-s;i<p-s;i+)if(si!='*')sj+=si;/j+模式while(sj+=si+);拷尾部*号(51)从num个字符串中找出最长的一个字符串,并通过形参指针max传回该串地址.voidfun(char(*a)81,intnum,char*max)inti;级指*max=a0;针for(i=0;i<num;i+)1if(
28、strlen(ai)>strlen(*max)*max=ai;(52)对a数组中长度为n个字符的字符串,除首尾字符外,将其余n-2个字符按ASCII码降序排列.voidfun(char*a,intn)16.排序问chart;题inti,k;for(i=1;i<n-2;i+)冒泡排序for(k=i+1;k<n-1;k+)if(ai<ak)t=ai;ai=ak;ak=t;(53)N名学生的学号和成绩已放入结构体数组w中,按分数从高到低排列结构体数组中N个记录.typedefstructchara10;intb;S;voidfun(SwN)St;inti,k;for(i=0;i<N-1;i+)冒泡排序for(k=i+1;k<N;k+)if(wi.b<wk.b)t=wk;wk=wi;wi=t;(54)把分数最低的学生数据放在b数组中(可能不止一个),函数返回分数最低的学生的人数./typedefstructchara10;intn;S;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五版建筑工程主体承包合同(含建筑垃圾资源化处理)范本6篇
- 二零二五年度食堂服务员派遣合同2篇
- 二零二五年度二手搅拌设备二手交易碳排放交易合同3篇
- 二零二五年进出口货物检验检疫合同3篇
- 二零二五版房屋抵押贷款合同样本编制指南6篇
- 石场生产线承包合同2025年度规范文本6篇
- 标题14:2025年度网络安全监测与预警服务合同2篇
- 二零二五年技术转让合同具体条款2篇
- 二零二五年度酒吧经营场所租赁合同范本(专业解析版)2篇
- 二零二五年度建筑工地环境监测与节能管理系统合同3篇
- EPC总承包项目中的质量管理体系
- 沪教版小学语文古诗(1-4)年级教材
- 外科医生年终述职总结报告
- 横格纸A4打印模板
- CT设备维保服务售后服务方案
- 重症血液净化血管通路的建立与应用中国专家共识(2023版)
- 儿科课件:急性细菌性脑膜炎
- 柜类家具结构设计课件
- 陶瓷瓷砖企业(陶瓷厂)全套安全生产操作规程
- 煤炭运输安全保障措施提升运输安全保障措施
- JTGT-3833-2018-公路工程机械台班费用定额
评论
0/150
提交评论