华北电力大学c++字符串和函数答案_第1页
华北电力大学c++字符串和函数答案_第2页
华北电力大学c++字符串和函数答案_第3页
华北电力大学c++字符串和函数答案_第4页
华北电力大学c++字符串和函数答案_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1题:编写程序,从键盘输入一任意字符串(不包含空格),然后输入所要查找字符。如果存在则输出它在字符串中第一次出现的位置,否则输出NO。样例输入:Hello a样例输出:NO 样例输入:Hello l样例输出:2#include/#includeint main()int m=0,p=0;char s50,t;cinst;/cint;while(sp!=0) if(sp=t) m=1;break;else p+;if(m=0) coutNO;else coutp;return 0;第2题:编写程序,将一个字符串首尾互换,并与原字符串连接后输出。输入字符串(不包含空格),输出处理后的结果。 样例输入:china样例输出:chinaanihc#include#includeint main()char word150,word225;int p=0,e,j;cinword1;strcpy(word2,word1);j=strlen(word2);e=j-1;while(pe)j=word2p;word2p=word2e;word2e=j;p+;e-;strcat(word1,word2);coutword1;return 0;第3题:编写程序,输入两个字符串(不包含空格),输出两个字符串中第一个不相同字符的ASCII值之差的绝对值,如果两个字符串完全相同则输出0。 样例输入:abcd abed样例输出:2 样例输入:abcd abcd样例输出:0#include#includeint main()int p=0,flag=0;char c120,c220;cinc1c2;while(flag=0)&(c1p!=0)&(c2p!=0)if(c1p=c2p) p+=1;else flag=1;if(flag=1) coutabs(c1p-c2p);else cout0;return 0;第4题:编写程序,输入字符串(不包含空格),统计英文字母、数字字符及其他字符的个数。 样例输入:abc129+*ABC样例输出:6 3 3#includeint main()int num=0,word=0,symbol=0,i;char c100;cinc;for(i=0;ci!=0;i+)if(ci=0) num=num+1;else if (ci=a&ci=A&ci=Z) word=word+1;else symbol=symbol+1;coutword num symbol;return 0;第5题:在情报传递过程中,为了防止情报被截获,往往需要对情报用一定的方式加密,简单的加密算法虽然不足以完全避免情报被破译,但仍然能防止情报被轻易地识别。一种简单的加密方法:对给定的一个字符串,把其中的每个英文字母都用其后面第4个字母代替,如果后面不足4个字母,则从a或A重新开始。编写程序,从键盘输入一任意字符串(不包含空格),输出加密后的结果。 样例输入:Hello样例输出:Lipps#include#includeint main()char letter100;int i;cinletter;for(i=0;letteri!=0;i+)letteri=letteri+4;if (letteriz&letteriZ&letteri=Z+4) letteri=letteri-26;coutletter;return 0;第1题:编写两个函数,函数功能分别是:求两个整数的最大公约数和最小公倍数,要求输入输出均在主函数中完成。 样例输入:15 25样例输出:5 75 #include int gys(int m,int n) int r;if(mab;c=gys(a,b);d=a*b/c;coutc d;return 0;第2题:编写函数digit(num, k),函数功能是:求整数num从右边开始的第k位数字的值,如果num位数不足k位则返回0。要求输入输出均在主函数中完成。 样例输入:4647 3 样例输出:6 样例输入:23523 7 样例输出:0 #includeint digit(int num,int k)int b,i=0;dob=num%10;num=num/10;i+;while(num0&i0&i=k) return b;else return 0;int main()int a,b,n;cinnb;a=digit(n,b);couta=6且为偶数),输出对应的表达式,要求编写函数判断一个数是否为素数。 样例输入:8 样例输出:8=3+5 #includeint sushu(int a)int s=1,i;for(i=1;in;while(in)s=n-i;f=sushu(s);if(f=1) coutn=i+sendl;break;else i=i+2;return 0;第4题:有一分段函数如下,编写函数进行计算,在主函数中输入x值,输出y值。 样例输入:-1.5 样例输出:0.00250501 样例输入:5.6 样例输出:31.8957 样例输入:12.5 样例输出:4.06202#include#includedouble fdhs(float x)double y;if(x=0) y=sin(x)+1;else if(xx;y=fdhs(x);coutyendl;return 0;第5题:编写函数,函数功能是:统计整数n的各位上出现数字1、2、3的次数。要求输入输出均在主函数中完成。 样例输入:123114350样例输出:3 1 2 #includeint digit(int num)int b;b=num%10;return b;int main()int l1,l2,l3,n,a;l1=l2=l3=0;cinn;while(n0) a=digit(n);if(a=1) l1+;if(a=2) l2+;if(a=3) l3+;n=n/10;coutl1 l2 l3endl;return 0;第6题:编写函数fun(num),其中num是一个n位数,函数功能是:求整数num的后n-1位,如果num是一位数则返回0,要求输入输出均在主函数中完成。 样例输入:9 样例输出:0 样例输入:6734 样例输出:734 样例输入:1000 样例输出:0 样例输入:10101 样例输出:101 #include#includeint main()int fun(int);int num,n;cinnum;n=fun(num);coutn0)n+;num=num/10;if(n=1) return 0;else l=pow(10,n-1);return (i%l);第7题:编写函数,函数功能是:将两个两位数的正整数a、b合并成一个整数c,合并规则是将a的十位和个位分别放在c的千位和个位,将b的十位和个位分别放在c的百位和十位。a、b由键盘输入,输入输出均在主函数中完成。 样例输入:45 12样例输出:4125 #includeint fun(int e,int f)int a2,b2;a0=e/10;a1=e%10;b0=f/10;b1=f%10;return a0*1000+b0*100+b1*10+a1;int main()int a,b,c;cinab;c=fun(a,b);coutcendl;return 0;第8题:求数列的前n项和要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。样例输入:10 样例输出:0.382179#include#includefloat fun(int n)return pow(-1,n+1)/(n*(n+1);int main()int i,n;float s=0;cinn;for(i=1;i=n;i+)s+=fun(i);coutsendl;return 0;第9题:求数列 其中分母为n以内(包括n)的素数。要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。累加过程和输入输出均在主函数中完成。 样例输入:50 样例输出:1.66165 #include#includefloat fun(int n)return 1.0/n;int main()int n,j,k,i;float s=0.5;cinn;for(i=3;i=n;i+)j=2;k=sqrt(i);while(j=k)if(i%j!=0) j+;else break;if(j=k+1)s+=fun(i);coutsendl;return 0;第10题:编写程序求给定整数n的“亲密对数”。“亲密对数”是指:若整数a的因子(包括1但不包括自身,下同)之和为b,而整数b的因子之和为a,则称a和b为一对“亲密对数”。要求使用函数,函数功能是:计算某一个数的因子(包括1但不包括自身)之和。n由键盘输入,如果存在“亲密对数”则输出该数,否则输出NO。要求输入输出均在主函数中完成。样例输入:220 样例输出:284 样例输入:8 样例输出:NO #include int main()int n,i;int fun(int);cinn;for(i=n/2;i=2*n;i+)if(n=fun(i)&i=fun(n)coutiendl;break;if (n!=fun(i)coutNO;return 0;int fun(int n)int i,sum=1;for(i=2;in;i+)if(n%i=0) sum+=i; return sum;第11题:编写两个函数,将n个正整数中的素数按升序排序。函数功能分别是:判断一个数是否为素数,以及对数组进行排序。输入分2行:第一行为n的值,第二行为n个整数。要求输入输出均在主函数中完成。 样例输入:9 9 8 7 6 5 4 3 2 1样例输出:2 3 5 7#includeint main()int sushu(int);void paixu(int ,int);int n,k=0,i;int a100,b100;cinn;for(i=0;iai;if(sushu(ai)bk=ai; k+; paixu(b,k);for(i=0;ik;i+) coutbi ;return 0;int sushu(int a)int s=1,i;for(i=1;i=a;i+)if(a%i=0) s*=i;if(s=a&a!=1)return 1;elsereturn 0;void paixu(int arr,int length)int i,j,z;for(i=0;ilength-1;i+)for(j=i+1;jarrj)z=arri;arri=arrj;arrj=z;第12题:编写函数,功能是交换数组中的最大数和最小数的位置,并计算所有数之和。例如数组a有5个元素3、4、1、5、2,将最大数5和最小数1的位置交换后得到3、4、5、1、2,总和为15。程序中用到的主函数为: #includeint fun(int ,int);int main()int a50,n,i,sum;cinn;for(i=0;iai;sum=fun(a,n);for(i=0;in;i+)coutai ;coutendlsumendl;return 0;int fun(int arr,int n)int max=arr0,min=arr0,mini=0,maxi=0,sum=0,i;for(i=0;in;i+)sum+=arri;if(maxarri)min=arri;mini=i;i=arr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论