大数除法

 1 #include <bits/stdc++.h>
 2 using namespace std;
 3 char s[1005];
 4 int arr[1005];
 5 int c;
 6 int main()
 7 {
 8     scanf("%s",s);
 9     scanf("%d",&c);
10     for(int i=0;i<strlen(s);i++){
11         arr[i]=s[i]-'0';
12     }
13     int tw=0;int jishu=0;
14     for(int i=0;i<strlen(s);i++){
15         int d=(tw*10+arr[i]);
16         arr[i]=d/c;
17         tw=d%c;
18 
19     }
20     if(arr[0]==0&&strlen(s)==1){
21         cout << "0 "<< s[0] << endl;
22         return 0;
23     }
24     for(int i=0;i<strlen(s);i++){
25         if(arr[i]==0){   //把前置0给消除
26             jishu++;
27         }
28         else break;
29     }
30     for(int i=jishu;i<strlen(s);i++){
31         printf("%d",arr[i]);
32     }
33     printf(" %d
",tw);
34     return 0;
35 }
View Code
原文地址:https://www.cnblogs.com/qq-1585047819/p/10877586.html