学C++经典例题.doc_第1页
学C++经典例题.doc_第2页
学C++经典例题.doc_第3页
学C++经典例题.doc_第4页
学C++经典例题.doc_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

经典例题 6例/* 例子1/小明有五本新书,要借给A,B,C三位小朋友,若每人每次只能借一本,则可以有多少种不同的借法?/数学排列问题解法#includevoid main()int a,b,c; /stand for three friendsint count=0; /the counts of lending methodsfor(a=1;a=5;a+)/a lends one of the five booksfor(b=1;b=5;b+)/b lends one of the five booksif(a!=b)for(c=1;c=5;c+)if(c!=a&c!=b) count+; coutcount a b c* ; if(count%3=0) /view as a rule, any line has three lists coutendl; 例子2/求13的13次方的最后三位数/*#includevoid main() int i,x,y,last=1; /*变量last保存求X的Y次方过程中的部分乘积的后三位 printf(Input X and Y(X*Y):); scanf(%d*%d,&x,&y); for(i=1;i=y;i+) /*X自乘Y次 last=last*x%1000; /*将last乘X后对1000取模,即求积的后三位 printf(The last 3 digits of %d*%d is:%dn,x,y,last%1000); /*打印结果#includedouble Power(int x,int y);void main() int num=13;int pow=13; int last=1; double result=Power(num,pow); coutresultendl; for(int i=0;ipow;i+) last=last*num%1000; coutThe last three number is:lastendl;double Power(int x,int y)if(y=1)return x;else return x*Power(x,y-1);/*#includedouble Aver(int p,int count) /求出结果,p为整型数组,count为数组大小 double result=0; for(int i=0;icount-1;i+) /排序 for(int j=i;jcount;j+) if(pipj) int temp=pi; pi=pj; pj=temp; printf(评委打分按顺序:); for(int m=0;m10;m+) /显示排序后结果 printf(%d ,pm); printf(n); for(int k=1;kcount-1;k+) /求出去掉首尾的平均分 result+=pk; result/=count-2; return result;void main() printf(请输入10组评分:n); int p10; int i; for(i=0;i10;i+) /输入评分 printf(输入评委%d打分:,i+1); scanf(%d,&pi); double result=Aver(p,10); /计算平均分 printf(n平均分为%5.2fn,result);*/* 例子2#include#define N 5double Aver(int p,int count) /求出结果,p为整型数组,count为数组大小 double result=0; for(int i=0;icount-1;i+) /排序 for(int j=i;jcount;j+) if(pipj) int temp=pi; pi=pj; pj=temp; cout评委打分按顺序:; for(int m=0;mcount;m+) /显示排序后结果 coutpm; coutendl; for(int k=1;kcount-1;k+) /求出去掉首尾的平均分 result+=pk; result/=count-2; return result;void main()int i;int pN;coutPlease input 5 number:endl;for(i=0;iN;i+) cout输入评委ipi; double result=Aver(p,N);coutThe last result is:result; coutendl;/*int Power(int x,int y)if(y=1)return x;elsereturn x*Power(x,y-1);void main() int num,power;int a;coutInput a num:num;coutInput a power:power;a=Power(num,power);couta;/* 例子3/输入一个数判断是否是质数,若是不是质数则输出其因子。#includevoid main()int Prime(int n);int n;coutPlease input any number:n; if(Prime(n) coutnis Prime.endl; else coutnis not Prime.endl; int j; for(j=1;j=n;j+)if(n%j=0) coutj ; int Prime(int n)int i,k;int flag=1;k=(int)sqrt(n); for(i=2;i=k;i+)if(n%i=0)flag=0; break; if(flag)return 1;elsereturn 0;/*int a1010;void Fun(int n)int m = 1,j,i;for(i = 0; i n/2; i+)for(j = 0; j n-i; j+)if(aij = 0)aij = m+;for(j = i+1; j i; j-)if(an-i-1j = 0)an-i-1j = m+;for(j = n-i-1; j i; j-)if(aji = 0)aji = m+;if(n%2=1)an/2n/2 = m;void main()int n, i, j;coutPlease input number from 0-9n;for( i = 0; i n; i+)for(int j = 0; j n; j+)aij = 0;for(i = 0; i n; i+)for(int j = 0; j n; j+)cout aij ;cout endl;Fun(n);coutThe real quater is:endl;for(i = 0; i n; i+)for(int j = 0; j n; j+)cout aij ;cout =2) 当J=1或J=N+1时:其值为1 J!=1且J!=N+1时:其值为第N-1行的第J-1个值与第N-1行第J个值之和 将这些特点提炼成数学公式可表示为: 1 x=1或x=N+1 c(x,y)= c(x-1,y-1)+c(x-1,y) 其它 本程序应是根据以上递归的数学表达式编制的。#include#includeint Number(int x,int y);void main() int i,j,k; int n; coutn; for(i=0;i=n;i+) for(k=0;k24-2*i;k+) / cout ;printf( ); for(j=1;ji+2;j

温馨提示

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

评论

0/150

提交评论