做作业的时候,邻座的小盆友问你:“五乘以七等于多少?”你应该不失礼貌地围笑着告诉他:“五十三。”本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积。
输入格式:
输入在第一行给出两个不超过 1000 的正整数 A 和 B,其间以空格分隔。
输出格式:
在一行中倒着输出 A 和 B 的乘积。
输入样例:
5 7
输出样例:
53
>>思路
题目要求倒着输出两个数的乘积,首先把乘积求出来,再将这个数从低位到高位存入数组中,考虑到a和b都是小于1000的数,其乘积也不会超过1000000,故数组ans长度选择为7,然后从低位到高位倒着输出即可。第一遍提交的时候有两个测试点没有通过,第一反应是0的问题:比如5*2,最后会输出01,而不是1,故将上面的代码注释掉,直接将倒序的数算出来即可。
1 #include<bits/stdc++.h> 2 using namespace std; 3 int main(){ 4 int a,b,c,ans[7]; 5 scanf("%d%d",&a,&b); 6 c=a*b; 7 int n=0; 8 while(c!=0){ 9 ans[n++]=c%10; 10 c=c/10; 11 } 12 int k=0; 13 /*for(int i=0;i<n;i++){ 14 printf("%d",ans[i]); 15 }*/ 16 for(int i=0;i<n;i++){ 17 k+=ans[i]*pow(10,n-i-1); 18 } 19 printf("%d",k); 20 }