1086 就不告诉你 (15 分)
做作业的时候,邻座的小盆友问你:“五乘以七等于多少?”你应该不失礼貌地围笑着告诉他:“五十三。”本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积。
输入格式:
输入在第一行给出两个不超过 1000 的正整数 A 和 B,其间以空格分隔。
输出格式:
在一行中倒着输出 A 和 B 的乘积。
一、JAVA实现
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int b = scanner.nextInt();
int sum = a*b;
String A = Integer.toString(sum);
int len = A.length();
int sign=0;
for(int i=len-1;i>=0;i--){
if(A.charAt(i)=='0'&&sign==0) continue;
sign++;
System.out.print(A.charAt(i));
}
if(sign==0) System.out.print("0");
}
}
二、C实现
#include<stdio.h>
int main()
{
int a,b;
scanf("%d %d",&a,&b);
int sum=a*b;
int A[1000001];
int amount=0;
while(sum!=0){
A[amount++]=sum%10;
sum/=10;
}
int sign=0;
for(int i=0;i<amount;i++){
if(A[i]==0&&sign==0) continue;
sign++;
printf("%d",A[i]);
}
return 0;
}
本题的要点:从后往前,第一个非0数之前的1均不输出;