zoukankan      html  css  js  c++  java
  • C语言I作业12—学期总结

    一、我学到的内容(整理本课程所学,[用思维导图的方式]

    二、我的收获(包括我完成的所有作业的链接+收获)不能只有作业链接,没有收获

    收获:熟悉PTA环境,练习简单的输出函数,知道什么叫代码,第一次接触C语言,带着畏惧心理去改正错误。
    
    收获:第一次打出加减乘除代码,还知道什么叫:编译错误,答案错误,格式错误,部分正确;现在回想起来觉的搞笑;
    
     计算公式:C=5×(F−32)/
    
    收获:
    (1)终于看懂题目要求的输出,输入是要干什么了,是请教琛姐才懂得,不容易啊,printf(),scanf()代表什么到这次才明白过来;输出格式:
    在一行中按“interest = 利息”的格式输出,其中利息保留两位小数。这种输出必须是原封不动的输出题目要求。
    (2)计算分段函数,用到if-else语句,还有新的函数(在头文件中包含math.h,并调用sqrt函数求平方根,调用pow函数求幂)
    
    收获:学会李for循环语句,知道运行原理,还有sum求和方法,初始化定义求和sum;
    
    收获:编写函数,使用while语句。掌握其循环的方法,并懂其中的含义;最难的是 水仙花数判断,学会判断语句;
    
    收获:逻辑运算符
    运算符|说明结合性|举例
    &&     与运算,双目,对应数学中的“且”    左结合|1&&0、(9>3)&&(b>a)
    ||      或运算,双目,对应数学中的“或”    左结合|1||0、(9>3)||(b>a)
    !        非运算,单目,对应数学中的“非”    右结合|!a、!(2<5)
    
    照运算符的优先顺序可以得出:
    a>b && c>d  等价于  (a>b)&&(c>d)
    !b==c||d<a  等价于  ((!b)==c)||(d<a)
    a+b>c&&x+y<b  等价于  ((a+b)>c)&&((x+y)<b)
    
    逻辑运算的结果
    在编程中,我们一般将零值称为“假”,将非零值称为“真”。逻辑运算的结果也只有“真”和“假”,“真”对应的值为 1,“假”对应的值为 0。
    1) 与运算(&&)
    参与运算的两个表达式都为真时,结果才为真,否则为假。,逻辑表达式也可以嵌套使用。
    
    收获:
    switch 是另外一种选择结构的语句,用来代替简单的、拥有多个分枝的 if else 语句;
    
    switch(表达式){
        case 整型数值1: 语句 1;
        case 整型数值2: 语句 2;
        ......
        case 整型数值n: 语句 n;
        default: 语句 n+1;
    }
    

    1)首先计算“表达式”的值,假设为 m。

    1. 从第一个 case 开始,比较“整型数值1”和 m,如果它们相等,就执行冒号后面的所有语句,也就是从“语句1”一直执行到“语句n+1”,而不管后面的 case 是否匹配成功。

    2. 如果“整型数值1”和 m 不相等,就跳过冒号后面的“语句1”,继续比较第二个 case、第三个 case……一旦发现和某个整型数值相等了,就会执行后面所有的语句。假设 m 和“整型数值5”相等,那么就会从“语句5”一直执行到“语句n+1”。

    3. 如果直到最后一个“整型数值n”都没有找到相等的值,那么就执行 default 后的“语句 n+1”。
      2.break 是C语言中的一个关键字,专门用于跳出 switch 语句。所谓“跳出”,是指一旦遇到 break,就不再执行 switch 中的任何语句,包括当前分支中的语句和其他分支中的语句;也就是说,整个 switch 执行结束了,接着会执行整个 switch 后面的代码。

    收获:if-else嵌套;break与contine的区别。
    break 用来跳出所有循环,循环语句不再有执行的机会;
    continue 用来结束本次循环,直接跳到下一次循环,如果循环条件成立,还会继续循环。
    
    对于for循环,
    for(表达式1; 表达式2; 表达式3)
    {
        语句块
    }
    
    它的运行过程为:
    1) 先执行“表达式1”。
    
    2) 再执行“表达式2”,如果它的值为真(非0),则执行循环体,否则结束循环。
    
    3) 执行完循环体后再执行“表达式3”。
    
    4) 重复执行步骤 2) 和 3),直到“表达式2”的值为假,就结束循环。
    
    上面的步骤中,2) 和 3) 是一次循环,会重复执行,for 语句的主要作用就是不断执行步骤 2) 和 3)
    5)表达式1(初始化条件)”、“表达式2(循环条件)”和“表达式3(自增或自减)”都是可选项,都可以省略(但分号;必须保留)。
    
    收获:打印九九口诀表,换硬币,找完数;题目太难了,至今未理解透彻;
    
    收获:输出三角形字符阵,很好玩,觉的打出来很有成就感,不过还是有很多不太了解的地方;
    
    (1):定义在函数内部的变量称为局部变量(Local Variable),它的作用域仅限于函数内部, 离开该函数后就是无效的,再使用就会报错;
    (2):
      1. 在 main 函数中定义的变量也是局部变量,只能在 main 函数中使用;同时,main 函数中也不能使用其它函数中定义的变量。main 函数也是一个函数,与其它函数地位平等。
      1. 形参变量、在函数体内定义的变量都是局部变量。实参给形参传值的过程也就是给局部变量赋值的过程。
      1. 可以在不同的函数中使用相同的变量名,它们表示不同的数据,分配不同的内存,互不干扰,也不会发生混淆。
      1. 在语句块中也可定义变量,它的作用域只限于当前语句块。
    (3)例句说明:
    int f1(int a)
    {
        int b,c;  //a,b,c仅在函数f1()内有效
        return a+b+c;
    }
    int main()
    {
        int m,n;  //m,n仅在函数main()内有效
        return 0;
    

    三、自我总结(回顾第一次博客作业中提到的对自己的期待,有没有没做到的?反思本学期没做好的地方,也请提出你)

    • 1)一周学习几个新技能,这一点在课堂是有学到,代码要打一百行等这一点倒是没有完成,留下遗憾,想自学完课程和在PTA上多做额外题目,
    • 2)自学一部分课程,在本学期做得好的地方,还有就是不懂的地方勇于提问,积极去寻找不足方面,改正一部分小缺点;
    • 3)但是额外做题倒是没有做到.还是有些代码至今未理解其含义,和怎麽定义,对自己不满的地方;

    四、量化的自我评价(指标包括:代码行数、博客字数、总计学习小时数、成绩曲线,指标请用图形的方式给出,并请根据指标分析自己的学习情况)

    学习量化指标图参考:

    成绩曲线图参考:

    五、我努力的方向(关于接下来的寒假和新的学期,你的计划是什么?你对什么?)

    寒假计划:
    自学下学期一半以上的内容,读一本彭老师推荐给学姐学长们的书籍,有关于专业方面的理解,其实认真读完一本比囫囵吞枣的读完好太多;
    
    
    自己的期待是
    目标:能自己编写自己的代码,找到学习计算机专业的快乐;找到自己的努力专业目标,知道自己具体的专业目标,以后该走那条具体的路?软件还是硬件?
    售前还是售后等等。只有知道自己想要什么,才会更有针对性,方向性的去努力。
  • 相关阅读:
    SNMP++
    临界区,互斥量,信号量,事件的区别
    2015 年最棒的 5 个 HTML5 框架(转)
    java.lang.OutOfMemoryError: PermGen space及其解决方法
    java.net.SocketException: Unrecognized Windows Sockets error: 0: JVM_Bind
    eclipse安装tomcat插件
    (转)Activity的跳转与传值
    Android SDK下载和更新失败的解决方法
    Android客户端WebView控件与Javascript交互
    SCI期刊
  • 原文地址:https://www.cnblogs.com/huqingqing2/p/12015849.html
Copyright © 2011-2022 走看看