zoukankan      html  css  js  c++  java
  • C++实验四

    问题一

    #include<iostream>
    using namespace std;
    int main()
    {
        int x[50] = { 0 }, y[50] = { 0 };
        int k, i,j;
        cin >> k;
        for (i = 0;i < k;i++)
            cin >> x[i];
        float sum = 0,ave;
        for (i = 0;i < k;i++)
            sum += x[i];
        ave = sum / k;
        int num = 0,m=0;
        for (i = 0;i < k;i++)
        {
            if (x[i] > ave)
                num++;
        }
        cout << ave << ' ' << num << endl;
        for (i = 1, y[0] = x[0], m = 1;i != k;i++)
        {
            for (j = 0;j < i;j++)
            {
                if (x[j] == x[i])
                {
                    break;
                }
            }
            if (j == i)//如果j==i,说明这个元素第一次出现
            {
                y[m] = x[i];
                m++;
            }
        }
        for (i = 0;i < m;i++)
            cout << y[i] << ' ';
    
        return 0;
    }

    问题二

    #include<iostream>
    using namespace std;
    int main()
    {
        int k; cin >> k;
        int a[13] = { 0 }, n = 12, i,j;
        for (i = 1; i < 13; i++)
            a[i] = i;
        for (i = 0,j=1; i <=k; j++)
        {
            if (j > 12)
                j = 1;
            if (a[j] == 0)
                continue;
            i++;
            if (i == k)
            {
                a[j] = 0; i = 0; n--;
            }
            if (n == 1)
                break;
    
        }
        for (i = 1; i <= 12; i++)
        {
            if (a[i])
                cout << a[i];
        }
        return 0;
    }

    第一个if,形成回环

    第二个if,判断这个人是否被淘汰

    没人被淘汰,报数+1

    第三个if,判断是否到这个人报k,为真则这个人被淘汰,报数为0,人数-1

    第四个if,只剩一个人就跳出循环

    #include<iostream>
    using namespace std;
    int main()
    {
        int a[12]={0};
        int i,k,m,death,*p;
        p=a;
        cin>>death;
        for(i=0;i<12;i++)
        {
            *(p+i)=i+1;
        }
        i=0;
        k=0;
        m=0;
        while(k<11)
        {
            if(*(p+i)!=0)
            m++;
            if(m==death)
            {
                *(p+i)=0;
                m=0;
                k++;
            }
            i++;
            if(i==12)
            i=0;
        }
        while(*p==0)
        p++;
        cout<<*p;
        return 0;
    }

    第三题

    #include<iostream>
    #include<algorithm>
    using namespace std;
    int main()
    {
        int a[10], b[10];
        for (int i = 0; i < 10; i++)
            cin >> a[i];
        for (int i = 0; i < 10; i++)
            cin >> b[i];
        sort(a, a + 10);
        sort(b, b + 10);
        cout << a[9] << ' ' << a[0] << endl;
        cout << b[9] << ' ' << b[0] << endl;
        for (int i = 0; i < 10; i++)
            cout << a[i] << ' ';
        cout << endl;
        for (int i = 9; i >=0; i--)
            cout << b[i] << ' ';
        cout << endl;
        int c[20] = { 0 };
        for (int i = 0; i < 10; i++)
            c[i] = a[i];
        for (int i = 10; i < 20; i++)
            c[i] = b[i - 10];
        sort(c, c + 20);
        for (int i = 0; i < 20; i++)
            cout << c[i] << ' ';
        return 0;
    }

    sort(a,b,c)a:起始地址,b:结束地址,c:排序方法(不写默认从小到大)

    问题四

    #include<iostream>
    using namespace std;
    int main()
    {
        char s[50];
        cin.getline(s, 50);
        int i = 0,num=0;
        for (i = 0;; i++)
        {
            if (s[i] != ' ' && s[i] != '.')
                cout << s[i];
            else
            {
                cout << endl;
                num++;
            }
            if (s[i] == '.')
                break;
        }
        cout << num << endl;
    }
  • 相关阅读:
    集成信鸽推送!!!
    URI跳转方式地图导航的代码实践
    CocoaPods 的详细使用教程
    学习如何学习
    代码手写UI,xib和StoryBoard间的博弈,以及Interface Builder的一些小技巧
    宏!!!!(拷贝别人的博客的只为了收藏)
    不修改Xcode项目加载Reveal
    关于开发中的常用手段(个人建议)
    ios高级-属性中Copy的使用
    iOS高级-RunLooper
  • 原文地址:https://www.cnblogs.com/dk2154/p/14129657.html
Copyright © 2011-2022 走看看