2727: 【例32.3】 数位积

内存限制:64 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:45 解决:27

题目描述

給出一个非负整数$x$,请求出$x$中各个数位上的数字之积。

输入

一开始有一个整数 $n$($1≤n≤100$),表示共有几组测试数据。接下来有$n$个整数$n$($0≤x<2147483648$)。

输出

输出数位数字乘积的结果。

样例输入 复制

3
356
123
9999

样例输出 复制

90
6
6561

提示

#include<bits/stdc++.h>
using namespace std;
int n,j,x; //j:当前整数各个数位上的乘积
int main(){
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>x;
        if(x==0) {
            cout<<0<<endl;
            continue;  //跳出 for 循环一次
        }
        j=1;
        while(x){
            j*=x%10;
            x/=10;
            if(j==0) break;  //跳出 while 这层的循环
        }
        cout<<j<<endl;
    }
    return 0;
}