Mudanças entre as edições de "Sistemas Operacionais e Introdução a Programação (diário 2009-2) - Atividades para revisão dos conceitos de C - Respostas"
Ir para navegação
Ir para pesquisar
Linha 49: | Linha 49: | ||
// Nesse ponto, a variável indice está indicando a | // Nesse ponto, a variável indice está indicando a | ||
//posição da penúltima letra. | //posição da penúltima letra. | ||
− | // | + | // Falta apenas mostrar, na tela, a última letra, |
+ | // que está à direita (+1): | ||
printf("%c\n", palavra[indice+1]); | printf("%c\n", palavra[indice+1]); | ||
} | } |
Edição das 13h17min de 30 de novembro de 2009
Manipulação de String
- Leia uma palavra e a repita, omitindo a penúltima letra.
#include <stdio.h>
#include <string.h>
int main(int argc, char * argv[])
{
char palavra[100];
int tamanho;
int indice;
// Verifica se o usuário digitou pelo menos um argumento.
// Se sim, aproveita e copia essa informação para a variável "palavra":
if(argc > 1)
{
strcpy(palavra, argv[1]);
}
else
{
// Se não digitou, pede ao usuário uma palavra nova:
printf("Digite uma palavra: ");
scanf("%s", palavra);
}
// Conta quantas letras possui a palavra - para saber qual é a penúltima :-)
tamanho = strlen(palavra);
// Apresenta a palavra original:
printf("A palavra original é: %s\n", palavra);
// Apresenta a palavra modificada:
printf("A palavra sem a penúltima letra é: ");
//
// Se a palavra possui menos de 2 letras, mostra direto a primeira/última:
if(tamanho < 2)
{
printf("%c\n", palavra[0]);
}
else
{
// Caso contrário, deve-se apresentar todas as primeiras letras
// até chegar à penúltima letra (sem mencioná-las)
for(indice = 0; indice < tamanho-2; indice++)
{
printf("%c", palavra[indice]);
}
// Nesse ponto, a variável indice está indicando a
//posição da penúltima letra.
// Falta apenas mostrar, na tela, a última letra,
// que está à direita (+1):
printf("%c\n", palavra[indice+1]);
}
}
- Faça o mesmo que o programa anterior, desta vez para uma frase completa: omitirá a última palavra
Interpretação da Entrada de Dados
- Leia um número como parâmetro do programa e escreva-o na forma extensa.
Aplicação de Funções
- Resolva o problema, mas desta vez utilize uma função em separado para cada dezena:
- Uma função para converter número de 0 a 9.
- Uma função para converter número de 10 a 19.
- Uma função para converter número de 20 a 29.