Spell It Right (20)

1  题目要求:

       https://www.patest.cn/contests/pat-a-practise/1005

2  源代码

#include<stdio.h>
int main(void){
    char n; 
    int i=0; 
    int sum = 0;
    int s1,s2,s3; 
   //把每个数都单独拎出来。然后求和,其实不想这么做可以使用getchar ,只是加了一个char型转化成整型的过程
   while((n=getchar())!='
'&&i<101){
        sum=sum+(n-'0');//关键 1
        i++;
   } 
    char a[][10]={"zero","one","two","three","four","five","six","seven","eight","nine"};
    s1=sum/100;// 百位 
    s2=(sum/10)%10;//十位   关键2 
    s3=sum%10;//个位  
   
   if(s1==0&&s2==0){  //和是一位数的情况下 
         printf("%s",a[s3]);    
   }else if(s1==0&&s2!=0){ //和是两位数的情况下  关键3
            printf("%s %s",a[s2],a[s3]); 
   }else {   
         printf("%s %s %s",a[s1],a[s2],a[s3]); 
}
}

3  评测通过

      注意: 1  先编译运行通过再提交代码

                  2  多练习真题,掌握常用算法。其实这个考察的就是算法和语法.

原文地址:https://www.cnblogs.com/sunnybowen/p/8880588.html