zoukankan      html  css  js  c++  java
  • HDU 1228(字符串处理)

    题意是将所给算式求出结果。

    用的方法非常麻烦,开始没考虑到零也需要处理,以为遇上零直接跳过即可,知道发现零可以占位,比如 one zero 值为 10 而不是 1……

    代码如下:

      1 #include <bits/stdc++.h>
      2 using namespace std;
      3 int main()
      4 {
      5     char s1[10],s2[10];
      6     int a1,a2;
      7     while(1)
      8     {
      9         a1 = a2 = 0;
     10         while(scanf("%s",s1) && strcmp(s1,"+"))
     11         {
     12                 if(strcmp(s1,"one")==0)
     13                 {
     14                     a1 = a1*10+1;
     15                 }
     16                 else if(strcmp(s1,"two")==0)
     17                 {
     18                     a1 = a1*10+2;
     19                 }
     20                 else if(strcmp(s1,"three")==0)
     21                 {
     22                     a1 = a1*10+3;
     23                 }
     24                 else if(strcmp(s1,"four")==0)
     25                 {
     26                     a1 = a1*10+4;
     27                 }
     28                 else if(strcmp(s1,"five")==0)
     29                 {
     30                     a1 = a1*10+5;
     31                 }
     32                 else if(strcmp(s1,"six")==0)
     33                 {
     34                     a1 = a1*10+6;
     35                 }
     36                 else if(strcmp(s1,"seven")==0)
     37                 {
     38                     a1 = a1*10+7;
     39                 }
     40                 else if(strcmp(s1,"eight")==0)
     41                 {
     42                     a1 = a1*10+8;
     43                 }
     44                 else if(strcmp(s1,"nine")==0)
     45                 {
     46                     a1 = a1*10+9;
     47                 }
     48                 else{
     49                     a1 = a1*10;
     50                 }
     51         }
     52         while(scanf("%s",s2) && strcmp(s2,"="))
     53         {
     54                 if(strcmp(s2,"one")==0)
     55                 {
     56                     a2 = a2*10+1;
     57                 }
     58                 else if(strcmp(s2,"two")==0)
     59                 {
     60                     a2 = a2*10+2;
     61                 }
     62                 else if(strcmp(s2,"three")==0)
     63                 {
     64                     a2 = a2*10+3;
     65                 }
     66                 else if(strcmp(s2,"four")==0)
     67                 {
     68                     a2 = a2*10+4;
     69                 }
     70                 else if(strcmp(s2,"five")==0)
     71                 {
     72                     a2 = a2*10+5;
     73                 }
     74                 else if(strcmp(s2,"six")==0)
     75                 {
     76                     a2 = a2*10+6;
     77                 }
     78                 else if(strcmp(s2,"seven")==0)
     79                 {
     80                     a2 = a2*10+7;
     81                 }
     82                 else if(strcmp(s2,"eight")==0)
     83                 {
     84                     a2 = a2*10+8;
     85                 }
     86                 else if(strcmp(s2,"nine")==0)
     87                 {
     88                     a2 = a2*10+9;
     89                 }
     90                 else
     91                 {
     92                     a2 = a2*10;
     93                 }
     94         }
     95         if(a1==0 && a2==0)
     96             break;
     97 //        printf("a1:%d  a2:%d
    ",a1,a2);
     98         printf("%d
    ",a1+a2);
     99     }
    100     return 0;
    101 }
    View Code
  • 相关阅读:
    关于android示例程序(bitmapfun)——高效加载图片的坑爹地方
    UML笔记
    设计模式>单例模式
    一件很诡异的事CSS
    添加option问题
    a:visited:hover
    电脑出问题了
    邪神呀concat
    关于鼠标中键滚动的问题onmousewheel
    坚强的人
  • 原文地址:https://www.cnblogs.com/Taskr212/p/10400644.html
Copyright © 2011-2022 走看看