第11讲-算术运算符与算术表达式-练习

练习一:写一个程序,输入x(三位数),输出其个、十、百位数,用空格隔开

/**
 * 写一个程序,输入x(三位数),输出其个、十、百位数,用空格隔开
 *
 * @author 陈淦森
 * @version 1.0.1
 * Date 2016-01-17
 */
int main()
{
    printf("分离各个位数\n请输入一个三位数值:");
    int iA;
    scanf("%d", &iA);
    int iB, iC, iD;
    iB = iA % 10;
    iC = (iA / 10) % 10;
    iD = iA / 100;
    printf("个位是%d,十位是%d,百位是%d", iB, iC, iD);
    return 0;
}


练习二:编写一个程序,其功能为:从键盘上输入一个浮点数(小数点后有三位数),然后分别输出该数的整数部分和小数部分

/**
 * 编写一个程序,其功能为:从键盘上输入一个浮点数(小数点后有三位数),然后分别输出该数的整数部分和小数部分
 *
 * @author 陈淦森
 * @version 1.0.1
 * Date 2016-01-17
 */
int main()
{
    printf("请输入一个浮点数(小数点后有三位数):");
    float fA;
    scanf("%f", &fA);
    int iB, iC;
    iB = (int)fA;
    iC = (int)(fA * 1000) % 1000;
    printf("整数部分是%d,小数部分是%d", iB, iC);
    return 0;
}

练习三:小慧过生日,小明(小明真忙)要买鲜花送她。每枝红玫瑰5元,满5支送1枝,满20枝送5枝。小明一共有n(n>10)元钱,最多能买到多少?

/**
 * 小慧过生日,小明(小明真忙)要买鲜花送她。每枝红玫瑰5元,满5支送1枝,满20枝送5枝。小明一共有n(n>10)元钱,最多能买到多少?
 *
 * @Author 陈淦森
 * @Version 1.0.1
 * @Date 2016年1月18日
 */
int main()
{
    float fMoney;
    printf("请输入小明有多少钱?");
    scanf("%f", &fMoney);
    int iNums, iGiveNums;
    iNums = (int)(fMoney / 5);
    iGiveNums = iNums / 20;
    if (iGiveNums > 0)
    {
        iNums = iNums + iGiveNums * 5;
    }
    iGiveNums = ((int)(fMoney / 5) % 20) / 5;
    if (iGiveNums > 0)
    {
        iNums = iNums + iGiveNums;
    }
    printf("小明一共买了%d支玫瑰", iNums);
    return 0;
}

练习四:输入3个双精度实数,分别求出它们的和、平均值、平方和以及平方和的开方,并输出所求出各个值。

#include <stdio.h>
#include <stdlib.h>
#include <math.h> // 记得导入数学库函数

/**
 * 输入3个双精度实数,分别求出它们的和、平均值、平方和以及平方和的开方,并输出所求出各个值。
 *
 * @Author 陈淦森
 * @Version 1.0.1
 * @Date 2016年1月18日
 */
int main()
{
    double dA, dB, dC;
    printf("请输入3个双精度实数,以空隔分开:");
    scanf("%lf %lf %lf", &dA, &dB, &dC);
    double dSum, dAvg; // 求和与平均值
    dSum = dA + dB + dC;
    printf("和是:%lf\n", dSum);
    dAvg = dSum / 3;
    printf("平均值是:%lf\n", dAvg);
    double sqreSum; // 平方和
    sqreSum = dA * dA + dB * dB + dC * dC;
    printf("平方和值是:%lf\n", sqreSum);
    double sqrtSum; // 平方和的开方
    sqrtSum = sqrt(sqreSum);
    printf("平方和的开方值是:%lf\n", sqrtSum);
    return 0;
}
总结:需要导入<math.h>头文件。

练习五:写一个程序把极坐标(r,θ) (θ单位为度)转换为直角坐标( X,Y)。转换公式是: x=r.cosθ   y=r.sinθ

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define PI 3.1415926

/**
 * 写一个程序把极坐标(r,θ) (θ单位为度)转换为直角坐标( X,Y)。转换公式是:
 *       x=r.cosθ
 *       y=r.sinθ
 *
 * @Author 陈淦森
 * @Version 1.0.1
 * @Date 2016年1月18日
 */
int main()
{
    double dR, dAngle, dX, dY;
    printf("请输入半径与角度的值:");
    scanf("%lf %lf", &dR, &dAngle);
    dX = dR * cos(dAngle / 180 * PI);
    dY = dR * sin(dAngle / 180 * PI);
    printf("X,Y座标分别是:%lf,%lf\n", dX, dY);
    return 0;
}


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值