1. 程式人生 > >n-1位數(南陽oj 96)

n-1位數(南陽oj 96)

時間限制:3000 ms  |  記憶體限制:65535 KB

難度:1

輸入

第一行為M,表示測試資料組數。
接下來M行,每行包含一個測試資料。

輸出

輸出M行,每行為對應行的n-1位數(忽略字首0)。如果除了最高位外,其餘位都為0,則輸出0。

樣例輸入

4
1023
5923
923
1000

樣例輸出

23
923
23
0

描述

已知w是一個大於10但不大於1000000的無符號整數,若w是n(n≥2)位的整數,則求出w的後n-1位的數。

分析:

先算出數字長度,然後利用陣列將各個位數進行儲存,在利用數學函式進行輸出

#include <iostream>
#include<stdio.h>
#include<math.h>
using namespace std;
int main()
{
    int a,b,i,n[10],k;
    double sum=0;
    scanf("%d",&a);
    while(a--)
    {
        sum=0;
        scanf("%d",&b);
        for(i=1;i<10;i++)
        {
            n[i-1]=b%10;
            b=b/10;
            if(b==0)
                break;
        }
        for(k=i-2;k>=0;k--)
        {
            sum=sum+pow(10,k)*n[k];
        }
        printf("%.0lf\n",sum);
    }
    return 0;
}