pat 乙级 1002 写出这个数(C++)

题目

读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。

输入与输出

输入格式:

每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10^​100​​ 。

输出格式:

在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。

输入样例:

1234567890987654321123456789

输出样例:

yi san wu

分析

简要分析

从n的给值来看,远远超出long long int类型的数据范围。而求的是各位的数字之和,然后再用拼音输出。所以,考虑用字符串的的方式存储n。

解决方案

getchar函数正好满足需求
使用不同的编程语言,需要不同头文件。

C

#include<stdio.h>

C++

#include<cstdio>

AC代码

#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
void print_pinyin(int x)
{switch(x){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;default:break;}}
int main()
{int i,x,sum=0;char n;while((n=getchar())!='\n'){sum=sum+(n-'0');//字符-'0':字符隐性转换为整数}int temp=0;int x1=sum;while(x1!=0){temp++;x1=x1/10;}int *a=(int *)malloc(temp*sizeof(int));for(i=temp-1;i>=0;i--){a[i]=sum%10;sum=sum/10;}for(i=0;i<temp;i++){print_pinyin(a[i]);if(i!=(temp-1)){cout<<" ";}}return 0;
}

更多题解

pat 乙级 题解汇总(持续更新)(C++)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/341451.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详细介绍 安装ns3步骤

安装ns3步骤&#xff1a; 准备工作—— 1.[Linux] ubuntu系统安装完成 2.熟悉Linux常用命令 开始安装—— 确保ubuntu已经完成换源---阿里云或清华,个人推荐阿里云 3.安装组件和依赖库 1.快捷键CtrlAltT 打开终端&#xff0c;输入以下命令&#xff1a; sudo apt-get update …

在硒中查找具有链接文本和部分链接文本的元素

Selenium中CSS定位器是一个基本概念&#xff0c;每个旨在使用Selenium执行自动化测试的测试人员都应该意识到这一点。 在Selenium中充分使用CSS定位器可以帮助您以更高效&#xff0c;更彻底的方式执行测试。 我从7年以来一直从事自动化测试行业&#xff0c;并且我经常观察到测试…

浅析C++的三大循环-以100以内的质数求解为例

简介 C三大循环分别是while、do while循环和for循环&#xff0c;其中for循环最为灵活&#xff0c;do while循环和while循环基本一致。 语法格式 //while语法 while(循环控制条件) { 语句 } //do while语法 do { } while(循环控制条件); //for循环 for(变量初始化;循环控制条…

如何找到CSDN的草稿

如何找到CSDN的草稿 Ps&#xff1a;CSDN的草稿箱有点难找

W10关闭不必要的服务

1 win10关不必要的服务 简单粗暴且有效 2 win10电脑如何关闭不必要的启动项 关闭不必要的启动项 3 有关服务方面 没有试验过&#xff0c;以后有空试验一下

pat 乙级 1004 成绩排名(C++)

题目 读入 n&#xff08;>0&#xff09;名学生的姓名、学号、成绩&#xff0c;分别输出成绩最高和成绩最低学生的姓名和学号。 输入格式&#xff1a; 每个测试输入包含 1 个测试用例&#xff0c;格式为 第 1 行&#xff1a;正整数 n 第 2 行&#xff1a;第 1 个学生的姓名…

java8 函数式编程_您必须学习Java 8的函数式编程吗?

java8 函数式编程我最近一直在研究Java 8&#xff0c;并掌握了Manning出版的“ Java 8 In Action” 。 让我印象深刻的第一件事是Java 8独特的销售主张是函数式编程。 函数现在是一流的变量&#xff0c;您可以像int或String一样在代码中传递它们。 这是一个很大的变化。 近年来…

Dell笔记本双系统安装(Ubuntu 16.04)

一 参考博客 重点 以上博客在分盘问题中描写不详细&#xff0c;参考右边博客&#xff1a; 有关分盘问题 注意&#xff1a;其中&#xff0c;由于Bios Dell与其余电脑存在区别&#xff0c; 1. 开机按F12&#xff0c;进入BIOS 2.在 BIOS 的Boot菜单下&#xff0c;将Secure Bo…

pat 乙级 1006 换个格式输出整数(C++)

题目 让我们用字母 B 来表示“百”、字母 S 表示“十”&#xff0c;用 12…n 来表示不为零的个位数字 n&#xff08;<10&#xff09;&#xff0c;换个格式来输出任一个不超过 3位的正整数。 例如 234 应该被输出为 BBSSS1234&#xff0c;因为它有 2 个“百”、3 个“十”、以…

Stomp-Spring服务器端的Web套接字Java客户端

问题&#xff1a; 为了分析问题&#xff0c;我不得不编写一个简单的Java Web套接字客户端站点代码&#xff0c;并使用基于stomp的Web套接字代理连接到服务器端基于Spring的应用程序。 解决方案&#xff1a; pom.xml <?xml version"1.0" encoding"UTF-8&qu…

W10更新时间

https://jingyan.baidu.com/article/0aa2237561921088cc0d64f6.html

Selenium Java教程– Selenium中的类名定位器

Selenium中CSS Locator是编写脚本的最重要方面之一。 如果您无法通过使用Selenium中的任何CSS定位器来定位元素&#xff0c;那么精通Selenium自动化将是一项艰巨的任务。 硒提供多种定位元素的方法。 您可以查看有关Selenium中不同CSS定位器的其他文章&#xff0c;这些文章可通…

pat 乙级 1056 组合数的和(C++)

题目 给定 N 个非 0 的个位数字&#xff0c;用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8&#xff0c;则可以组合出&#xff1a;25、28、52、58、82、85&#xff0c;它们的和为330。 输入格式&#xff1a; 输入在…

Tensorflow-gpu的方式

主要参考https://www.jianshu.com/p/9911dee2f00b 主要讲一下在Linux下安装tensorflow gpu版的两种方式&#xff1a;使用conda和pip安装。安装cpu版本比较简单&#xff0c;安装命令相同&#xff0c;但是省去了安装cuda和cudnn。 注意&#xff1a; 在安装tensorflow gpu版本前…

pat 乙级 1016 部分A+B(C++)

题目 正整数 A 的“D​A&#xff08;为 1 位整数&#xff09;部分”定义为由 A 中所有 D​A组成的新整数 P​A。例如&#xff1a;给定 A3862767&#xff0c;DA6&#xff0c;则 A 的“6 部分”P​A是 66&#xff0c;因为 A 中有 2 个 6。现给定 A、D​A、B、DB&#xff0c;请编…

NS3使用过程中重要内容整理

1 ns-3中两个常用的网络分析工具——TcpDump和Wireshark 可以与Wireshark结合,更好的理解数据包的传送过程

C++ floor、ceil、round函数的区别

函数解释 floor函数&#xff0c;向下取整。即向负无穷方向取离传入参数最近的整数ceil函数&#xff0c;向上取整。即向正无穷方向取离传入参数最近的整数round函数&#xff0c;四舍五入。 头文件 C语言&#xff1a;math.hC: cmath 函数原型 double floor(double)double ce…

javamail程序源码_JavaMail可能是邪恶的(并迫使您重新启动应用程序服务器)

javamail程序源码在配置JavaMail时&#xff0c;总是有一种有趣的方法。 基本上&#xff0c;您必须填写无类型的地图或属性结构&#xff0c;并希望获得正确的解释。 网络上无数的教程显示了使其正常工作&#xff08;发送/接收邮件&#xff09;所需的最小属性。 但是&#xff0c…

U盘在Ubuntu20.04下只能读取文件不能向U盘复制文件

背景 U盘在Ubuntu20.04下只能读取文件不能向该U盘复制文件,该U盘在其余电脑上一点问题不存在. Ubuntu系统插入其余U盘也能正确读取,只对该U盘无法处理. 处理过程 在CSDN中找了许多方法&#xff0c;比如这种“三行命令教你解决linux系统下U盘只读文件系统问题”。 但是一点…

C++ 函数参数3种传值方式(以交换两个数为例)

简介 在C中&#xff0c;函数参数的传值方式有传值调用、指针调用和引用调用。接下来&#xff0c;通过一个实例来演示三者区别。 代码 #include <iostream>using namespace std; //传值调用 void Swap(int a,int b) {int tempa;ab;btemp; } //指针调用 void Swap2(int…