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);
    }
  • 相关阅读:
    Android ViewPager使用详解
    Android开发 侧边滑动菜单栏SlidingMenu结合Fragment
    ArrayList
    Gstreamer中加入�x265编解码器
    python fabric实现远程操作和部署
    java.text.NumberFormat使用方法
    Delphi 2007体验!
    Codeforces 360C Levko and Strings dp
    FindWindow使用方法
    C++ Primer 学习笔记_87_用于大型程序的工具 --异常处理
  • 原文地址:https://www.cnblogs.com/Konayuki2015/p/4520559.html
Copyright © 2011-2022 走看看