7-11 分段计算居民水费 && 7-12 两个数的简单计算器 && 7-26 单词长度

为鼓励居民节约用水,自来水公司采取按用水量阶梯式计价的办法,居民应交水费y(元)与月用水量x(吨)相关:当x不超过15吨时,y=4x/3;超过后,y=2.5x−17.5。请编写程序实现水费的计算。

输入格式:
输入在一行中给出非负实数x。

输出格式:
在一行输出应交的水费,精确到小数点后2位。

输入样例1:
12
输出样例1:
16.00
输入样例2:
16
输出样例2:
22.50

// 题目链接  https://pintia.cn/problem-sets/14/exam/problems/791
#include<bits/stdc++.h>
using namespace std;
int main(){
    double x,f;  // 必须是double
    scanf("%lf",&x);
    if(x<=15){
        f = 4 * x / 3;
    }else{
        f = 2.5*x - 17.5;
    }
    printf("%.2f",f);
    return 0;
}

--------------------------------------------------------------------------

本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。

输入格式:
输入在一行中依次输入操作数1、运算符、操作数2,其间以1个空格分隔。操作数的数据类型为整型,且保证除法和求余的分母非零。

输出格式:
当运算符为+、-、*、/、%时,在一行输出相应的运算结果。若输入是非法符号(即除了加、减、乘、除和求余五种运算符以外的其他符号)则输出ERROR。

输入样例1:
-7 / 2
输出样例1:
-3
输入样例2:
3 & 6
输出样例2:
ERROR

// 题目链接  https://pintia.cn/problem-sets/14/exam/problems/792
#include<bits/stdc++.h>

using namespace std;

int main() {
    int a, b;
    char c;  //操作符
    int result;
    scanf("%d %c %d", &a, &c, &b);
    switch (c) {
        case '+':
            result = a + b;
            printf("%d", result);
            break;
        case '-':
            result = a - b;
            printf("%d", result);
            break;
        case '*':
            result = a * b;
            printf("%d", result);
            break;
        case '/':
            result = a / b;
            printf("%d", result);
            break;
        case '%':
            result = a % b;
            printf("%d", result);
            break;
        default:
            printf("ERROR");
    }
    return 0;
}

----------------------------------------------------------------------

你的程序要读入一行文本,其中以空格分隔为若干个单词,以.结束。你要输出每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如it’s算一个单词,长度为4。注意,行中可能出现连续的空格;最后的.不计算在内。

输入格式:
输入在一行中给出一行文本,以.结束

提示:用scanf(“%c”,…);来读入一个字符,直到读到.为止。

输出格式:
在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。

输入样例:
It’s great to see you here.
输出样例:
4 5 2 3 3 4

// 题目链接  https://pintia.cn/problem-sets/14/exam/problems/806
#include<bits/stdc++.h>

using namespace std;

int main() {
    char c;
    int count=0;
    while(1){
        int a=0;
        scanf("%c",&c);
        while(c!='\n' && c!=' '&& c!='.'){
            a++;
            scanf("%c",&c);
        }
        if(a!=0){
            count++;
            if(count==1) printf("%d",a);
            else printf(" %d",a);
        }
        if(c=='.') break;
    }
    return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值