1017. A除以B (20)——C語言

本題要求計算A/B,其中A是不超過1000位的正整數,B是1位正整數。你需要輸出商數Q和餘數R,使得A = B * Q + R成立。

輸入格式:

輸入在1行中依次給出A和B,中間以1空格分隔。

輸出格式:

在1行中依次輸出Q和R,中間以1空格分隔。

輸入樣例:
123456789050987654321 7
輸出樣例:

17636684150141093474 3


#include<stdio.h>
#include<string.h>
int main()
{
	char a[1001];
	int a2[1001]={0};
	int b,r=0,i;
	scanf("%s%d",a,&b);
	int length=strlen(a);	
	for(i=0;i<length;i++)
		a2[i]=a[i]-'0';
	for(i=0;i<length;i++)
	{
		if(i!=0||a2[i]/b!=0)
			printf("%d",(10*r+a2[i])/b);
		r=(10*r+a2[i])%b;
	}
	if(length==1&&a2[0]<b)
		printf("0");
	printf(" %d",r);
	return 0;
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章