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

    0.展示PTA总分

    1.本章学习总结

    1.1 学习内容总结

    1.学习了if--else,else--if的分支嵌套结构

    if (判断条件)
    {
      执行语句1;
    }
    else
    {
       执行语句2;
    }//用来实现二分支的语句
    
    if(判断条件1)
    {
       执行语句1;
    }
    else if(判断条件2)
    {
       执行语句2;
    }
    ·····
    else
    {
       执行语句n;
    }//用来判断多分支语句
    
    if(判断条件1)
    {
       if(判断条件1.1)
       {
          执行语句;
       }
       else
       {
          执行语句;
       }
    }
    else
    {
       执行语句;
    }//用来实现嵌套语句
    

    2学习了for循环

    for(表达式1;判断条件;表达式2)
    {
        循环体语句;
    }//先执行表达式1,再判断条件成立,执行循环体语句,执行表达式2,然后回到for判断条件,循环下去,直到判断条件不成立
    

    3学习了switch语句

    switch(表达式)
    {
        case 常量表达式1:
               执行语句;
         break;
        case 常量表达式2:
                执行语句;
         break;
        case 常量表达式n:
                  执行语句;
         break;
         default:
                  执行语句;
          break;
    }//这种与if语句差不多,但这种只能表达具体的值,不能表示范围;switch判断的是整形,而if判断的是整形或浮点数;并且这种效率更高
    

    4学习了字符型数据

    {
        char op;//用来定义字符型变量,char为类型名,op为字符型变量
        scanf("%c",&op);
        printf("%c",op);//字符型输入输出的第一种方法,调用时用%c,注意:空格也会被读成字符型变量
        op=getchar();//字符型数据的输入,需要注意的是一次只能调用一个字符,调用多个字符是可以用循环调用
        putchar (op);//输出存放在op中的字符型数据
    }
    

    1.2本章学习体会

    1:在学习过程中,只要我预习了,跟上老师节奏还不是问题,也在过程中逐渐感受到了计算机的魅力,虽然有点难,但代码通过的一瞬间还是非常高兴的;也基本了解了老师的讲课风格,逐渐适应了大学生活;

    2:第一周代码量为421行,第二周为611行;

    PTA实验作业

    2.1 题目名1

    编写一个程序,要求用户输入24小时制的时间,然后显示12小时制的时间。

    输入格式:
    输入在一行中给出带有中间的:符号(半角的冒号)的24小时制的时间,如12:34表示12点34分。当小时或分钟数小于10时,均没有前导的零,如5:6表示5点零6分。

    提示:在scanf的格式字符串中加入:,让scanf来处理这个冒号。

    输出格式:
    在一行中输出这个时间对应的12小时制的时间,数字部分格式与输入的相同,然后跟上空格,再跟上表示上午的字符串AM或表示下午的字符串PM。如5:6 PM表示下午5点零6分。注意,在英文的习惯中,中午12点被认为是下午,所以24小时制的12:00就是12小时制的12:0 PM;而0点被认为是第二天的时间,所以是0:0 AM。

    2.1.1数据处理

    数据表达:用了int hour, int minute,char op;这些变量
    数据处理:先判断是否小于12或大于等于0点,在这个范围里则原样输出,然后判断12这个特殊的时间点,原样输出但时间为下午,其他的则为下午时间,小时减去12

    2.1.2代码截图

    2.1.3扩展

    可以将每个小时,分钟都占2个宽度,不够用0补;写法便把输出改为%02d便可以

    2.1.4PTA提交列表及说明


    问题:第一次做时就是那个字符串我想用字符型数据来输出,结果总是错误
    解决:我们也没学过字符串,最后发现直接用输出AM PM就ok
    问题:在边界点12点,0点的地方错误
    解决;将12点直接分开来

    题目名2

    输入三个整数x,y,z,请把这三个数由小到大输出。

    2.1.1数据处理

    数据表达:用了四个整型x,y,z,item变量,item变量用来暂时存储值,将两个变量交换
    数据处理:通过输入三个数,不断比较大小,交换数值,从而输出按x,y,z从大到小的顺序

    2.1.2代码截图

    2.1.3扩展

    1.循环输入未知个数,直到输入0为止, 然后将这些数中最大的一个数输出;
    解决:制造一个循环,循环输入,比大小,直到0,最后输出最大的值

    2.1.4PTA提交列表及说明


    问题:第一次遇见这种题时,我脑中还没有这种思路,便按照一个一个的比较,一个一个的if语句,后面实在写不下去了
    解决:手机百度,发现这种思路挺好,提高了不少效率,便按照她的思路来,虽然有一点语法错误,但通过编译器便调整出来了

    题目名3(用这题的原因并不是难,而是她的扩展广泛)

    本题要求编写程序,根据输入的三角形的三条边a、b、c,计算并输出面积和周长。注意:在一个三角形中, 任意两边之和大于第三边。三角形面积计算公式:area=√​s(s−a)(s−b)(s−c)​​ ,其中s=(a+b+c)/2。

    2.1.1数据处理

    数据表达:用了简单的 int a,b,c,s; double area,perimeter;分别计算出周长,面积,得出答案
    数据处理: 用到了题目给的表达式,直接就出来了

    2.1.2代码截图

    2.1.3扩展

    1.可以将三角形变为等腰或直角或其它的三角形
    解决:将if中的条件改变成题目需要的条件
    2.可以将三角形变成四边形或五边形,甚至多边形
    解决:有明确的边数时, 直接运用面积公式来求解,多边形时则用循环统计边数,用面积公式求解
    3.将整数边变为小数
    解决:将类型变为double

    2.1.4PTA提交列表及说明


    问题:周长我一直认为是个整数,调试也没有问题
    解决:没办法了,找室友帮我看出来的

    阅读代码


    分析:用if判断形成三角形的条件,否则输出0;在用循环判断出三个最大的数,运用题目三 的公式计算面积;这只是我用我学过的来解释,当然题目肯定不像这样,还有就是我一个也看不懂ACM

  • 相关阅读:
    win7安装ruby on rails开发环境
    ZOJ 3802 Easy 2048 Again 像缩进DP
    【IOS】 遍历info 所有内容 && 唯一的节能设备UUID
    IBM即将倒闭,微软也从崩溃18个月
    F4107Usart数据处理程序
    Samza/KafkaAnalysizing
    krpano音量控制(我们已经转移到krpano中国网站 krpano360.com)
    使用Visual Studio创建映像向导(Image Sprite)——Web Essential
    C#控件系列--文本类控件
    Java Swing 探索(一)LayoutManager
  • 原文地址:https://www.cnblogs.com/200157zy/p/11626505.html
Copyright © 2011-2022 走看看