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

    0.展示PTA总分
    顺序结构

    分支结构

    1.本章学习总结

    1.1学习内容总结

    1.学会了注释要用注释符:/* */

       '''
        int celsius,fahr;/*定义两个整型变量,celsius表示摄氏度,fahr表示华氏度*/
        fahr=100;/*对变量fahr赋值*/
        celsius=5*(fahr-32)/9;/*温度转换计算*/
       '''
    

    2.学习了几个c语言中常用的数据类型

        int(整型)、char(字符型)、float(单精度浮点型)、double(双精度浮点型)
        float和double区别:double型数据占用空间更大,精度更高,取值范围更大。
        浮点型数据:%f(保留6位小数)、%.2f(保留2位小数)
    

    3.学习了几个运算符

        双目算术运算符:+(加)、-(减)、*(乘)、/(除)、%(求余)
        关系运算符:<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、==(等于)、!=(不等于)
        逻辑运算符:!(非)、&&(与)、||(或)
    

    4.学会使用if-else语句

    ```
       if (x >= 0)
    {
    	y = sqrt(x);
    }
    else
    {
    	y = pow(x + 1, 2) + 2 * x + 1.0 / x;
    }
     ```
    

    5.学会了格式化输入函数

        变量名前加&,如&x。
        格式控制说明:int型数据使用%d,float型数据使用%f,double型数据使用%lf.
    

    6.学习了几个常用数学函数

        平方根函数sqrt(x)。如sqrt(4.0)的值为2.0。
        绝对值函数fabs(x)。如fabs(-3.56)的值为3.56。
        幂函数pow(x)。如pow(1.1,2)的值为1.21。
        指数函数exp(x)。如exp(2.3)的值为9.974182。
        以e为底的对数函数log(x)。如log(123.45)的值为4.815836。
    

    7.学习了for语句

        for语句中的fahr++相当于fahr=fahr+1。
        for(表达式1;表达式2;表达式3)
              循环体语句
        例:
        ```
            for (i = 1; i <= n; i++)
    {
    	number = number * 10 + a;
    	sum = sum + number;
    }
        ```
    

    8.学会了二分支结构和多分支结构

    二分支结构一般形式:

            if (表达式)
                语句1;
            else
                语句2;
            例:
        ```
                if (x % 2 == 0)
        {
    	printf("yes");
        }
            else
        {
    	printf("no");
        }
        ```
    

    多分支结构的一般形式:

            if (表达式1)
                语句1;
            else if (表达式2)
                语句2;
            ...
            else if (表达式n-1)
                语句n-1;
            else
                语句n;
            例:
        ```
                if (x >= 90
            {
    	printf("A");
         }
            else if (x < 90 && x >= 80)
         {
    	printf("B");
         }
            else if (x < 80 && x >= 70)
         {
    	printf("C");
         }
            else if (x < 70 && x >= 60)
         {
    	printf("D");
         }
            else if (x < 60)
         {
    	printf("E");
         }
        ```
    

    9.学习了字符型数据

        字符型常量表示如:'a'、'9'、'$'
        字符型变量:定义时用类型名char,例如:char  op;
    

    10.学会了swith语句

    1.每个语句段中都使用break语句,一般形式为:

            swith (表达式) {
                    case  常量表达式1:语句段1; break;
                    case  常量表达式2:语句段2; break;
                                    ...
                    case  常量表达式n:语句段n; break; 
                    default:                     语句段n+1; break; 
            }
            例:
        ```
            switch (month)
    	{
    	case 01:
    		days = day;
    		break;
    	case 02:
    		days = 31 + day;
    		break;
    	case 03:
    		days = 31 + 29 + day;
    		break;
    	case 04:
    		days = 31 * 2 + 29 + day;
    		break;
    	case 05:
    		days = 31 * 2 + 30 + 29 + day;
    		
    		break;
    	case 06:
    		days = 31 * 3 + 30 + 29 + day;
    		
    		break;
    	case 07:
    		days = 31 * 3 + 30 * 2 + 29 + day;
    		
    		break;
    	case 8:
    		days = 31 * 4 + 30 * 2 + 29 + day;
    		
    		break;
    	case 9:
    		days = 31 * 5 + 30 * 2 + 29 + day;
    		
    		break;
    	case 10:
    		days = 31 * 5 + 30 * 3 + 29 + day;
    		
    		break;
    	case 11:
    		days = 31 * 6 + 30 * 3 + 29 + day;
    		
    		break;
    	case 12:
    		days = 31 * 6 + 30 * 4 + 29 + day;
    		
    		break;
    	}
            ```
    

    2.不使用break语句,一般形式为:

             swith (表达式) {
                    case  常量表达式1:语句段1; 
                    case  常量表达式2:语句段2; 
                                    ...
                    case  常量表达式n:语句段n; 
                    default:                     语句段n+1;  
            }
    

    11.学习了嵌套的if-else语句

            一般形式为:
            if (表达式1)
                    if (表达式2) 语句1;
                    else   语句2;
            else
                    if (表达式3) 语句3;
                    else   语句4;
            例:
            ```
              if (x>=85 && y>=55 && z>=55 && m>=85 && x+y+z+m>=305)
    	if (x + y + z + m >= 370)
    	{
    		printf("A");
    	}
    	else
    	{
    		printf("B");
    	}
         else
           {
    	printf("C");
           }
            ```
            else和if的匹配原则:
                else与最靠近它的、没有与别的else匹配过的if相匹配。
    

    1.2本章学习体会

    通过这两三周的学习,让我初步了解了c语言,学会了一些简单的编程,不在像假期那样一无所知。随着知识的不断深入,我渐渐感觉到了有点吃力,开始问同学,希望在以后我能慢慢追赶上来!

    pta上的题目让我改正了许多编程上的错误和不规范,同时也让我对vs的使用更加熟练。

    我的代码量

            4,5周:535行
    

    2.PTA实验作业

    2.1 判断一个三位数是否为水仙花数

    2.1.1数据处理

            1.定义整型数据个位g、十位s、百位b、输入数据N。
            2.输入一个整数N。
            3.利用表达式g = N % 10;s = N / 10 % 10;b = N / 100;算出个位、十位、百位。
            4.利用嵌套的if-else结构判断输入的数是否是水仙花数。先判断是否是三位数,若是,则继续判断是否是水仙花数;若是水仙花数,输出Yes,若不是,输出No;若不是三位数,输出Invalid Value!
    

    2.1.2代码截图


    2.1.3本题可扩展功能

                本题还可用swith语句替换嵌套的if-else语句。
    

    2.1.4PTA提交列表及说明

                虽然一次就提交成功,但是是在同学的帮助下在VS上经过多次调试最终才搞定的!
    

    2.2 输出三角形面积和周长

    2.2.1数据处理

             1.定义整型变量边长a、b、c和浮点型变量area、s、perimeter。
             2.输入边长a、b、c。
             3.运用if-else结构判断是否是三角形。若是,则运用公式area=√​s(s−a)(s−b)(s−c)​​,其中s=(a+b+c)/2算出area和perimeter,保留两位小数输出area和perimeter;若不是三角形,输出These sides do not correspond to a valid triangle。
    

    2.2.2代码截图

    2.2.3本题可扩展功能

                本题可判断是否是直角三角形
    


    2.2.4PTA提交列表及说明

            一开始公式写错,我通过观察,又添加监视之后找到错误。
            后来又是有一个小数位数不对,我通过调试之后发现错误。
    

    2.3 判断偶数

    2.3.1数据处理

             1.定义整型变量a、yes、no。
             2.输入一个整数a。
             3.运用if-else结构判断是否是偶数。若是,输出yes;若不是,输出no。
    

    2.3.2代码截图

    2.3.3本题可扩展功能

               本题可判断是否为奇数
    

    2.3.4PTA提交列表及说明

            一开始编译错误,后来问了同学才改过来;
            然后又通过VS调试才改正确。
    

    3.阅读代码


    功能:把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?
    优点:有注释;代码结构整齐紧凑;变量名规范;大括号换行规范。

  • 相关阅读:
    移动端 css 禁止长按屏幕选中
    找到并替换 字符串中最后一个(不一定是末尾最后一个) 指定字符
    event.preventDefault() 解决按钮多次点击 导致页面变大
    history.go(-1)在不同浏览器中的解析
    clean-css 安装 使用
    Objective-C通过联合存储为类增加属性及原理解析
    IOS-CGAffineTransformMake 矩阵变换 的运算原理
    iOS--inputView和inputAccessoryView
    Objective-C中的@Property详解
    Objective-C--Runtime机制
  • 原文地址:https://www.cnblogs.com/201218zx/p/11629156.html
Copyright © 2011-2022 走看看