C++刷题二

来源:互联网 发布:unity3d选中物体高亮 编辑:程序博客网 时间:2024/06/06 05:04
(一)有一分数序列: 2/1 3/2 5/3 8/5 13/8 21/13...... 求出这个数列的前N项之和,保留两位小数。#include <iostream>#include <iomanip>using namespace std;int main(){    int i,N;    double m=2.0,n=1.0,s,sum=0;    cin>>N;    for(i=0;i<N;i++)    {        sum=m/n+sum;        s=m+n;        n=m;        m=s;    }    cout<<setiosflags(ios::fixed)<<setprecision(2)<<sum<<endl;    return 0;}
(二)写一函数,将两个字符串连接123     abc123abc#include <iostream>#include <string>using namespace std;int main(){    string a,b;    int i;    cin>>a>>b;    cout<<a;    for(i=0;a[i]!='\0';i++);    cout<<b;    return 0;}

(三)写一函数,输入一个四位数字,要求输出这四个数字字符,但每两个数字间空格。如输入1990,应输出"1 9 9 0"。#include <iostream>using namespace std;void output(int num,int n);int main(){    int num,n=4;    cin>>num;    output(num,n);    return 0;}void output(int num,int n){    int a[n],i=1;    while(num>0)    {        a[i]=num%10;        num=num/10;        i++;    }    for(i=n; i>1; i--)        cout<<a[i]<<" ";    cout<<a[1]<<endl;}

(四)写一函数,将两个字符串中的元音字母复制到另一个字符串,然后输出。#include <iostream>#include <string>using namespace std;int main(){    string a,b;    int i;    cin>>a>>b;    for(i=0; a[i]!='\0'; i++)    {        if(a[i]=='a'||a[i]=='e'||a[i]=='i'||a[i]=='o'||a[i]=='u')            cout<<a[i];    }    for(i=0; b[i]!='\0'; i++)    {        if(b[i]=='a'||b[i]=='e'||b[i]=='i'||b[i]=='o'||b[i]=='u')            cout<<b[i];    }    return 0;}

(五)设圆半径r,圆柱高h 求圆周长C1、圆面积Sa、圆球表面积Sb、圆球体积Va、圆柱体积Vb。用scanf输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。 PI=3.14#include <iostream>#include <iomanip>using namespace std;int main(){    float r,h;    double PI=3.14,C1,Sa,Sb,Va,Vb;    cin>>r>>h;    C1=PI*2*r;    Sa=PI*r*r;    Sb=4*PI*r*r;    Va=PI*r*r*r*4/3;    Vb=PI*r*r*h-0.005;    cout<<setiosflags(ios::fixed)<<setprecision(2);    cout<<"C1="<<C1<<endl;    cout<<"Sa="<<Sa<<endl;    cout<<"Sb="<<Sb<<endl;    cout<<"Va="<<Va<<endl;    cout<<"Vb="<<Vb<<endl;    return 0;}

(六)写一函数,使输入的一个字符串按反序存放,在主函数中输入输出反序后的字符串。#include <iostream>#include <string>using namespace std;int main(){    string a;    cin>>a;    int i,n;    for(i=0;a[i]!='\0';i++)    {        n=i;    }    for(i=n;i>=0;i--)    {        cout<<a[i];    }    return 0;}

心得体会:每天的一点一点的积累都是进步的印证!!继续加油!
0 0