Ir ao conteúdo

Midori

Membro Pleno
  • Posts

    3.601
  • Cadastrado em

  • Última visita

Tudo que Midori postou

  1. Midori

    exercicio - strings

    Aqui rodou normalmente. Mas veja que eu usei ponteiro, talvez seu professor não aceite essa resolução. Teste dessa forma, #include <stdio.h> int main(void){ char frase[40]; int i; printf("Entre com o texto: "); fgets(frase,39,stdin); for(i = 0; frase[i] != '\0'; i++) if(frase[i] >= 97 && frase[i] <= 122) frase[i] -= 32; printf("\nNovo texto: %s\n", frase); return 0; } Screen, No meu primeiro exemplo o compilar já calcula o tamanho do texto e coloca '\0' no final, certo? Nesse caso não precisa de alocação dinâmica.
  2. Midori

    exercicio - strings

    Veja que a diferença na tabela ASCII entre minúscula e maiúscula é de 32. Portanto basta verificar se o carctere é >= 97 e <= 122 para efetuar a conversão e subtrair por 32. void converte(char *v){ while(*v != '\0'){ if(*v >= 97 && *v <= 122) *v -= 32; v++; } } int main(void){ char *texto = "teste 123"; converte(texto); printf("Texto = %s", texto); return 0; }
  3. Segue uma forma bem simples de resolver o exercício. #include <stdio.h> int main(void){ int x, y, z, w, s, num; scanf("%d", &num); if (num < 10){ printf("%d\n", num); return 0; } for(x = s = 0, z = 1, y = num - (num % z); x < ((num < 100) ? 2 : (num > 100 && num < 1000) ? 3 : 4); ++x){ w = (y / z % 10); z *= 10; y -= (y % z); s += w; } printf("%d", s); return 0; }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!