zoukankan      html  css  js  c++  java
  • 【PAT】B1002 写出这个数

    思路:
    1.以字符串形式输入数据,计算结果
    2.使用sprintf将结果数字转换为字符串(将数字每一位分开)
    3.分别输出字符每一位

    1,笨方法,用的ifelse来判断输出

    
    #include<stdio.h>
    #include<string.h>
    char arr[110];
    
    int getsum() {
    	int sum = 0;
    	int len = strlen(arr);
    	for (int i = 0; i<len; i++) {
    		sum += arr[i] - '0';
    	}
    	return sum;
    }
    int main() {
    	scanf("%s", arr);
    	int sum = getsum();
    	sprintf(arr, "%d", sum);
    	int len = strlen(arr);
    	for (int i = 0; i<len; i++) {
    		if (i != 0) printf(" ");
    		if (arr[i] == '1')
    			printf("yi");
    		else if (arr[i] == '2')
    			printf("er");
    		else if (arr[i] == '3')
    			printf("san");
    		else if (arr[i] == '4')
    			printf("si");
    		else if (arr[i] == '5')
    			printf("wu");
    		else if (arr[i] == '6')
    			printf("liu");
    		else if (arr[i] == '7')
    			printf("qi");
    		else if (arr[i] == '8')
    			printf("ba");
    		else if (arr[i] == '9')
    			printf("jiu");
    		else if (arr[i] == '0')
    			printf("ling");
    	}
    	return 0;
    }
    
    
    

    2,简化代码,用如下代码简化输出部分的ifelse结构

    char data[10][20] = { "ling","yi","er","san","si","wu","liu","qi","ba","jiu" };
    printf("%s", data[arr[i] - '0']);
    
  • 相关阅读:
    HBase
    linux配置环境变量
    ubuntu17.04安装flash
    WebService服务及客户端 编程
    eclipse
    设计模式:简单工厂
    设计模式:工厂方法
    C#加载dll 创建类对象
    C#线程
    Opencv 3入门(毛星云)摘要
  • 原文地址:https://www.cnblogs.com/hebust/p/9797452.html
Copyright © 2011-2022 走看看