还剩10页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
1、求Sn=a+aa+aaa+aaaa+…+aa…a n个a之值,其中a是一个数字,n表示a的位数例如2+22+222+2222此时a=2,n=4#includeiostream using namespace std;int maindouble a,b,sn=0;int i,n;cin»a»n;b=a;fori=l;i=n;i++sn+=b;b=b*10+a;cout«sn=«sn«endl;return0;
2、从键盘上输入一个正整数,判别它是否为一回文数如123321#includeiostream using namespace std;int mainint a,i,m0J;cin»a;i=a;whilei0j=i%10;m=10*m+j;i=i/10;ifm==a cout«Y;else cout«N;return0;
3、n为一个整数小于10万,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?#includeiostream#includecmath using namespace std;int ppint n int i=sqrtn;cout«f500/650«endl;return0;int fint M,int NifM*N=0||M0return1;int x,y,cnt=0;forx=2;xN;x+=2{fory=2;yM;y+=2{if5*x+6*y==M{cout«x=,,«x«/y=,,«y«endl;cnt++;return ent;
20、求s=2+22+222+…+222…2的和,即第n个加数是一个n位的整数,且各数位上的数字均为2,例如当n=4时,s=2+22+222+2222o要求设计一个函数int fint n求每一个加数,在main中用累加求和方式求出总和#include iostreamusing namespace std;int fint n;int mainint argc,char*argv[]int s=0,i,n;cout«lnput n:cin»n;fori=l;i=n;i++s=s+fi;cout«2+22+222+...=«s«endl;return0;int fint nint x=2;forint i=l;in;i++{x=x*10+2;return x;
21、有一个分数序列1/2,2/3,3/5,5/8,8/13,13/21o求:
(1)这个序列的前20项之和;
(2)第15项的值#include iostreamusing namespace std;int fibintn ifn==0||n==l return1;return fibn-l+fibn-2;int mainint argc,char*argv[],cout«fib15*
1.0«7«fib16«endl;double s=0;forint i=l;i=20;i++{s+=fibi*
1.0/fibi+l;cout«s«endl;return0;)
22、所有能被13整除又能被17整除且末位不是偶数的三位数有几个?最大的一个?#includeiostream using namespace std;int mainint s,k;forint i=999;i=100;i-{k=i%10;ifk%2!=0i%13==0i%17==0s++;ifs==lcout«i«endl;cout«s;return0;#include iostreamusing namespace std;int flong a[],intn,long x;int mainlong x=7;longa
[5]={3,5,2,7,9;cout«fa/5,x«endl;return0;int flonga[],intn,long xint cnt=-l;forint i=0;in;i++{ifa[i]==x cnt=i;return ent;ifi*i==n return1;else return0;int mainint i;fori=l;i=10000;i++ifppi+100ppi+168cout«i«endl;return0;
4、求1000之内的完全数说明完全数就是:除了它本身以外所有因子之和等于其本身,例如6=1+2+3#includeiostream using namespace std;int main{int i,j,s;fori=l;i=1000;i++{fors=0J=l;j=i/2;j++ifi%j==0s+=j;}ifs==i cout«i«endl;return0;
5、求出[900,1000]间有偶数个因子这里因子不含1和自身的数有多少个,其中最小的一个?#includeiostream usingnamespace std;int maininta,i,k,c0,min=0;fora=1000;a=900;a-{k=0;fori=2;i=a/2;i++{ifa%i==0k++;ifk!=0k%2==0{C++;min=a;cout«min««c«endl;return0;
6、编写一个自定义函数intfintM,intN,f的功能是对给定的正整数M和N,找出满足方程“7x+4户M”的正整数解中x是偶数且y是奇数的解,其中x,y属于[1,N]的范围要求若M和N不都是正整数,则结束函数并返回一1;只有M和N都是正整数时,才继续求解操作,用二重循环进行求解1在函数中输出满足条件的正整数解x和y,2并且使函数值返回满足条件的正整数解的组数#includeiostream usingnamespace std;int fint MJnt N{int xzy,i;forx=l;x=N;x++fory=l;y=N;y++{if7*x+4*y==M{cout«x««y«endl;i++;}ifi!=0return i;else return-1;int mainintM,N;cin»M»N;cout«fM,N«endl;return0;
7、写一个函数,找出给定字符串中数字字符即0-9,这10个数字的个数如字符串olympic2000中数字字符的个数为4个函数的原型为int CalcDigitalchar*str;函数参数str为所要处理的字符串函数返回值所给字符串中数字字符的个数#includeiostream#includestring.h usingnamespace std;int CalcDigitalchar*str k=strlenstr;forj=0;j=k;j++ifstr[j]=,9,str[j]=0i++;return i;int mainchar str[]=,,khd42944sgdkjfj7222222ghds H;cout«CalcDigitalstr;
8、编写一个自定义函数int fchar x,int N,f的功能是对给定的字符c和整数N,用c代表的符号打印一个N行的图案,每行开头没有任何空格比如,当c为且N为5时,打印的图案如本题图所示且函数值返回1#includeiostream usingnamespace std;int fcharx,int Nforint i=l;i=N;i++{forint j=l;j=i;j++cout«x;cout«endl;}return0;int mainint N;cin»N;fTN;return0;
9、编写一个自定义函数int fint N,f的功能是对给定的正整数N,打印一个N行N列的由以及空格,,“符号组成的方阵图案比如,当N为5时,打印的图案如本题图所示且函数值返回1#includeiostream usingnamespace std;int fint Nint i,j;fori=0;iN;i++{forj=0;jN;j++{ifj==O||j==i coukvAvvifji cout«B«ifjij!=O cout«C«cout«endl;}return0;int main{int N;cin»N;fN;return0;
10、编写函数f,计算具有n个元素的一维数组a中每组相邻两个数的差,找出其中的最大差作为函数值返回#includeiostream usingnamespace std;#define M5int finta[],intnint max;max=a[l]-a
[0];forint i=2;i=M;i++ifa[M]-a[M-l]max max=a[M]-a[M-l];return max;int main{int i,a[M];fori=0;iM;i++cin»a[i];cout«The resultis«fa,M«endl;return0;
11、根据下列要求和提示,编写一个函数fN判断某数N是否为“完全数”,N由主函数给出;如果N是“完全数”则函数值返回1,N不是“完全数”则函数值返回0“完全数”定义如下如果一个数恰好等于它的因子之和因子包括1,不包括数本身,则称该数为“完全数:如6的因子是
1、
2、3,而6=1+2+3,则6是个“完全数”#include iostreamusingnamespace std;int fint Nint mO,i;fori=l;i=N/2;i++ifN%i==O{m+=i;ifm==N return1;else return0;int main{int N;cin»N;iffN==l cout«N«Shi Wan Quan Shu!«endl;else cout«N«Bu ShiWanQuanShu!«endl;return0;
12、编写程序,求e的值,e^l+l/l!+l/2!+l/3!+l/4!+...,最后一项的值小于le-6#includeiostream usingnamespacestd;double facintndouble sl;int i;fori=l;i=n;i++{s=s/i;return s;int mainint i0;double s;whilefaci=le-6{s+=faci;i++;cout«e=«s;return0;
13、有十进制数字abc,d和e,求满足式子:abcd*e二dcba a非0,e非0非1的四位数中1共有多少个?2最小的abed;3与之相对应的e#includeiostream usingnamespacestd;int mainint min9999,k0;forint a=l;a=9;a++forint b=0;b=9;b++forint c=0;c=9;c++forint d=0;d=9;d++forint e=2;e=9;e++{ifa*1000+b*100+c*10+d*e==d*1000+c*100+b*10+ak++;min=a*1000+b*100+c*10+d;ifk==l{cout««min««e«endl;}}cout«k;return0;}
14、有一个7层灯塔,每层所点灯数都等于该层上一层的两倍,灯的总数是381盏,求塔底灯数?第几层的灯数为48#includeiostream usingnamespacestd;int main{int m;forint d=l;d381;d++int all0;int t;t=d;forint i=l;i=7;i++{all+=t;t/=2;ifall==381cout«,,diyiceng«d«endl;m=d;forint j=l;j=7;j++{ifm==48cout«di«j«,,ceng;m/=2;}}}return0;
15、有3个红球,5个白球,6个黑球,从中任意取出8个球,且其中必须有白球,请求出共有多少种取法?#includeiostream usingnamespacestd;int main{int m;forint i=0;i=3;i++forint j=l;j=5;j++forint k=0;k=6;k++{ifi+j+k==8m++;cout«m;return0;
16、求数列1,3,3,3,5,5,5,5,5,7,7,7,7,7,7,
[100];intn=0,i=0;forn=l;n10;n++{fori=n-l*n-l;i=n-l*n-lin*n;i++{a[i]=2*n-l;cout«a
[39]«endl;forint i=0;i100;i++{ifa[i]==17{cout«i+l;break;return0;
17、计算p的近似值,直到最后一项的绝对值小于10-8为止,近似公式为#include iostreamusingnamespacestd;int maininti=0;float s0;while
1.0/ile-8{i++;ifi%2==l s+=
1.0/2*i-l;else s-=
1.0/2*i-l;cout«4*s«endl;return0;
18、用牛顿迭代法求方程3x3-4x2-5x+13=0在x=l附近的根,要求精度为10-6牛顿迭代公式为xl=x0-fx0/fx0#include iostream#include cmathusingnamespacestd;double fdouble xreturn3*x*x*x-4*x*x-5*x+13;double dfdoublexreturn9*x*x-8*x-5;int maindoublex0=0,xl=l;whilefabsxl-x0le-6{x0=xl;xl=xO-fxO/dfxO;cout«xl«endl;return0;
19、编写一个自定义函数int fintM,intN,函数f的功能是对给定的正整数M和N,找出满足方程”5x+6y=方,的正整数解中x和y都是偶数的解要求若M和N不都是正整数,则结束函数并返回一1;只有M和N都是正整数时,且x,y£[1,N],才继续求解操作,并用二重循环进行求解1在函数中输出满足条件的正整数解x和y,2使函数值返回满足条件的正整数解的组数#include iostreamusingnamespacestd;int fintM,intN;int main。