zoukankan      html  css  js  c++  java
  • 顺序分支结构

    这个作业属于哪个班级 C语言--网络2011/2012
    这个作业的地址 C博客作业00--顺序分支结构
    这个作业的目标 初步认识C语法,掌握数据表达、printf、scanf语法及分支结构内容。

    0.PTA作业展示

    1.本章学习总结

    1.1学习内容总结

    1. 浮点数类型的变量,输入一个数并存放进变量,控制格式符要用"%lf",输出要用"%f";整数型变量输入输出均用"%d"。
    
    scanf("%lf",&a) 
    printf("%f",a)
    
    
    
    scanf("%d",&b)
    printf("%d",b)
    
    
    1. rand() 用来生成一个随机数
    
    srand(time(0));//生成不同的种子
    num=rand()%100;//生成一个随机数,0~99之间
    
    

    注:求余运算符取整型数据进行运算,不能用于实数型数据的运算

    1. 定义字符型变量要用到 cahr ,表示字符型常量要用单引号('')括起来
    • 'A'、' '、'?'、' '等等均为字符型常量
    
    char op;
    op='a';//将字符型常量'a'赋值给字符型变量op
    
    
    1. 求次方的运算 pow()
    
    int x=2;
    f(x)=pow(x,2);//求x的平方
    m(x)=pow(x,4);//求x的四次方
    
    
    1. 学习求平方根、求绝对值
    
    int x=64
    f(x)=sqrt(x);//求X的平方根
    m(x)=fabs(x);//求x的绝对值
    
    
    1. 逻辑“与”和逻辑“或”
    
    if(year%4==0&&year%100!=0)
    
    if(year%4==0||year%100!=0)
    
    

    1.2编程技巧总结

    1. 标志符(flag/sign)的妙用

    标志符的运用,可以在程序运行过程中,针对某些特殊数据,进行有针对性的处理

    
    int flag=0;//先初始化标志符flag
    
    if(表达式1)//对特殊条件的判断
    {
          语句1;//特殊条件下执行的操作
          flag=1;//改变标志符
    }
    if(flag==1)//如果存在有满足特殊条件的
    {
          语句2;//用来输出特殊的值或者执行其他操作
    }
    
    
    1. 对一个整数n,n%10得到它的个位数;n/10去掉它的个位数。
    
    int a,b,c;
    a=123;
    b=a/10;//a去掉个位数后剩下的赋值给b,此时b为12
    c=a%10;//得到a的个位数,并赋值给c,此时c为3
    
    
    1. 在格式可控制说明中的“%”后面紧跟着加上一个数字,可设置输出数据的宽度
    
    printf("%4d",a);//表示输出a的值占四个位子,不够的用空格补
    printf("%6lf",a);//输出结果占六个位子
    
    
    1. 用getchar()来消空格或换行

    2. 判断整除

    
    if(x%a==0)//余数为零即表示能够整除
    {
          语句;
    }
    
    

    1.3本章学习体会

    • 从开学到现在,在老师的带领下,我已经初步对顺序分支结构进行了学习。从日常的刷题的反馈信息来看,我已经对顺序分支结构的语法有了很好的掌握,但顺序分支在题目中的应用技巧还有很大的提高空间,且分支结构中,在哪里设分支,该怎么设分支,我本人的这种应变的思维还远远不足以应对遇到的各种难题,由此在做题时跌过不少跟头。

    • 在这两周的时间中,我每天都会自己敲代码,或是完成老师布置的作业,或是在PTA刷之前没有弄懂的题目,有了更系统的学习之后,回过头来再去会会那些曾经“虐”过我的题目,感觉自己确实变强了,也是挺自豪的。但我深知自己还要坚持敲代码,以提高自己的代码量,提高自己的编程技巧,并不断地去发现新的方法,新的思路!

    2.PTA实验作业

    2.1 前天是哪天

    2.1.1 数据表达&数据处理

    数据表达

    1. 变量year、Month、day用于存放要输入的年、月、日;
    2. 变量preYear、preMonth、preDay用来存放要输出的前一天对应的年、月、日;
    3. 一个int类型的数组表示12个月份;

    数据处理

    1. 分别将对应月份的天数赋值给对应月份;
    2. 判断给出的日期在2号之前还是在2号之后,2号之后,直接天数减2,同年同月。
      2号之前需再判断月份是不是一月,如果是一月那么月份就变成前一年12月,年份对应减一;2号的话前天是上月最后一天,1号的话则是上月倒数第二天

    2.1.2 代码截图


    2.1.3 PTA提交列表及说明

    Q1:输入格式错误,
    A1:将“%d/%d/%d" 中的“/”换成"-"

    Q2:在一号和二号时,求前天的号数出错,原因在于,数组给出的十二个数是1到12
    A2:将十二个数每个均减小1

    Q3:在一号和二号时,求对应月份天数时用了Month
    A3:将Month换成preMonth

    2.2 if-else/for 统计字符

    2.2.1 数据表达和数据处理

    数据表达

    1. 设字符型变量op
    2. 设用于循环的int类型的变量i
    3. 设用来表示字符个数的int类型的变量四个

    数据处理

    1. 将上述表示数量的变量初始化
    2. 设置一个for循环,循环次数为10次;
      每次循环读入一个字符并赋值给op,判断op是字母、数字、空格、还是其他,每判断一个,相应的变量加1

    2.2.2 代码截图

    2.2.3 PTA提交列表及说明

    Q1:逻辑“与”中表达式没有加括号
    A1:在逻辑与中的表达式加括号

    Q1:题目中给出的变量抄错
    A1:将变量改了回来。。。

    Q1:发现在第一步加括号时手抖删了一个等号
    A1:加等号。。

    2.3 单步调试检查错误

    2.3.1 单步调试截图

    2.3.2 代码截图

    2.3.3 PTA提交列表及说明

    Q1:在数据表达时定义的单变量和数组重复,用了同一个month;在for循环中使用的i没有定义

    A1:将两个month用大写加以区分,并定义i

  • 相关阅读:
    做人方法论之---三省身
    大脑的作用
    SpEL 和 jquery 有点像
    Bootstrap 栅格系统
    JS 详解 Cookie、 LocalStorage 与 SessionStorage
    深度学习 机器学习 人工智能
    信息熵是怎样炼成的 | 纪念信息论之父香农
    最小熵原理(一):无监督学习的原理
    思维的基本形式、信息量与熵
    思维的本质是信息处理的过程
  • 原文地址:https://www.cnblogs.com/ly1218/p/13946099.html
Copyright © 2011-2022 走看看