zoukankan      html  css  js  c++  java
  • 学堂在线TsinghuaX: 00740043X C++语言程序设计基础 第二章Lab

    第一题:简单题目(求和,最大值,最小值)

    题目描述

    任意给定n个整数,求这n个整数序列的和、最小值、最大值

    输入描述

    输入一个整数n,代表接下来输入整数个数,n<=100,接着输入n个整数,整数用int表示即可。

    输出描述

    输出整数序列的和、最小值、最大值。用空格隔开,占一行

    样例输入

    2
    1 2

    样例输出

    3 1 2
    #include<iostream>
    using namespace std;
    int main()
    {
        int n,a,i,sum=0,min=0,max=0;
        cin>>n;
        for(i=1;i<=n;i++)
        {
            cin>>a;
            sum+=a;
            if(i==1)
            {
                max=a,min=a;
            }else
            {
                if (a>max)
                {
                    max=a;
                }
                if (a<min)
                {
                    min=a;
                }
            }
        }
        cout<<sum<<" "<<min<<" "<<max<<endl;
        return 0;
    }

    第二题:进制转换

    题目描述

    已知一个只包含0和1的二进制数,长度不大于10,将其转换为十进制并输出。

    输入描述

    输入一个二进制整数n,其长度不大于10

    输出描述

    输出转换后的十进制数,占一行

    样例输入

    110

    样例输出

    6

    #include<stdio.h>
    #define M 50
    void BinaryToDecimal(int btd)
    {
        int tmp[M],i=0,c=0;
        while(btd!=0)
        {
            tmp[i]=btd%10;
            btd/=10;
            i++;
        }
        i--;
        for(;i>=0;i--)
            c=c*2+tmp[i];
        printf("%d",c);
    }
    int main(int argc,const char *argv[])
    {
        int m;
        scanf("%d",&m);
        BinaryToDecimal(m);
        return 0;
    }

    第三题:实心菱形

    题目描述

    打印n阶实心菱形

    输入描述

    输入一个整数n,n<=10

    输出描述

    输出n阶实心菱形,占2*n-1行

    样例输入

    3

    样例输出

      *
    ***
    *****
    ***
    *
    #include <stdio.h>
    void diamond(int n)//n代表上三角行数-半对角线长
    {
        int i,j;
        //先输出上三角
        for(i=1;i<=n;++i)//输出n行
        {
            //输出第i行
            for(j=1;j<=n-i;j++)//先输出n-i个空格
                printf(" ");
            for(j=1;j<=2*i-1;j++)//再输出2*i-1个星号,然后这一行就不管了
                printf("*");
            printf("
    ");
        }
    /*
     ssss*1
     sss***2
     ss*****3
     s*******n-1
     *********n
     space空格显然每行是n-1个,*号为2*i-1(i从1开始)
    */
        //下面输出下三角,中间最长的那行已经在上面输出过了
        for(i=1;i<=n-1;i++)//输出n-1行
        {
            //输出第i行
            for(j=1;j<=i;j++) //输出i个空格
                printf(" ");
            for(j=1;j<=2*(n-i)-1;j++) //输出2*(n-i)-1个星号
                printf("*");
            printf("
    ");
        }
    }
    /*
     s*******1
     ss*****2
     sss***3
     ssss*n-1
     space空格显然每行是i个,*号为2*(n-i)-1(i从1开始)
    */
    
    int main(int argc,const char *argv[])
    {
        int n;
        scanf("%d",&n);
        diamond(n);
    }
  • 相关阅读:
    Hello iOS
    钝化程序、逻辑冻结、冻结程序的延续、瞬间转移
    对字符串操作的各种笔试题
    .NET各大平台数据列表控件绑定原理及比较(WebForm、Winform、WPF)
    多线程计算----pthread
    Xcode的Hello World(简单易懂)
    two sets of Qt binaries into the same process的解决办法
    微软新一代输入法框架 TSF
    Starting the application on Mac does not work(拷贝platforms到不同的位置,才能解决问题),还可设置DYLD_PRINT_LIBRARIES=1 观察动态库
    dddd
  • 原文地址:https://www.cnblogs.com/Konayuki2015/p/4520559.html
Copyright © 2011-2022 走看看