zoukankan      html  css  js  c++  java
  • 循环结构

    0.展示PTA总分


    1.本章学习总结

    1.本章学习总结

    这两周主要学习了循环和循环的嵌套,通过这些学习,我们又可以做很多题目

    1.2 本章学习体会

    学习感受:c语言的学习需要持之以恒的精神和兴趣 缺一不可。
    代码量 500行。

    2.PTA实验作业

    2.1 7-1 求n以内最大的k个素数以及它们的和 (20 分)

    2.1.1 伪代码

    for(i=1;i<=a;i++) 通过第一层循环使各个素数依次判断;
    for(j=2;j<n;j++)
    // 判断素数
    {
    flag=1;

       if(n%j==0)
       {
           flag=0;
           break;
       }
    

    }
    if(flag1)
    {
    sum+=n;
    num++;
    if(k
    1)
    {
    printf("%d=%d",n,n);
    goto zero;
    }
    if(num<k)
    {
    if(num1)
    printf("%d",n);
    else if(num>1&&num<k)
    printf("+%d",n);
    }
    if(num
    k)
    goto out;

       通过第二个循环嵌套来判断是否是素数
    

    若是素数,则进入后面的语句。

    2.1.2 代码截图


    2.1.4 PTA提交列表及说明


    部分正确:没有考虑到只有一个数和只有一个句号的情况。补充考虑后则正确。
    答案错误:后面等号的情况没有考虑 忘记打等号 后面用跳出循环后则输出等号的形式解决。

    2.2 7-6 水仙花数

    2.2.1 数据处理

    for(i=pow(10,N-1);i<pow(10,N);i++)
    通过对题目的观察确定了i的取值范围
    int mask=pow(10,N-1);
    {
    for(j=1;j<=N;j++)
    {
    do d=a/mask;
    c=c*d;
    }
    a%=mask;
    mask/=10;
    sum=sum+c;
    c=1;
    引入mask 来使这个数的各个位置的数分离开来 然后用一个小的for循环来替代pow函数 加快编译速度。

    2.2.4 PTA提交列表及说明

    部分正确:刚开始用pow函数 导致数据过大时运行超时 后改用for循环解决。

    2.3 7-7 换硬币

    2.3.1 数据处理

    使用三个循环嵌套 分别对应一分 两分 五分
    for(a=19;5a>0;a--)
    {
    for(b=50;2
    b>0;b--)
    {
    for(c=99;c>0;c--)
    而后使用if判断是否能整合为1
    if(5a+2b+1*c==x)
    {count++;
    printf("fen5:%d, fen2:%d, fen1:%d, total:%d ",a,b,c,a+b+c);

    2.3.2 代码截图

    2.3.4 PTA提交列表及说明


    第一次是把一分和五分位置选反了 第二次是把每一种情况从最小的开始加 改正后正确。

    3.代码互评

    同学代码截图


    自己代码截图

    都一样 没得变化

  • 相关阅读:
    mongodbwindows安装过程附带安装包百度云
    PostgreSQL数据库中跨库访问解决方案
    PostgreSQL 同步复制(1master+2standby)
    PostgreSQL数据导出导入COPY
    CentOS 6.5安装PostgreSQL9.3.5时报错: jade: Command not found
    postgresql常用命令
    EasyUI Messager 消息框
    js验证如何限制文本框只能输入数字
    推荐几个在线PDF转化成Word网站
    程序员高效编程的14点建议
  • 原文地址:https://www.cnblogs.com/xzb011026/p/11708304.html
Copyright © 2011-2022 走看看