C语言博客作业–嵌套循环

1.相互评题目与互评同学名称

2. 规划思路

  • 1.概念4只整形变量height表示低度, meddle代表中央行数, i表示第i举办,
    k循环计数,一个字符型变量ch表示输入字母;
  • 2.输入ch、height;
  • 3.若height=1,输出ch,截止程序,否则执行下同样步;
  • 4.若height>1,执行下一致步,否则程序截止;
  • 5.若ch>=65和ch<=71和height%2!=0以起,执行下一致步,否则输出Error!;
  • 6.Meddle=height/2+1;
  • 7.i=1;
  • 8.i++;
  • 9.k=1;
  • 10.出口一个空格,k++;
  • 11.设k<=meddle-i,重回步骤10,否则执行下同样步;
  • 12.若i=1,输出ch;否则执行下一致步;
  • 13.i=i-1;
  • 14.输出ch+i;
  • 15.k=1;
  • 16.输出一个空格,k++;
  • 17.若k<=2*i-1,重回步骤16,否则执行下同样步;
  • 18.输出ch+i;
  • 19.i++;
  • 20.换行;
  • 21.若i<=meddle,再次回到步骤8,否则执行下一致步;
  • 22.i=meddle-1;
  • 23.i–;
  • 24.重复步骤9~20;
  • 25.若i>=1,重回步骤23,否则截止程序

PTA排名

图片 1

题目2:7-4 换硬币

互评同学:李重蕖

2. 计划思路

  • 1.定义整型变量money代表需换零钱、 the_rest剩余的钱、 count1=0、
    count2=0计数、 fen5=0意味5划分硬币个数, fen2=0表示2划分硬币个数,
    fen1=0表示1瓜分硬币个数;
  • 2.输入money;
  • 3.若money%5=0要money%5>0&&money%5<3,执行下一致步,否则执行步骤17;
  • 4.Fen5=money/5-1;
  • 5.Fen5–;
  • 6.The_rest=money-5*fen5;
  • 7.若the_rest%2=0,执行下一致步骤,否则执行步骤13;
  • 8.Fen2=the_rest/2-1;
  • 9.Fen2–;
  • 10.fen1=money-5*fen52*fen2;count1++;
  • 11.输出fen5,fen2, fen1,fen5+fen2+fen1;
  • 12.若fen2>=1,重临步骤9,否则执行下一致手续;
  • 13.fen2=the_rest/2;
  • 14.Fen2–;
  • 15.fen1=money-5*fen52*fen2;count2++;
  • 16.输出fen5,fen2, fen1,fen5+fen2+fen1;
  • 17.若fen2>=1,重回步骤14,否则执行下一样步;
  • 18.若fen5>=1,重回步骤5,否则执行下一样步;
  • 19.若money%5>=3,执行下同样步,否则程序结束;
  • 20.Fen5=money/5;
  • 21.重复步骤5~18;
  • 22.出口count1+count2,截止程序

1.自我的代码

    int  n, number, i, j, r;//number表示要判断的数字、i和j都用于循环计数、r用于判断素数
    scanf("%d", &n);
    if(n>=20)
    {
    printf("Error!\n"); 
    }   
    else if(n<=1)
    {
        printf("None\n");
    }
    else
    {
        for(i=2; i<=n; i++)
        {
            number=pow(2,i)-1;
            r=1;   //初始时为1 
            for(j=2; j<=number/2; j++)
            {
                if(number%j==0)
                {
                    r=0;  //不是素数r=0 ,跳出循环 
                    break;
                }
            }
            if(r==1)//是素数 
            {
                printf("%d\n", number); 
            }
        }
    }

其三、截图本周题目集的PTA最终名次。

3.核心调试过程碰到问题及解决办法

  • 题材1:错误代码,忘记了将i加回原值,导致结果错误
    图片 2

图片 3

纠正后底代码:把i加回原值,结果正确
图片 4

图片 5

2.本周的情节,你还免汇合什么?

对静态变量的以还未是不行会,当一些变量、全局变量和静态变量全部每当共的时候,这种题材自己一再做不对准。还有嵌套循环,有些问题或者有点熟谙做,特别是关系到字符那同样类似的题目。

题材3:7-7 歌唱竞赛评分系统

3.本身跟同学代码不同于哪?有如何各自优势?你又爱哪一种代码风格?假设同学代码来错的吧呼吁帮忙指出来啥地方来题目。

