Experimento 4-1-4 Encuentra los dígitos de un número entero y la suma de los dígitos (15 puntos)

Para un entero positivo dado N, encuentre la suma de sus dígitos y sus dígitos.

Formato de entrada:

Ingrese un entero positivo N que no exceda 1 0 9 en una línea Ingrese un entero positivo N que no exceda 10 ^ {9} en una línea Entrada en en una fila se da una un ésimo no de ultra excesiva . 1 09 esunnúmeroenteropositivoN

Formato de salida:

Muestra el número de dígitos de N y la suma de sus dígitos en una línea, separados por un espacio.

Muestra de entrada:

321

Salida de muestra:

3 6

Código:

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

typedef long long int long_int;
int main() {
    
    
	long_int n,temp;
	int poi = 0,value = 0;
	scanf("%lld",&n);
	temp = n;
	// 321——321 % 10 = 1——321 / 10 = 32——32 % 10 = 2 
	while (1) {
    
    
		value += (temp % 10);
		if (temp < 10) {
    
    
			poi += 1;
			break;
		} else {
    
    
			temp /= 10;
			poi += 1;
		}
	}
	printf("%d %d",poi,value);
	return 0;
} 

Enviar captura de pantalla:

Inserte la descripción de la imagen aquí

Ideas de resolución de problemas:

La idea de resolver el problema aquí ya se ha encontrado en el problema anterior. ¡El comentario en el código da un ejemplo para que todos lo entiendan!

  • typedef longlong int long_int;El significado es hacer long long intel alias para la long_intconveniencia de la llamada posterior, que es puramente un desastre, ¡puedes usar la anterior directamente!

Supongo que te gusta

Origin blog.csdn.net/weixin_43862765/article/details/114477057
Recomendado
Clasificación