Programa en lenguaje C para sumar dos números de 20 dígitos, ayúdenme a descubrir qué está mal~~~
Escribí un programa para sumar dos enteros positivos largos dentro de cien dígitos como referencia
#include lt stdio.hgt;
int main(int argc; , char **argv)
{
char n1[100];
char n2[100]; 101];
int longitud1;
int longitud2;
int longitud3
int temp1; int temp2;
int temp
int bandera=0;
int i
printf("número 1:\n ");
i=0;
while((n1[i]=getchar()) != '\n') {
si( n1[i]lt;'0' || n1[i]gt;'9')
{
printf("la entrada no es número\n" ); p>
devolver 1;
}
i
}
longitud1=i
> p>
n1[i]='\0';
// printf("s\n", n1); n ");
i=0;
while((n2[i] = getchar()) != '\n') {
si ( n2[i] lt; '0' || n2[i] gt; '9')
{
printf("la entrada no es un número\n");
p>devolver 1;
}
i
}
longitud2=i; >
n2[i]='\0';
// printf("s\n", n2);
longitud3=longitud1;
if (longitud2 gt; longitud3)
longitud3 = longitud2;
for(i=1;ilt;=longitud3;i)
{ p>
if((longitud1-i) lt; 0)
temp1 = 0
else
temp1 = n1[longitud1-i] - '0 ';
if((length2-i) lt; 0)
temp2 = 0;
else
temp2 = n2[ longitud2-i] - '0';
temp= temp1 temp2 bandera;
if(temp gt; 9)
{
temp -= 10;
agregar[longitud3 1-
i] =temp '0';
bandera=1
}
más
{
agregar[longitud3 1-i] = temp '0';
flag=0
}
}
añadir[longitud3 1]='\0';
añadir[0]='0' bandera;
printf("s \n", agregar);
devolver 0;
}