Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

suzy

[C] Ajuda: Onde está o erro? (Resolvido)

Mensagens Recomendadas

suzy    0
suzy
//Desenvolva uma funcao que receba, como argumento, um valor inteiro positivo e devolva
//o numero de digitos do valor recebido.

#include<stdio.h>
int digitos(int x)
{
int n,resto;
  while(n>0)
  {
  resto=resto+n%10;
  n=n/10;
  }
  return resto;
}

main()
{
int numero,total;
printf(" introduza o numero\n");
scanf("%d",&numero);
total=digitos(numero);
printf(" a soma dos digitos e %d\n",total);
fflush(stdin);
getchar();
}

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
nakuro    0
nakuro

#include<stdio.h>
int digitos(int x)
{
int resto;
resto=0;
  while(x>0)
  {
  resto=resto+x%10;
  x=x/10;
  }
  return resto;
}

main()
{
int numero,total;
printf(" introduza o numero\n");
scanf("%d",&numero);
total=digitos(numero);
printf(" a soma dos digitos e %d\n",total);
fflush(stdin);
getchar();
}

penso que sera assim o erro que dava na função mas parece que tens na propria função um erro que não vai dar o resultado, que é o resto tem que ser inicializado em 0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade