学堂在线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("\n");
    }
/*
 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("\n");
    }
}
/*
 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);
}

 

posted @ 2015-05-21 18:53  慕课教育MOOC  阅读(1153)  评论(0编辑  收藏  举报