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())!='\n'&&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 多练习真题,掌握常用算法。其实这个考察的就是算法和语法.