• 我的第一篇博客


    这个作业属于哪个班级 C语言--网络2011/2012
    这个作业的地址 C博客作业00--我的第一篇博客
    这个作业的目标 学习Makdown语法,对本专业及C语言课程有个简单了解,记录自学慕课视频的笔记。教师可以对学生有个初步的认识。

    0.准备工作

    准备好对网络工程这一专业的热情,对集美大学的热爱,对一起学习的同学、老师互相的尊重与友善交流。

    1.简单谈一谈我对于网络工程的看法

    其实我对于网络工程是比较向往的,从小开始我对于计算机有关方面就有着不错的兴趣,并且网络工程在我的眼中是一个能够承担计算机网络系统设计、开发、部署、运行、维护等工作的一门专业,可以很好的开发我们的大脑,提高我们的逻辑思维。

    进一步通过百度百科理解网络工程

    引用

    网络工程专业主要讲授计算机科学基础理论、计算机软硬件系统及应用知识、网络工程的专业知识及应用知识。网络工程专业旨在培养具有创新意识,具有本专业领域分析问题和解决问题的能力,具备一定的实践技能,并具有良好的外语应用能力的高级研究应用型专门人才。——百度百科

    2.谈谈我对于C语言的理解

    在没有正式去了解C语言时,我对C语言的理解仅限于知道他是一款编译语言。
    但是在我详细了解了他之后,感受到了他的不可思议,并且自嘲的说,原来我以前在游戏里充钱,得到的真正的东西不过是一串代码而已。同时,我还了解到与其他计算机语言相比C语言汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当且普适较强,在许多计算机操作系统中。

    3.我希望在这个专业学到的东西和我的大学安排

    我对于3D建模有着非常浓厚的兴趣,并且学习了一定的基础。在这个的基础上我希望通过学习C语言可以提高我的程序执行力。对于我自己开发游戏软件,或者加入游戏开发团队提供更多,更大的机会。在高中时代我就和几个同学尝试加入了一些小型的工作室,进行了游戏的开发,相比我们这些单纯的绘制游戏画面的入门学者,其实我更想像那些可以书写游戏程序的程序员们。在大学的安排中,我渴望可以自己设计一个3D画风的游戏,运用严谨的程序编译,和我天马行空的3D画面建设,实现我从小到现阶段最有可能实现的一个梦想。

    4.我目前自学的内容

    在暑假还有大概两个星期结束时,我开始了自我学习,通过慕课,以及和学长交流。军训期间找学长借书,或多或少学习了一些有关C语言的诸多内容。相对来说个人觉得在书本中学习比慕课来的快速而深透的多,而向学长们询问又更有趣得多。

    4.1 分支结构

    分支结构中有单分支、双分支、嵌套式分支语句以及swich-case语句。

    • 单分支
    if( 条件表达式 )
    {
     语句块;
    }
    
    • 双分支
    if( 条件表达式 )
    {
     语句块1;
    }
    else
    {
    语句块2;
    }
    
    • 镶嵌式分支
    if( 条件表达式 )
    {
       if( 条件表达式 )
       {
       语句块1;  
       }
       else
       {
       语句块2; 
       }
     }
    else
    {
      if( 条件表达式 )
       {
        语句块3;  
       }
       else
       {
         语句块4;  
       }
    }
    
    • swich-case
    switch( 表达式 )
    {
      case 常量1:语句1;break;
      case 常量2:语句2;break;
      case 常量3:语句3;break;
      case 常量n:语句n;break;
      default : 语句n+1;
    }
    
    • 分支结构可以实现的案例
      (1)对输入的成绩进行划分;
      (2)简单的猜字游戏;
      (3)计算不同年龄段人群应得的薪水;
      (4)计算简单的分段函数。
    • 我的疑惑
      swich中的跳转

    我在PTA中实现的案例

    统计学生成绩

    int main()
    {
      int i, n, s;
      int a = 0, b = 0, c = 0, d = 0, e = 0;
      scanf("%d",&n);
      for(i = 0; i < n; i++)
      {
        scanf("%d",&s);
        if(s >= 90)
        {a++;}
        else if(s < 90 && s >= 80)
        {b++;}
        else if(s < 80 && s >= 70)
        {c++;}
        else if(s < 70 && s >= 60)
        {d++;}
        else
        {e++;}
      }
      printf("%d %d %d %d %d
    ",a,b,c,d,e);
    return 0;
    }
    
    • 求平方与倒数序列的部分和
    #include<stdio.h>
    
    int main(){
        double S = 0.0;
        int m,n,i;
        int max,min;
        scanf("%d %d",&m,&n);
        if (m<=n){
            max=n,min=m;
        }
        else {
            max=m,min=n;
        }   for (i=min;i<= max;i++) {
            S += i * i+1.0/i;
        }
        printf("sum = %.6f",S);
        return 0;
    }
    
    • 计算火车运行时间
    #include<stdio.h>
    int main()
    {
      int start, stop, h_start, h_stop, m_start, m_stop, h_cost, m_cost;
      scanf("%d %d", &start, &stop);
      h_start = start / 100;
      m_start = start % 100;
      h_stop = stop / 100;
      m_stop = stop % 100;
      if(m_start <= m_stop)
      {
        h_cost = h_stop - h_start;
        m_cost = m_stop - m_start;
      }
      else
      {
        h_cost = h_stop - h_start - 1;
        m_cost = m_stop - m_start + 60;
      }
      printf("%02d:%02d
    ",h_cost,m_cost);
      return 0;
    }
    

    4.2 循环结构

    循环结构中有三种循环语句:while、do...while和for

    • while语句
    while ( 表达式 )
    {
      语句;
    }
    

    while型循环——先判断,符合循环条件后再执行循环

    • do ... while语句
    do
    {
      语句;
    }
    while (表达式);
    

    do-while型循环——先执行一次循环,再判断是否符合循环条件,符合则继续执行循环

    • for循环
    for ([表达式1(初始化)];[表达式2(控制表达式)];[表达式3(调节器)])
    {
      语句;
    }
    

    先计算一次表达式1,以进行必要的初始化,后面不再计算它。
    每轮循环前都要计算表达式2,以判断是否需要继续本轮循环。当控制表达式的结果为 false,结束循环。
    表达式3在每轮循环结束后且表达式2计算前执

    循环语句可以实现的案例

    (1)有序数列前N项累加求和
    (2)有序数列前N项累乘
    (3)求最大公约数最小公倍数
    (3)凑钱问题
    (4)......

    我的PTA实例

    • while和do-while 求给定精度的简单交错序列部分和
    #include<stdio.h>
    #include<math.h>
    int main(){
        int i = 1;
        double limit, sum = 0.0;
        scanf("%lf",&limit);
        do
        {
            sum += (1.0 / i * pow((-1),(i+1)));
            i += 3;
        }while(1.0 / (i -3) > limit);
        printf("sum = %.6lf",sum);
        return 0;
    }
    
    • 找出最小值
    #include<stdio.h>
    int main()
    {
      int x, y, i, n;
      scanf("%d",&n);
      for(i = 0; i < n; i++)
      {
        scanf("%d",&x);
        if(i == 0)
        {y = x;}
        else if(y > x)
        {y = x;}
      }
      printf("min = %d
    ",y);
      return 0;
    }
    
    • 最大公约数和最小公倍数
    #include<stdio.h>
    int main()
    {
      int m,n,i,t;
      int y,b;
      scanf("%d %d",&m,&n);
      for(i = 1; i <= m; i++)
      {
        if(m % i == 0 && n % i == 0)
        {y = i;}
      }
      b = m * n / y;
      printf("%d %d
    ",y,b);
      return 0;
    }
    

    4.3函数

    • 函数的定义
      函数是一段可以重复使用的代码,用来独立地完成某一个功能,它可以接收用户传递的数据,也可以不接收。接收用户数据的函数在定义时要指明参数,不接收用户的数据的函数则不需要指明参数,由此可将函数分为有参函数和无参函数。
      函数的定义一般包括函数头(function head或称为声明符(declarator))和一个函数块。
      函数头指定了函数的名称、返回值的类型以及参数的类型及名称。函数块中的语句明确了该函数要做的事。

    但是在个人自学过程中,对于函数的学习在目前为止处于刚刚开始入门阶段,并未开始深度学习,仅仅只限于了解定义部分。

  • 相关阅读:
    bash八大扩展一网打尽
    MySQL命令行导出数据库
    Windows 7上的DirectX 11.1
    把KlayGE嵌入其他GUI框架
    KlayGE的资源载入系统
    学习路漫漫……
    写下我的第一篇Post,呵呵
    今天学习:CSS中的类class和标识id选择符(.和#号)
    Remove Duplicates from Unsorted List
    2012 TODO List
  • 原文地址:https://www.cnblogs.com/Inevitable/p/13871419.html
Copyright © 2020-2023  润新知