zoukankan      html  css  js  c++  java
  • 2018秋季寒假作业5-币值转换

    1)代码截图

    #include<stdio.h>
    #include<math.h>
    int n,m=0;
    int main(void)
    
    {
        int i,j,k,r,s;
        r=1,s=1;
     
        int f(int q,int n);
     
        scanf("%d",&n);
     
        for(i=0;n/r>=10;i++)
       {
         r=pow(10,i);
         m++;
       }
            if(n==0) 
              {
               printf("a");
              }
            if(n<10 && n>=0)
              {
               m=1;
              }
            for(j=1;j<=m;j++)
              {
          switch(f(j,n))
           {
             case 0:
             if(j!=m && j!=m-4)
               {
                if(f(j+1,n)==0)
                 {
                  s=0;
                 }
                else
                 {
                  s=1;
                 }
                if(s!=0)
                 {
                  printf("a");
                  }
            break;
        }
        break;
               case 1:
               printf("b");
               break;
               case 2:
               printf("c");
               break;
               case 3:
               printf("d");
               break;
               case 4:
               printf("e");
               break;
               case 5:
               printf("f");
               break;
               case 6:
               printf("g");
               break;
               case 7:
               printf("h");
               break;
               case 8:
               printf("i");
               break;
               case 9:
               printf("j");
               break;
           }
            if(f(j,n)==0 && j!=m && j!=m-4) 
      
             continue;
      
            else 
            {
              if(m==9 && j==5)
               {
                  if(f(2,n)==0 && f(3,n)==0 && f(4,n)==0 && f(5,n)==0)
        
                  continue;
               }
            switch(m-j)
           {
              case 1:
              printf("S");
              break;
              case 2:
              printf("B");
              break;
              case 3:
              printf("Q");
              break;
              case 4:
              printf("W");
              break;
              case 5:
              printf("S");
              break;
              case 6:
              printf("B");
              break;
              case 7:
              printf("Q");
              break;
              case 8:
              printf("Y");
              break;
          }
          }   
             } 
            return 0;
    }
    int f(int q,int n)
    {
     int k,a;
     if(q==1) k=n/pow(10,m-1);
     else
     {
      a=n/pow(10,m-q+1);
      k=n/pow(10,m-q)-a*10;
     }
     return k;
    }

    2)设计思路

    这题借鉴了李代传同学的流程图,经过思考决定首先定义变量用来储存数据,其次要注意的是必须采用整形数据输入,然后将其分成亿,万,千及以下三个部分考虑。假如·万位第一位为0,则这个0不输出,利用除余的·方放将此依次输出

    3)本题调试过程中遇到的问题及解决方案

    问题一:那几个测试点老是答案错误

    问题一的解决方案:经过调试,我发现r,s的初始值赋值错误了,后来发现if语句的条件少写了一个。太粗心了,调试了好久

    4)运行结果截图

  • 相关阅读:
    Daily Scrum 10.26
    Daily Scrum 10.25
    Daily Scrum 10.24
    Week7 Teamework from Z.XML-任务分配
    Daily Scrum 10.23
    软件工程项目组Z.XML会议记录 2013/10/22
    Week7 Teamework from Z.XML-NABC
    cocos2d-x环境搭建 摘自百度文库
    Go 接口
    Auto-Scaling Web Applications in Clouds: A Taxonomy and Survey读书笔记
  • 原文地址:https://www.cnblogs.com/wangweihanqq2001/p/10399306.html
Copyright © 2011-2022 走看看