C++常用基本程序
C+常用基本程序1=1一、数的各位表示方法1、两位数的各位表示 个位数的表示方法:a%10=x ;例:45%10=5 ; 十位数的表示方法:a/10=x;例:45/10=4;2、三位数的各位表示 个位数的表示方法:a%10=x;例:456%10=6; 十位数的表示方法:a%100/10=x;例:456%100/10=5; 百位数的表示方法:a/100=x; 例:456/100=4;3、通式:k=a/10(n%10A表示要求的数字,n表示要求的个数,k表示该位值。4、给出一个不大于5位的正整数,求出它是几位数及各位上的数字。#include<iostream>using namespace std;int main()long int n;int wei,wan,qian,bai,shi,ge;cin>>n;if(n>99999) cout<<"error!"<<endl;else if(n>9999)ei=5;else if(n>999)wei=4;else if(n>99) wei=3;else if(n>9) wei=2;elsewei=1;wan=n/10000;qian=n/1000%10;bai=n/100%10;shi=n/)%10:ge=n%10;if(wei=5)cout<<wei<<.<<wan<<.<<qian<<”."<<bai<<”."<<shi<<”."<<ge<<endl;if(wei=4)cout<<wei<<.<<qian<<”."<<bai<<”."<<shi<<”."<<ge<<endl;C+蒲丽中茸撇苗 Bwelli'nla coufAAWe 一人人IslsAAbm一人人=AASh一人 人人 end 一: 15welli'& coufAAWe 一人人=一人Ash 一人AlslsAAgeAAend-;Bwelli,nl)cou-AAwe_AA=AAgnAAendb rer+urnosnd udeAiosstea m V sndudeAmafhv using namespaceacb inr+m9!.noinr+Lnk cinvvm knsaank for(IH2:IAHk"l+) Bn*IHnsbreak" Islvk)8uf人八n人人=*1k&ia人endk Ifpsecouf 人入 nAIANWISIAAendkrer+umo尸aflHIKmsnccde 人iosrreamv #inccdeAcmmhv using namespace srd" void n)inf k«knsqHnk n£3»C+蒲丽中茸撇苗 for=&IAnk=+)Bn¥IHno)break*BlvklcomAIA-MmwlyIAAendkKpse8U一人人=»llilmwwIA人 endkin- m£.no-n- mc-nvvap(nbre-urno«nccdeAo*sr+rea m V using namespaceaCH inf m9!.noinfoidnvvJiBa%2Rs8ufA<k:esIA<end= lipsecoufA<=no=AAlrpndMrefumor Sas. ttinccdeAiossreamv using namespace s巨 inf m9>.noint a,b,c,max;cout<<"请输入三个整数a,b,c:"cin>>a>>b>>c;if(a>b)if(a>c)/*对a和c进行比较*/max=a;/*如果if语句的条件正确,执行这个语句,即如果a>c ,将a的给 max*/elsemax=c;/*如果if语句的条件不正确,执行这个语句,即如果a<=c,将c的值赋值给max*/elseif(b>c)max=b;elsemax=c;cout<<"max="<<max<<endl;return 0;进行两轮比较后,即可比较完2、#include<iostream> using namespace std;int main()int a,b,c,max;cin>>a>>b>>c;if(a>b)max=a:elsemax=b;if(c>max)max=c;cout<<"max="<<endl;return 0;3、利用条件表达式比较 #include<iostream> using namespace std; int main()int a,b,c,max,min;cin>>a>>b>>c;min=a<b?a:b;min=min<c?min:c;max=a>b?a:b;max=max>c?max:c;cout<<"max="<<max<<endl<<"min="<<min<<endl;return 0;(二)对多个数的比较 利用循环语句,对每个数进行顺次比较,利用中间变,将每个数和中间变进行比较,如果符合条件, 那就刷新值,如果不符合条件,就进行下面的比较。/*首先对max进行赋初值为零,然后要和下面的输入值进#include<iostream> using namespace std; int main() int temp,max=0,min,i=0;行比较,不过不赋初值,就没法和下面的值进行比较7cout<<"Please input scores:" cin>>temp;min=temp;/*这个语句的作用是将输入给min,因为数都是大于0的,如果赋初值为0,那么将对最小值无法进行比较,但不影响最大值*/fort;) if(temp<0) break;/*进行条件判断,如果值为负数的时候,结束整个循环,负责继续执行下面的语句7if(temp>max) max=temp;/*进行条件判断,如果值大于max,就将中间变量的,给 max*/if(temp<min) min=temp;/*进行条件判断,如果值大于max ,就将中间变量的值赋值给max*/cin>>temp;/*然后输入另一个数,进行下一轮的比较7cout<<"max="<<max<<'t'<<"min="<<min<<endl;return 0;五、数的求和,平均值问题1、_般的输入数据求和 #include<iostream>using namespace std;int main()int a,sum=0,i;cin>>a;while(a>0)sum+=a;cin>>a;cout<<sum<<endl;return 0;2、求1+2+3+.+n;#include<iostream>using namespace std;int main()int n,sum,i;/*计算 1+2+3+.+n 的值*/sum=0;cin>>n;cout<<"1+2+3+.+n 的值为:"for(i=1;i<=n;i+)sum+=i;cout<<sum<<endl;return 0;3、1+3+5+.+99 的值#include<iostream>using namespace std;int main()int n,sum,i;/*计算 1+2+3+.+n 的值*/6sum=0;cin>>n;cout<<"1+2+3+.+n 的值为:";for(i=1;i<=n;i+)sum+=i;cout<<sum<<endl;return 0;4、2+4+6+.+100的值#include<iostream>using namespace std;int main()int n,sum,i;/*计算 1+2+3+.+n 的值*/sum=0;cin>>n;cout<<"1+2+3+.+n 的值为:"for(i=1;i<=n;i+)sum+=i;cout<<sum<<endl;return 0;5、求1+2+3+.n的和不大于1000的最大自然数n#include<iostream>using namespace std;int main()int n,s=0;for(n=1;s<=1000;n+)s+=n;cout<<"n="<<n<<endl;return 0;6、打+ v 2 + + % n , n从键盘输入#include<iostream>/* 计算 sqrt(1)+sqrt(2)+.+sqrt(n)的ffl*/#include<cmath>using namespace std;int main()int n,i;double sum=0;cin>>n;for(i=1;i<=n;i+)sum+=sqrt(n);cout<<"sum="<<sum<<endl;return 0;<i + C1 +巨 L C1 +克 +拓 L. + Ci + .+#include<iostream>#include<cmath>using namespace std;int main()int n,i;double sum=0,s=0;cin>>n;for(i=1;i<=n;i+)s+=sqrt(n);sum+=s;cout<<"sum="<<sum<<endl;return 0;8、求出分数序列2/1+32+孰+85+1装.,的前20项的机#include<iostream>/* 计算 2/1+¥2+5/3+.的前 20 项的值*/using namespace std;int main()int i,t;double sum=0,z,a=2,b=1;for(i=1;i<=20;i+)sum+=a/b;t=a;a+=b;b=t;cout<<"sum="<<sum<<endl;return 0;9、求出分数序列24+47+&10+&13+10A6+的前20项的和#include<iostream>/* 计算 2/4+4/7+6/10+8/13.*/using namespace std;int main()int