輸讀入一個自然數n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。


一、先算出各位數字之和

解析:因為不知道n是幾位,所以只能用 n=n/10;n%10來統計每一位數字是多少

 

 1 #include <stdio.h>
 2  
 3 int main()
 4 {
 5     int n;
 6     int sum=0;
 7     scanf("%d",&n);
 8     while(n>0)
 9     {
10         sum=sum+n%10;
11         n=n/10;
12     }
13     printf("%d",sum);
14     return 0;
15 }

二、進階版:

讀入一個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。

輸入格式:每個測試輸入包含 1 個測試用例,即給出自然數 n 的值。這里保證 n 小於 1。

輸出格式:在一行內輸出 n 的各位數字之和的每一位,拼音數字間有 1 空格,但一行中最后一個拼音數字后沒有空格。

輸入樣例:1234567890987654321123456789        輸出樣例:yi san wu

分析:因數字太大所以只能用字符串
注意:字符串數字轉換成數字:-'0';結束符:'\0'。
#include<stdio.h>
int main()
{
    int sum=0,i=0,j;
    char  hz[10][5]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};
    char sr[100];
    int cs[10];
    
    scanf("%s",sr);
    i=0;
    while(sr[i]!='\0')
    {
        sum+=sr[i]-'0';
        i++;
    }
    j=0;
    while(sum>0)
    {
        cs[j++]=sum%10;
        sum=sum/10;       
    }
    for(i=j;i>=0;i--)
    {
        if(i==0)
        {
            printf("%s",hz[cs[i]]);
            
        }else{
            printf("%s ",hz[cs[i]]);
        }
     } 
    
    return 0;

}
 
        

  

 
 
        

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM