念数字

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

输入格式:

输入在一行中给出一个整数,如:1234

提示:整数包括负数、零和正数。

输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如 yi er san si

输入样例:

-600

 

输出样例:

fu liu ling ling

 题解:

分三种情况讨论,输入的n为0,为负,为正。

当n=0时直接输出即可,n为负时,把负数转换成正数再进行编程,所以本题主要把n为正数编程出来即可。

接下来就是分析n为正数:

先通过一个while循环,求出n是由几个数字组成的,利用对n取余,把每次的余数放进一个数组里。接下来要输出它的汉字,利用一个for循环输出,如果这里从i=0时开始循环的话,输出的是倒的,因此要从最后一项输出。

题意要求除了最后一个没有空格输出,其它的都有空格输出,这里采用了if作为判断,详细看源代码

 ----源代码参考了一个csdn上一个大佬的

#include<stdio.h>
int main()
{
    int n;
    int s[1001];
    int i=0;
    scanf("%d",&n);
    if(n==0)
        printf("ling\n");
    else if(n>0)
    {
        while(n!=0)
        {
            s[i]=n%10;
            n/=10;
            i++;
        }
        for(i=i-1;i>=0;i--)
        {
            if (s[i]==0)
            printf("ling");
        else if (s[i]==1)
            printf("yi");
        else if (s[i]==2)
            printf("er");
        else if (s[i]==3)
            printf("san");
        else if (s[i]==4)
            printf("si");
        else if (s[i]==5)
            printf("wu");
        else if (s[i]==6)
            printf("liu");
        else if (s[i]==7)
            printf("qi");
        else if (s[i]==8)
            printf("ba");
        else if (s[i]==9)
            printf("jiu");
        if(i)
            printf(" ");
        else
            printf("\n");
        }
    }
    else
    {
        n=-n;
        printf("fu ");
        while(n!=0)
        {
            s[i]=n%10;
            n/=10;
            i++;
        }
        for(i=i-1;i>=0;i--)
        {
            if (s[i]==0)
            printf("ling");
        else if (s[i]==1)
            printf("yi");
        else if (s[i]==2)
            printf("er");
        else if (s[i]==3)
            printf("san");
        else if (s[i]==4)
            printf("si");
        else if (s[i]==5)
            printf("wu");
        else if (s[i]==6)
            printf("liu");
        else if (s[i]==7)
            printf("qi");
        else if (s[i]==8)
            printf("ba");
        else if (s[i]==9)
            printf("jiu");
        if(i)
            printf(" ");
        else
            printf("\n");
        }
    }
}

 

### 使用 Python 处理数字的示例 Python 是一种功能强大且灵活的语言,能够轻松处理各种类型的数字运算和分析任务。以下是几个常见的 Python 数字处理示例。 #### 1. 基本算术运算 Python 支持多种基本算术运算符,例如加法、减法、乘法、除法以及幂运算等。 ```python a = 10 b = 3 addition = a + b # 加法 subtraction = a - b # 减法 multiplication = a * b # 乘法 division = a / b # 浮点数除法 floor_division = a // b # 整数除法 modulus = a % b # 取模 exponentiation = a ** b # 幂运算 print(f"Addition: {addition}") # 输出 Addition: 13 print(f"Subtraction: {subtraction}") # 输出 Subtraction: 7 print(f"Multiplication: {multiplication}") # 输出 Multiplication: 30 print(f"Division: {division:.2f}") # 输出 Division: 3.33 print(f"Floor Division: {floor_division}") # 输出 Floor Division: 3 print(f"Modulus: {modulus}") # 输出 Modulus: 1 print(f"Exponentiation: {exponentiation}") # 输出 Exponentiation: 1000 ``` #### 2. 科学计算:生成正弦波信号 通过 `numpy` 库可以方便地生成复杂的数学函数曲线,比如正弦波信号[^1]。 ```python import numpy as np import matplotlib.pyplot as plt # 参数设置 frequency = 2 # 频率 (Hz) amplitude = 1 # 振幅 time_period = 1 # 时间周期 (秒) # 创建时间轴 t = np.linspace(0, time_period, 1000) # 在 [0, 1] 范围内均匀分布的时间点 sin_signal = amplitude * np.sin(2 * np.pi * frequency * t) # 正弦波公式 # 绘制图形 plt.plot(t, sin_signal) plt.title('Sine Wave') plt.xlabel('Time [s]') plt.ylabel('Amplitude') plt.grid(True) plt.show() ``` #### 3. 数据统计与分析 利用 `pandas` 和 `numpy` 进行简单的数据统计分析也是常见场景之一。 ```python import pandas as pd import numpy as np data = {'Numbers': range(1, 6)} df = pd.DataFrame(data) mean_value = df['Numbers'].mean() # 计算均值 std_deviation = df['Numbers'].std() # 计算标准差 sum_total = df['Numbers'].sum() # 总和 print(f"Mean Value: {mean_value}") # 输出 Mean Value: 3.0 print(f"Standard Deviation: {std_deviation:.2f}") # 输出 Standard Deviation: 1.58 print(f"Sum Total: {sum_total}") # 输出 Sum Total: 15 ``` #### 4. 数据库查询中的数值提取 如果需要从数据库中取数值型字段,则可以通过 SQL 查询实现,并将其转换为适合后续处理的形式[^3]。 ```python import mysql.connector connection = mysql.connector.connect( host='localhost', user='root', password='password', database='test_db' ) cursor = connection.cursor() query = "SELECT price FROM products" cursor.execute(query) prices = [] for row in cursor.fetchall(): prices.append(row[0]) average_price = sum(prices) / len(prices) print(f'Average Price: ${average_price}') cursor.close() connection.close() ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值