• 第一次实验作业报告


      实验题目:pta第三四次作业

      设计思路:主要运用while,for,if等语句加上一些嵌套,较为简单。

      实现方法:利用好手中武器,与各种知识,进行代码编译。

    一.在编译方面(思路)

      常常会漏掉一些符号,例如& ;(要注意哪些语句要分号哪些不要)像do {}while();while()后面就得带分号,同时还会忘记\n的好习惯,这对代码的呈现十分致命。而且有时还会将printf打成pritnf,这简直是蠢,可怕的是我还打了好几次,这可要注意啊,这个问题是压根不能犯的。

    二.在格式方面(问题)

      我觉得在格式方面需要经验的积累吧,慢慢习惯给格式的错误后,也就犯的可能性小很多。

      但格式问题也很致命,打错一个格式整题就是错了,他人部分正确都比你分高。所以一定要检查一遍。

    实验截取:

     就如这题空格没打整题没分。

    实验题目:

      思路:在定义一些数值(最重要定义个sum=0),设计一个for循环,使得sum累加,从而求得sum。

    这两题很典型(读题错误),他要求的是前n项和,而不是求到n为底的那一项,所以第二题的循环是 for(int i=1;i<=2*N;i+=2)

    三.代码思路方面

      代码最后运行要在脑子里过上一遍,经常就是循环没搞好,弄个死循环出来,要么出现一堆答案要么一个答案都输出不了,在未来的写算法这方面,肯定是不行的,思路要清晰。

    错误题:

    在第四次作业稍有一点难度了,有用到了各语句的嵌套

    实验题目:

    这题我定义的较多的变量,这时就需要变量的英文来定义更好看,毕竟能让越多人看得懂的代码才是好代码,这题利用fabs()时记得加好头文件哦~

    思路:

    问题:

    一.是公斤数的转换,题目所给的单位并不是统一的单位,这里要十分注意。

    二.是对身材的判断,看好题目对身材标定的范围。

    for(i=0;i<N;i++)
    {
    scanf("%d%d",&H,&w);
    W=w/2.0;
    a=(H-100)*0.9;
    b=W-a;
    if(fabs(b)<a*0.1)
    {
    printf("You are wan mei!\n");
    }
    else if(b<=(-1)*a*0.1)
    {
    printf("You are tai shou le!\n");
    }
    else
    {
    printf("You are tai pang le!\n");
    }
    }

     

    思路:利用好数组

    装睡我认为是这几次作业最难的一题,本来用数组就好了,结果用数组没解成功,一下用了个刚学的结构

    刚开始打得代码:

    #include<stdio.h>struct student{

    char name [10];
    int hu;
    int xin;
    };
    int main()
    {
    int N,i;
    char *j[100];
    struct student students[50];
    scanf("%d",&N);
    for(
    i=0;i<N;i++)

    {
    scanf("%s%d%d",&students[i].name,&students[i].hu,&students[i].xin);
    }
    for(i=0;i<N;i++)
    {
    if((students[i].hu>20||students[i].hu<15)||(students[i].xin>70||students[i].xin<50))
    printf("%s\n",students[i].name);
    }
    return 0;
    }

    我觉得我也是自找麻烦。其实也就是将名字存下,也用不了那么麻烦吧。

     思路:定义字符数组来储存名字,输入多组数据,在对呼吸和脉搏进行判断,将不合格的列出。

    问题:一开始想的太复杂,要如何输入,如何储存,其实冷静下来想想,会更好。

    简单版:

    char s[5]; //储存名字的数组
    int a,b,n;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
    scanf("%s%d%d",s,&a,&b);
    if(a<15||a>20||(b<50||b>70))//核心判断
    printf("%s\n",s);
    }   明明很简单好吗!!!

    总结:

    经过这两次的训练队for循环,嵌套语句,以及数组的用法有了,更深的了解,对于这些题目不能掉以轻心。

    还不会啥:对字符数组的各种输入还不够了解。

    困难:逻辑还是不够清晰,不能想到各种关键的部位让自己一次通过,还需要多多练习,多写题目,把数学逻辑与编程能力结合,达到更好的解题。

  • 相关阅读:
    Chrome 使用 Evernote 插件
    【MySQL】ON DUPLICATE KEY UPDATE
    【MySQL】Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and ...
    libevent API
    LLServer--》对LevelDB的应用
    Linux信号signal处理机制
    守护进程
    使用 libevent 和 libev 提高网络应用性能(IBM)
    Libev和LibEvent
    利用TokyoTyrant构建兼容Memcached协议、支持故障转移、高并发的分布式Key-value持久存储系统(转)
  • 原文地址:https://www.cnblogs.com/guangguangge/p/7709823.html
Copyright © 2020-2023  润新知