C++ Work 2

《C++程序与设计》 WORK TWO

T 1

// 输入梯形上边长、下边长及高度,计算梯形面积,并输出。

#include <iostream>
using namespace std;
int main ()
{
    cout << "###梯形面积###\n";
    cout << "请依次输入上底,下底和高:";
    double a = 0/*上底*/ , b = 0/*下底*/ ,h = 0/*高*/;
    double sum = 0 /*面积*/;
    cin >> a >> b >> h;
    sum = (a + b) * h / 2;
    cout << "\n梯形的面积为:";
    cout << sum << endl;
    system ("pause");
}

T 2

// 从键盘接受一个大写字母,转化成小写字母输出

#include <iostream>
using namespace std;
int main ()
{
    cout << "###英文字母大小写转化###\n";
    char ch;
    cin >> ch;
    
    if (ch>=65&&ch<=90)
    {
        ch = ch + 32;
    }
    else if (ch>=97&&ch<=122)
    {
        ch = ch - 32;
    }
    cout << ch <<endl;
    
    system ("pause");
}

T 3

//编写程序将输入的英里转换成公里。
//已知每英里等于5280英尺,每英尺等于12英寸,每英寸等于2.54厘米,每公里等于100000厘米。

#include <iostream>
#define ylc 5280
#define ycc 12
#define cc 2.54
#define gc 100000
using namespace std;
int main ()
{
    cout << "###英里转换成公里###\n";

    double mile = 0;
    cin >> mile ;
    cout << (mile = (mile * ylc * ycc * cc) / gc) <<endl;
    system ("pause");

}

T 4

//求一元二次方程式ax2 + bx + c = 0的根。输入a, b, c的值,输出根。
//提示:sqrt为开平方,需包含数学库<cmath>。

#include <iostream>
using namespace std;
int main ()
{
    cout << "###一元二次方程式###\n";
    double root = 0 ;
    double a = 0 ,b = 0,c = 0;
    double delta = 0;            // 根的判别式
    cin >> a >> b >> c;
    delta = b*b - 4*a*c;
    if (delta > 0)
    {
        cout << "方程有两个不同的实数根:";
        root = (-b + delta)/(2*a);
        cout << root << "   ";
        root = (-b - delta)/(2*a);
        cout << root << endl;
    }
    else if (delta == 0)
    {
        cout << "方程有且只有一个根:";
        root = -b / (2*a);
        cout << root <<endl;
    }
    else 
    {
        cout << "方程没有实数根"<<endl;
    }
    system ("pause");
}

T 5

//计算各类币值张数问题,输入人民币数额,统计100,50,20,10,5,1圆的币值各多少张。

#include <iostream>
using namespace std;
int main ()
{
    cout << "###人民币各类币值张数问题###\n";

    cout << "请输入人民币的数额 :";

    int RMB = 0 , num = 0;

    int array [3] = {0};

    cin >> RMB;

    array [2] = RMB / 100;
     
    for (int i = 0; i < 2 ;i++)
    {
        num = RMB % 10;

        RMB = RMB / 10;

        array [i] = num;
       // cout << array [i]<<endl;
    }
   // cout << array [2]<<endl;

    cout << "100元的币值有 "<<array [2]<<" 张\n";      // 百元纸币

    if (array [1] > 5)                          // 10 ~ 100 元内币值的问题
    {
        cout << "50元的币值有1张\n";
        array [1] = array [1] - 5;
        if (array [1] >= 4)
        {
            cout << "20元的币值有2张\n";
            array [1] = array [1] - 4;
            if (array [1] = 1)
            {
                cout << "10元的币值有1张\n";
            }
        }
        else if ( array [1] >= 2)
        {
            cout << "20元的币值有1张\n";
            array [1] = array [1] - 2;
             if (array [1] = 1)
            {
                cout << "10元的币值有1张\n";
            }
        }
        else if (array [1] = 1)
        {
            cout << "10元的币值有1张\n";
        }
        
    }
    else
    {
        if (array [1] >= 4)
        {
            cout << "20元的币值有2张\n";
            array [1] = array [1] - 4;
            if (array [1] = 1)
            {
                cout << "10元的币值有1张\n";
            }
        }
        else if (array [1] >= 2)
        {
            cout << "20元的币值有1张\n";
            array [1] = array [1] - 2;
            if (array [1] = 1)
            {
                cout << "10元的币值有1张\n";
            }
        }
    }
    
    if (array [0] >= 5)                          //10以内的纸币
    {
        cout << "5元的币值有一张\n";
        array [0] = array [0] -5;
        cout << "1元的币值有"<<array [0]<< "张\n";
    }
    else 
    {
        cout << "1元的币值有"<<array [0]<< "张\n";
    }
    system ("pause");
}

T 6

//编写程序,从键盘上接受一个三位的整数(100~999),计算出各位数字之和输出。

#include <iostream>
using namespace std;
int main ()
{
    cout << "###计算一个三位的整数各位数字之和###";
    int num = 0;
    int sum = 0;
    cin >> num;
    while (num != 0)
    {
        sum = sum + num % 10;
        num = num /10;
    }
    cout << sum <<endl;
    system ("pause");
}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

os.system

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值