Auto commit

This commit is contained in:
smallkun 2025-04-01 23:54:12 +08:00
parent c573ab7540
commit e8fd54dc02

91
高精度.md Normal file
View File

@ -0,0 +1,91 @@
### 高精度加法
```c
#include <stdio.h>
#include <string.h>
int main(){
char str1[200], str2[200], result[201] = {0};
int i, j, k = 0, t = 0;
scanf("%s %s", str1, str2);
i=strlen(str1)-1;
j=strlen(str2)-1;
while(i >= 0 || j >= 0){
if(i >= 0) t+=str1[i--]-48;
if(j >= 0) t+=str2[j--]-48;
result[k++] = t%10+48;
t /= 10;
}
if(t != 0){
result[k++] = t+48;
}
for(i=k-1;i>=0;i--){
putchar(result[i]);
}
puts("");
return 0;
}
```
### 高精度乘法
```c
#include <stdio.h>
#include <string.h>
int main(){
char str1[200], str2[200], temp[200],result[1000] = {0};
int i, j, k, t;
scanf("%s%s", str1, str2);
j=strlen(str2)-1;
while(j>=0){
k=0;
for(i=strlen(str1)-1;i>=0;i--){
t = k + strlen(str2)-1-j;
result[t+1] += (result[t] + (str1[i]-48)*(str2[j]-48))/10;
result[t] = (result[t] + (str1[i]-48)*(str2[j]-48))%10;
k++;
}
j--;
}
k+=strlen(str2)-1;
while(result[k]==0) k--;//È¥µô¿Õ¸ñ
while(k>=0){
putchar(result[k] + 48);
k--;
}
puts("");
return 0;
}
```
### 高精度减法
```c
```
### 高精度乘法
```c
```