念数字

本文介绍了一道简单的C++编程题目,通过使用switch语句将输入的整数转换成对应的拼音输出。文章包含了完整的代码示例,适用于初学者练习基本语法。

L1-007. 念数字

时间限制
400 ms
内存限制
65536 kB
代码长度限制
8000 B
判题程序
Standard
作者
翁恺

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

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

输入格式:

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

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

输出格式:

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

输入样例:
-600
输出样例:

fu liu ling ling

天梯赛一道水题,这道题可以用来探索switch语句和if语句哪个比较方便;

c++:

#include<iostream>
#include<cstring>
using namespace std;
int main()  
{
    char a[100]; 
cin>>a;
for(int i=0;i<strlen(a);i++)
{
switch(a[i]-'0')
{
case 0:cout<<"ling"; break;
case 1:cout<<"yi"; break;
case 2:cout<<"er"; break;
case 3:cout<<"san"; break;
case 4:cout<<"si"; break;
case 5:cout<<"wu"; break;
case 6:cout<<"liu"; break;
case 7:cout<<"qi"; break;
case 8:cout<<"ba"; break;
case 9:cout<<"jiu"; break; 
}
if(a[i]=='-')
cout<<"fu";
if(i!=strlen(a)-1)
{
cout<<" ";
}
else
{
cout<<endl;
}

    return 0;  
}

### 如何在 C++ 中读取和输出数字 #### 输出数字 为了打印整数或其他类型的数值数据,可以使用 `std::cout` 对象配合流插入运算符 (`<<`) 来实现。下面是一个简单的例子来展示如何输出一个整型变量: ```cpp #include <iostream> int main(){ int number = 42; std::cout << "The value of the integer is: " << number << std::endl; // 打印整数并换行 } ``` 对于浮点数或者其他基本类型的数据也可以采用相同的方式处理[^2]。 #### 输入数字 当涉及到从标准输入获取用户输入的数值时,则需要用到 `std::cin` 和 流提取操作符(`>>`) 。这里有一个实例演示怎样接收用户的键盘输入并将之存储到名为 `inputNumber` 的整形变量里: ```cpp #include <iostream> int main(){ int inputNumber; std::cout << "Please enter an integer:" << std::endl; std::cin >> inputNumber; // 获取用户输入的一个整数 std::cout << "You entered : " << inputNumber << std::endl; } ``` 上述程序会等待用户键入一个有效的整数表达式之后继续执行后续语句。 #### 处理不同进制的数字 如果想要支持十六进制或者八进制形式的数字输入/输出,在使用 `std::cout` 或者 `std::cin` 进行转换前可以通过设置相应的标志位完成格式化工作。例如要以二进制方式显示某个整数可这样做: ```cpp #include <iomanip> // 需要这个头文件用于 setbase() #include <iostream> int main(){ unsigned char byteValue = 0b1010'1010; std::cout << "Binary representation using bitset: " << std::bitset<8>(byteValue) << '\n'; std::cout << "Hexadecimal output with prefix '0x':" << " 0x" << std::hex << static_cast<int>(byteValue) << '\n'; std::cout << "Octal output without leading zero:" << std::oct << static_cast<int>(byteValue); } ``` 这段代码展示了多种方法表示同一个字节值的不同进制版本。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值