题解 | #循环数比较#

循环数比较

https://www.nowcoder.com/practice/24575008c6134b6fa4fab8ea0ea82a99

#include <stdio.h>
#include <string.h>
void repeat_judge(int x,int k,int x1,int k1)
{
    int data=x,data1=x1;
    int j=0;
    while(data)  //读取元素大小,(个十百千万……)
    {
        if(data!=0)
            j++;
        else
            break;
        data=data/10;
    }
    int j1=0;
    while(data1)
    {
        if(data1!=0)
            j1++;
        else
            break;
        data1=data1/10;
    }
    //printf("%d,%d,%d,%d",j,k,j1,k1);
    if(j*k > j1*k1)
        printf("Greater\n");
    else if(j*k < j1*k1)
        printf("Less\n");
    else
    {
        data=x;
        data1=x1;
        char sign[19]={0};
        char sign1[19]={0};     //最后一位必定是0
        sprintf(sign, "%d%d\n", data,data1);
        sprintf(sign1, "%d%d\n", data1,data);
        //printf("%s\n",sign);
        //printf("%s\n",sign1);
        for(int i=0;i<19;i++)
        {
            if(sign[i]=='\n' && sign1[i]=='\n')
            {
                printf("Equal\n");
                break;
            }
            if(sign[i]<sign1[i])
            {
                printf("Less\n");
                break;
            }
            if(sign[i] >sign1[i])
            {
                printf("Greater\n");
                break;
            }
        }
    }
}


int main() {
    int x1, k1, x2, k2;
    scanf("%d %d %d %d",&x1,&k1,&x2,&k2);
    repeat_judge(x1, k1, x2, k2);
    return 0;
}

全部评论

相关推荐

投递阿里巴巴控股集团等公司7个岗位 >
点赞 评论 收藏
转发
1 收藏 评论
分享
牛客网
牛客企业服务