第六周作业

7-1 高速公路超速处罚
1.实验代码

#include <stdio.h>
int main()
{
    int chesu,xiansu;
    scanf("%d %d",&chesu,&xiansu);
    if (chesu<xiansu*1.1f)
       {printf("OK");
       }
    if (chesu>=xiansu*1.5f) 
        {printf("Exceed %.0f%%. License Revoked",(((chesu-xiansu)*1.0f)/xiansu*100));
        }
    else if (chesu>=xiansu*1.1f)
       {printf("Exceed %.0f%%. Ticket 200",(((chesu-xiansu)*1.0f)/xiansu*100));
       }
    
}

2.设计思路

(1)
第一步:定义两个整数chesu,xiansu。
第二步:判断当车速小于限速乘以1.1时输出OK。
第三步:判断当车速大于等于限速乘以1.5时输出“Exceed x%. License Revoked”。
第四步:判断当车速不大于等于限速乘以1.5且车速大于等于限速乘以1.1时输出“Exceed x%. Ticket 200”。

(2)
1237794-20171109192615184-1026658797.jpg
3.问题
输出时同时出现了两种答案,经改变if条件位置后答案正确。
4.PTA提交列表
1237794-20171107203658184-70648345.jpg

7-2 计算油费
1.实验代码

#include<stdio.h>
int main()
{
    int a,b;
    float m,e,b1;
    char c;
    scanf("%d %d %c",&a,&b,&c);
    if((c-105)>0)
        {
            m = 0.95;
        }else
        {
            m = 0.97;
        }
    switch(b){
        case 90: b1 = 6.95;break;
        case 93: b1 = 7.44;break;
        case 97: b1 = 7.93;break;
    }
    e = a * b1 * m;
    printf("%.2f",e);
}

2.设计思路

(1)
第一步:定义整数加油量a汽油种类b。
第二步:定义浮点m,e汽油价格b1。
第三步:定义字符服务类型c。
第四步:判断字符ASCII是否大于105得到优惠。
第五步:转换b1得到油价。
第六步:计算得到油费e。
第七步:输出油费e。

(2)
1237794-20171109192629856-257711485.jpg
3.问题
无问题。
4.PTA提交列表
1237794-20171108185356872-1107939997.jpg

7-3 比较大小
1.实验代码

#include<stdio.h>
int main()
{
    int a,b,c;
    int f,s,t;
    scanf("%d %d %d",&a,&b,&c);
    if(a<b)
        {
            if(c>b)
                {
                    f = c;
                    s = b;
                    t = a;
                }else
                {
                    if(a<c)
                        {
                            f = b;
                            s = c;
                            t = a;
                        }else
                        {
                            f = b;
                            s = a;
                            t = c;
                        }
                }
        }else
        {
            if(a>c)
                {
                    if(b>c)
                        {
                            f = a;
                            s = b;
                            t = c;
                        }else
                        {
                            f = a;
                            s = c;
                            t = b;
                        }
                }else
                {
                        f = c;
                        s = a;
                        t = b;
                }
        }
    printf("%d->%d->%d",t,s,f);
}

2.设计思路

(1)
第一步:定义任意3个整数a,b,c输入。
第二步:定义按顺序输出的三个整数f,s,t。
第三步:判断a是否小于b①。
第四步:①→判断c是否大于b②→②按顺序输出cba。
第五步:②→判断a是否小于c③→③按顺序输出bca→③按顺序输出bac。
第六步:①→判断a是否大于c④→④按顺序输出cab。
第七步:④→判断b是否大于c⑤→⑤按顺序输出abc→⑤按顺序输出acb。

(2)
1237794-20171109194510841-1899036367.jpg
3.问题
无问题。
4.PTA提交列表
1237794-20171108191422231-737327572.jpg

7-4 两个数的简单计算器
1.实验代码

#include<stdio.h>
int main()
{
    char c;
    int a,b,d;
    scanf("%d %c %d",&a,&c,&b);
    switch(c)
    {
        case '+': d = a + b;printf("%d",d);break;
        case '-': d = a - b;printf("%d",d);break;
        case '/': d = a / b;printf("%d",d);break;
        case '*': d = a * b;printf("%d",d);break;
        case '%': d = a % b;printf("%d",d);break;
        default : printf("ERROR");break;
    }
}

2.设计思路

(1)
第一步:定义字符运算符c。
第二步:定义操作数1a,操作数2b,运算结果d。
第三步:转换相应字符进行计算并输出结果d。
第四步:转换无对应字符输出ERROR。

(2)
1237794-20171109201113247-93988493.jpg
3.问题
非指定字符输出时同时出现两种结果,将输出语句加在d运算公式后,输出结果正常。
4.PTA提交列表
1237794-20171108192327044-265754043.jpg

要求三
1.git地址
https://git.coding.net/z732511533/ZYS.git
2.截图
1237794-20171111210326169-1551189935.jpg
1237794-20171111210456966-386907959.jpg

要求四
1.学习内容
学习了if语句的嵌套,switch语句。
2.难点,知识点
if语句的连续嵌套和else对应容易混乱,if条件的规范书写容易出错。
3.建议或意见
我认为上课形式很好,没有意见。

要求五
1.点评
于耀淞:http://www.cnblogs.com/jsjyys/p/7818602.html
王姝雯:http://www.cnblogs.com/phsudie/p/7801346.html
徐铭博:http://www.cnblogs.com/xmb1547828350/p/7796034.html
2.表格,流程图

时间代码行数时间1(min)博客字数时间2(min)知识点
11.051003000
11.061503500switch语句,while语句
11.07802000switch语句,while语句
11.102004000for语句
11.1118040609116for语句,while语句

1237794-20171111215743513-1083714135.jpg

转载于:https://www.cnblogs.com/2017023960ZYS/p/7800966.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值