题目
作者: CHEN, Yue
单位: 浙江大学
时间限制: 400 ms
内存限制: 64 MB
代码长度限制: 16 KB
做作业的时候,邻座的小盆友问你:“五乘以七等于多少?”你应该不失礼貌地围笑着告诉他:“五十三。”本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积。
输入格式:
输入在第一行给出两个不超过 1000 的正整数 A 和 B,其间以空格分隔。
输出格式:
在一行中倒着输出 A 和 B 的乘积。
输入样例:
5 7
输出样例:
53
分析
得到乘积,倒叙输出即可,但是有个小坑就是,比如 20 x 30 = 600 ,此时倒叙输出答案应该为 6 而不是 006,就要想办法剔除前面的 0,我的解决办法是设置一个标记默认为 true,只有当前位数不为 0 时标记才转为 false,在标记为 true 时,当前位数不输出
代码(cpp)
#include<iostream>
using namespace std;
int main(){
int A,B;
cin>>A>>B;
int ans = A*B;
bool flag = true;
while(ans){
int num = ans%10;
ans = ans/10;
if(flag && !num) // 当标记状态还为 true ,且当前余数为 0,则不继续执行
continue;
if(flag && num) // 当标记状态为 ture,且当前余数不为 0了,变换标记,开始输出
flag =false;
cout<<num;
}
return 0;
}