• c博客作业01分支、顺序结构 1911


    0.展示PTA总分。


    1.0本章学习总结。

    1.1学习内容总结

    1.计算分段函数(做判断),需要使用if-else,配合六种双目运算符;

    2.在程序代码中,适当采用缩进的书写格式,使程序结构清晰;

    3.在程序中加入适当的输入提示;

    4.在调用scanf()函数输入多个数据时,需要多个输入参数和格式控制说明,且需要一一对应;

    5.在输入格式控制说明中,可加宽度限定词,指定数据的输出宽度。如:整型数据的输入格式控制说明%md,指定数据输出宽度为m(包括符号位);

    6.如果循环体语句由多条语句组成,必须用大括号括起来,变成一条复合语句;

    7.在多分支中经常使用if语句的嵌套;

    8.运算符为字符型,字符型在定义时用类型名char,函数getchar()和函数putchar()只能处理单个字符的输入和输出;

    9.三种逻辑运算符:逻辑非!,逻辑与&&,逻辑或||;

    10.在switch语句中,表达式和常量表达式的值一般为整型或字符型,default可以省略,但需要break语句终止switch语句的继续执行或者switch语句一直执行到结束;

    11.else和if的匹配准则:else与最靠近它的、没有与别的else匹配过的if相匹配;

    12.有符号位 int 的范围是 -2147483648—2147483647,无符号位 int 的范围是 0—4294967295,能实现部分 10 位自幂数的计算。使用高精度计算,可以得到超过 int 类型上限的自幂数。

    1.2本章学习体会

    1.学习之路依旧漫长;

    2.搞不懂为什么时常会出现这种情况: warning: ignoring return value of ‘scanf’, declared with attribute warn_unused_result [-Wunused-result]

    scanf("%d", &N);
    ^~~~~~~~~~~~~~~

    3.这两周的代码量大约在1700行左右,与预期相差甚大,必须努力了。

    2.PTA实验作业

    **2.1题目名:7-6 出租车计价 **

    2.1.1数据处理

    数据表达:用到了整型int(x用于过渡)和双精度浮点型double(distance、wait、price);

    数据处理:利用数学函数写出表达式,再通过表达式写出含有if-else的运算过程。

    2.1.2代码截图

    2.1.3本题可拓展功能

    在不同时间段的起步价和其他收费标准不同,比如说:在上下班高峰期,时间收费方面下调或上涨一定幅度,起步价上涨,存在跨时间段的载客(比如乘客上车时是上下班高峰期,在途中过了上下班高峰期,在这个跨时间段期间,收费标准发生变化)。

    2.1.4PTA调试列表及说明


    (PTA的列表虽然是一次过的,但是,这是在vs中调试几遍过后才得到的。)

    Q1:老是出现编辑错误

    A1:后来发现是逻辑与的使用错误,比如:distance>3&&distance<=10,总是习惯性的写成3<distance<=10(感觉被数学带坏了)

    Q2:改完逻辑与之后就又出现了答案错误,一脸懵,反复看了几遍代码,感觉没有错误

    A2:之后就在群里看到了有人在问这个问题,然后就有人指出需要把printf()中的“%lf”改为“%.0f”,然后,这个问题就这么愉快地解决了

    2.2题目名:7-12 判断一个三位数是否为水仙花数

    2.2.1数据处理

    数据表达:只用到了整型int(N、B、T、H),根据英译汉的首字母进行定义;

    数据处理:挨个将N的个位、十位、百位提取出来,然后,进行编译。

    2.2.2代码截图

    2.2.3本题可拓展功能

    1.简易拓展:把三次方改为其他(比如根号,或者进行不同的运算);

    2.模仿课本内的随机数原理,将代码改为由计算机出一组随机数,然后进行判断。

    2.2.4PTA调试列表及说明


    (该题老师课上有进行简略说明,再经过vs的调试)

    Q1:为什么不定义个位十位百位,直接在if()内进行运算会出现编辑错误

    A1:怎么说呢,这个问题我还是没有解决,但是,通过挨个进行定义,然后,就对了,所以,个人认为,可能是在一连串的运算中忽略了某个值,因此出现错误

    2.3题目名:7-7 三个数由小到大输出

    2.3.1数据处理

    数据表达:整型int(x、y、z、t(t是中间过渡量)),根据题意而来;

    数据处理:用if语句将其表达。

    2.3.2代码截图

    2.3.3本题可拓展功能

    利用四则运算和数学函数,对x、y、z进行运算,使其变为其他值再进行比较;或者,将x、y、z改为随机数,由计算机出数;再或者将其中的一个改为随机数,在与其他两个数进行比较,再适当加入数学运算。

    2.3.4PTA调试列表及说明

    Q1:常出现编辑错误和答案部分正确

    A1:提交列表中的这些错误,基本都是对于空格的处理,在vs中、vs中会出现scanf()的问题,应该是sdl为关。

    3.阅读代码

    题目:

    代码:

    优点及可学习的方面:

    1.用上数组;

    2.使用字符输入函数getchar()和putchar();

    3.使用while语句以及while语句与if语句的嵌套;

    4.if()中有变量和表达式;

    5.用上了for循环语句。

  • 相关阅读:
    gitlab 安装升级
    fping 命令
    sed 命令
    rm 命令
    sort 命令
    第十六单元
    第十五单元
    第十三单元
    第十二单元
    第十一单元
  • 原文地址:https://www.cnblogs.com/linwei18159070920/p/11627369.html
Copyright © 2020-2023  润新知