C++基础---数组的用途

1. 数组的用途

1.1 求平均值

  • 求平均值: x = (a[0]+a[1]+a[2]+……+a[n-1])/n (n个元素)。

    
    #include <iostream>
    
    using namespace std;
    int main()
    {
        int a[5]={1, 25, 50, 75, 100};
        int count = sizeof(a) / sizeof(a[0]);
        int total=0;
        for (int i=0; i<count; i++)
        {
            total += a[i];
        }
        float average = total / count;
        cout<<average<<endl;
        system("pause");
        return 0;
    }
    =>50

1.2 兔子繁衍问题

  • 兔子繁衍问题:即斐波那契数列,有一对兔子,若在它们出生后第一个月成年,第二个月就有生殖能力,而有生殖能力的一对兔子每一个月都生一对兔子。问新生的一对兔子12个月可以繁殖多上对兔子?
    经过月数:0,1,2,3,4,5,6, 7, 8, 9, 10, 11, 12;
    兔子对数:1,1,2,3,5,8,13,21,34,55,89,144,233;

    
    #include <iostream>
    
    using namespace std;
    int main()
    {
        int count=0;
        cin>>count;
        int* a = new int[count]; //定义了一个动态一维数组a
        a[0]=a[1]=1;
        for (int i=2; i<count; i++)
        {
            a[i] = a[i-1] + a[i-2];
        }
        for (int j=0; j<count; j++)
        {
            cout<<"第"<<j+1<<"个月共有兔子: "<<a[j]<<"对"<<endl;
        }
        delete []a;
        system("pause");
        return 0;
    }
    =>第1个月共有兔子:  1对
    =>第2个月共有兔子:  1对
    =>第3个月共有兔子:  3对
    =>第4个月共有兔子:  5对
    ……
    =>第12个月共有兔子:  144

1.3 数字排序

  • 数字排序—冒泡排序:将数据从小到大排列起来,每轮比较都将大的数放到数组的最后。

    
    #include <iostream>
    
    using namespace std;
    int main()
    {
        int a[] = {1, 34, 78, 98, 32, 45};
        int count = sizeof(a) / sizeof(a[0]);
        int temp = 0;
        for (int i=0; i<count; i++)
        {
            for (int j=0; j<count-i-1; j++)
            {
                if(a[j] > a[j+1])
                {
                    temp = a[j];
                    a[j] = a[j+1];
                    a[j+1] = temp;
                }
            }
        }
        for (int k=0; k<count; k++)
        {
            cout<<a[k]<<" ";
        }
        cout<<endl;
        system("pause");
        return 0;
    }
    =>1 32 34 45 78 98

**参考文献
[1]《C++全方位学习》范磊——第十四章
[2] 百度搜索关键字:C++数组、求平均值、斐波那契数列、冒泡排序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值