zoukankan      html  css  js  c++  java
  • C博客作业01分支、顺序结构

    0.展示PTA总分



    1.本章学习总结

    1.1 学习内容总结

    基本语法

    库函数一些必须信息在头文件中声明
    调用输入输出函数#include<stdio.h>
    调用数学函数#include<math.h>
    常用:
    平方根sqrt(x)
    绝对值fabs(x)
    幂函数pow(x,n)
    e为底指数函数exp(x)
    以e为底的对数函数log(x)

    scanf(“”)

    • 若有输入字符型变量,(例:%d%c%d),输入数据之间不能出现空格或其他字符(例:%d %c %d),否则也认定为输入的字符
      输入浮点型变量
    • double对应%lf;float对应%f(无精度控制)

    printf(“”)

    • 输出浮点型变量(例%.1f保留一位小数)
    • 输出格式控制时(例:%-4d输出宽度为4长度不够后补空格)%4d前补空格
      %外原样输出;%内针对变量输出

    分支结构

    if-else语句

    • 字符型变量应用于if—else语句,条件中需用' '(例:if(op=='+'))
    • else后不加表达式

    多分支if-else语句

    • else if后需加表达式

    for循环语句

    • 循环体语句若需多条用{}框起

    switch语句

    • case后不能写条件只能跟常量
    • 注意break用法

    拓展语法

    2. rand()随机函数不放在头文件#include<studio.h>中,而是放在#include<stdlib.h>中,但每次产生的随机数组相同;
    srand(time(NULL))随机种子每次产生不同的随机数组,time调用函数#include<time.h>中```
    
    ## 1.2 本章学习体会
    * 感受:经过两周的C语言学习,从几乎0基础的小白到能够理解基本语法及分支结构等,能够写出程序、运行程序,虽然过程有时繁杂,但C语言编程的结果确实让人十分有成就感和满足感。在学习过程中我深刻的体会到老师口中C语言就是要不断练习实践这句话的真实,真正的错误只有在打完代码后才能被揪出并深刻记忆。面对大体找不出的错误,学习运用了逐句调试,应用vs编写代码。
    * 不理解:for循环语句中空语句意义及作用,何时运用
    * 建议:面对拓展的语法知识,希望可以在vs上分别打出代码,了解实际应用
    * 代码量:(pta中除去部分语句更改)代码量大概为819(从9月1日起)
    
    ***
    # 2.PTA实验作业
    ## 2.1 7-10 计算天数
    ### 2.1.1 数据处理
    * 数据表达:都为整型
    1. int year;是否闰年判断
    2. int month;月份判断
    3. int date;日期最终累加到sum中
    4. int i;累计月份判断天数
    5. int sum;累计天数总和
    * 数据处理:
    scanf输入语句;for循环语句;多分支if-else语句;printf输出语句
    
    ### 2.1.2 代码截图
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191005230720618-1758899783.jpg)
    
    ### 2.1.3 本题可扩展功能
    首先判断所输入日期是否合理后再计算天数
    
    ### 2.1.4 PTA提交列表及说明
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191005234253203-925020683.jpg)
    * Q1:如何处理不同月份对应相应天数
    * A1:利用分支结构,将天数相同的月份并入同一个执行条件中,并讨论闰年2月问题
    * Q2:怎样使月份逐步添加到输入数据后停止
    * A2:循环结构for(i=1;1<=digit;i++)分号隔开
    
    ## 2.2 7-6 出租车计价
    ###  2.2.1 数据处理
    * 数据表达:
    1. int startMileage;起步里程
    2. int startFee;起步价
    3. double mileage;(浮点型)行驶路程
    4. int waitTime;等待时间判断是否临时停车收费
    5. int fee;总费用
    * 数据处理:
    scanf输入语句;多分支if-else语句;嵌套if-else语句;printf输出语句
    
    ### 2.2.2 代码截图
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191005231058446-1859644599.jpg)
    
    ### 2.2.3 本题可扩展功能
    比拟为共享单车(或其他按公里数计费的交通工具)的收费制度
    
    ### 2.2.4 PTA提交列表及说明
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191005234002043-1188251080.jpg)
    * Q1:刚开始不知道如何处理四舍五入问题
    * A1:应为是整型数据最终结果只能是整数,计算数据加上0.5后达到四舍五入效果
    * Q2:不及五分钟不收费问题如何表达
    * A2:输出整型数据,所经过时间/5,则不及五分钟输出结果为0
    
    ## 2.3 7-12 判断一个三位数是否为水仙花数 
    ### 2.3.1 数据处理
    * 数据表达:
    1. int digit;输入整数
    2. int hundred;计算百位
    3. int ten;计算十位
    4. int bits;计算个位
    * 数据处理:
    scanf输入语句;多分支if-else语句;嵌套if-else语句;printf输出语句
    
    ### 2.3.2 代码截图
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191005230935529-1500828131.jpg)
    ### 2.3.3 本题可扩展功能
    找出三位数(或更多位数)的所有水仙花数
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191007171836652-198216574.jpg)
    
    
    
    ### 2.3.4 PTA提交列表及说明
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191005233257183-150531973.jpg)
    * Q1:比较符号应用错误
    * A1:相等为==
    * Q2:如何控制数据范围
    * A2:将变量范围大小列出每句用&&分隔
    
    ***
    # 3.阅读代码
    [xinz](https://www.nowcoder.com/ta/acm-solutions/review?tpId=20&tqId=13026&query=3979&asc=true&order=&page=1)
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191006160826637-1300590680.jpg)
    * 代码理解:应用gcd函数求两个正整数最大公约数,lcm函数求最小公倍数,求两分数之和,输入为EOF时结束,没有完全理解步骤,太绕(例:n=a*(m/b)+c*(m/d);else   n=a*(m/b)-c*(m/d);)
    ![](https://img2018.cnblogs.com/blog/1778470/201910/1778470-20191007164503625-1441836791.jpg)
    * 优点:条件判断详细,有逻辑感,多嵌套if-else语句可读性强
    
    
    ***
  • 相关阅读:
    poj 2485 Highways 最小生成树
    hdu 3415 Max Sum of MaxKsubsequence
    poj 3026 Borg Maze
    poj 2823 Sliding Window 单调队列
    poj 1258 AgriNet
    hdu 1045 Fire Net (二分图匹配)
    poj 1789 Truck History MST(最小生成树)
    fafu 1181 割点
    减肥瘦身健康秘方
    人生的问题
  • 原文地址:https://www.cnblogs.com/sixiDL000/p/11625687.html
Copyright © 2011-2022 走看看