pat乙级1017 A除以B

#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>

int main(){
    char a[1020];
    int b;
    scanf("%s%d",&a,&b);
    int i;
    int yu=0;
    int temp;
    if(strlen(a)==1&&a[0]-'0'<b) printf("0 %d",a[0]-'0');
    else{
        for(i=0;i<strlen(a);i++)
        {
            temp=(yu*10+a[i]-'0')/b;
            if(temp!=0||i!=0) printf("%d",temp);//因为12除以7,要显示1 5,不能显示01 5,所以
            yu=(yu*10+a[i]-'0')%b;                        //加上条件:商数不为0,或不是第一位数,满足
        }                                                              //其一才输出
        printf(" %d",yu);
    }
    return 0;
}

//字符1:yu==0,temp=(0*10+1)/7=0;yu=1%7=1;此时i==0,temp==0,两个条件都不满足,,,所以不输出

//字符2:yu==1,temp=(1*10+2)/7=1余5,yu=(1*10+2)%7=5;

//字符3:yu==5,temp=(5*10+3)/7=7余4,yu=4;

........

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值