及时同题我同李同学的思绪基本相同,不同之地点在于对n范围的论断,我习惯先勾勒n不符合题目要求时的之场面,而异即使是优先勾勒了符合要求时之动静。他说先勾勒符合要求再写不符合要求这样非爱漏掉某些情形,我当他说得对。在代码注释这地点,李同学的诠释很多雅仔细,而自己平常单习惯注释一些要的判断点,其他注释很少,我觉得就同点自己要为外念书。原本我当即同一题的代码对变量名是没有注释的,在外的唤醒下,我长了诠释。在这无异于挥毫上自己认为自家与他的代码各出优势,可是自外的代码上本身看齐了多两全其美的描绘代码习惯,这多亏自家欠的。

季、本周习总括

2.己之代码、互评同学代码截图

1.您学会了什么?

自我学会了怎么调用函数,掌握了片变量和全局变量的区别。现在调试程序的当儿也非会面太过分看重调试,会先行以头脑里比如好的先期想就自己之先后走相同遍,然后找错误,假使依旧找不交,再择调试。这样尽管同起初之时光会并未直接用调试来得赶紧,可是熟练后,我发现经过如此的形式本身阅读程序会快一些,也更能懂啊是总结机的思索。

互评题目:7-5 :梅森(Mason)数

3.主旨调试过程境遇问题及解决办法

  • 题材1:考虑气象不完善,导致结果有科学,有局部情并未可以列出来
    解决办法:询问先生,请教同学,在舍友援助下寻找来左,重新制定算法
    对己而言,换硬币这等同开难点在各类场合的设想,假设一致起先爆发一个情状没有设想进去,最终之结果虽会错。做这题之自己开了挺多调试之,但其中起价的调剂并不曾多少。因为错误紧要是由于考虑气象不备要起的,而我以调节的下关注之倒是是于履行的过程遭到凡是未是变量没有正确变化。这关注点就错了。通过就同开,我深入地咀嚼至,思路清晰周密真的不胜重大,不然费时以伤脑筋,功用会要命没有。

次、同学代码结对互评(2瓜分)

1. 主题PTA提交列表

图片 6

2.同校的代码

图片 7

2. 计划思路

  • 1.概念整型变量repeat、n、 grade、 sum=0、 i、 j、flag、 min、
    max,浮点型变量average;
  • 2.输入repeat;
  • 3.若repeat<=0或repeat>=10,输出Error! 否则行下一样步;
  • 4.i=1;
  • 5.i++;
  • 6.输入n;
  • 7.若n<3或n>10,输出Error! 结束程序,否则执行下同样步;
  • 8.输入grade;
  • 9.Min=grade;max=grade;sum=grade;
  • 10.j=2;
  • 11.j++;
  • 12.输入grade;
  • 13.Flag=grade;
  • 14.若flag<=min,min=flag,否则执行下一致步;
  • 15.若flag>=max,max=flag,否则执行下一样步;
  • 16.Sum=sum+grade;
  • 17.若j<=n,重临步骤11,否则执行下一样步;
  • 18.Sum=sum-max-min;average=sum/(n-2);输出average;
  • 19.若i<=repeat,重返步骤5,否则截止程序

1. 主题PTA提交列表

图片 8

一样、PTA实验作业

题材1:7-3 编程打印空心字符菱形

3.焦点调试过程遭逢问题及解决办法

-问题1:min、max、和flag的初值应该于哪定义,scanf语句要怎么推广?
解决办法:这些题材是本身在描写有代码后运行测试的时节发现的,明明按照事先想自己独自需要输入n个数就好出口结果,不过运行测试的当儿也如输入n+1单数才会出口结果。经过调试我发觉,在内循环的结尾一软巡回中,scanf语句还要实施同一浅,而战败进入的数字其实并从未涉足后边的演算。原来是因以取出min(最小值)和max(最特别价值),我开时把min和max的初值定义放在外循环中,并定义其的初值为第一只grade,这样scanf语句就要放在外循环中,这样才会管输入的率先个grade能给给min和max;不过grade是若更输入的,由此自在内循环里又推广了一个scanf语句,这样于循环过程遭到虽差不多出了相同不成scanf。末了自己修改代码,把第一次于战绩居了外循环中,内循环从2起来,答案是。

1. 主题PTA提交列表

图片 9