栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C++】1006 换个格式输出

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C++】1006 换个格式输出

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

输入格式:
        每个测试输入包含 1 个测试用例,给出正整数 n(<1000)。

输出格式:
        每个测试用例的输出占一行,用规定的格式输出 n。

输入样例 1:

234

输出样例 1:

BBSSS1234

输入样例 2:

23

输出样例 2:

SS123

浅析

        只要得到每一位上的数,利用for循环输出相应的字符。

代码

#include 
using namespace std;

int main(void){
	int n; cin >> n;
	for (int i = 1; i <= n / 100; i++) {
		cout << "B";
	}
	for (int j = 1; j <= n / 10 % 10; j++) {
		cout << "S";
	}
	for (int k = 1; k <= n % 10; k++) {
		cout << k;
	}
	cout << endl;

	return 0;
}

以下是本体衍生的其他思考,可以忽略不看:

        如果我们将题目稍微改一下,如个位数可以为0(取值范围0~9),那么就可以将以上代码稍加修改一下。

#include 
using namespace std;

int main(void) {
	int n; cin >> n;
	for (int i = 1; i <= n / 100; i++) {
		cout << "B";
	}
	for (int j = 1; j <= n / 10 % 10; j++) {
		cout << "S";
	}

	if (n % 10 == 0)	//判断个位是否为0
		cout << "0";
	else
		for (int k = 1; k <= n % 10; k++) {
			cout << k;
		}
	cout << endl;
	
	return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1010137.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号