Você está aqui: C ::: Dicas & Truques ::: Strings e Caracteres |
Como percorrer os caracteres de uma string C usando um laço forQuantidade de visualizações: 17451 vezes |
Como em C uma string é um vetor de caracteres, tais caracteres podem ser acessados por meio de seu índice no vetor (um valor inteiro começando em 0). Este trecho de código mostra como você pode usar o laço for para acessar cada caractere individualmente e exibí-lo na tela do programa:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, char *argv[]){ char palavra[] = "Arquivo"; // vamos percorrer os caracteres usando um laço for int i; for(i = 0; i < strlen(palavra); i++){ printf("Caractere na posicao %d = %c\n", i, palavra[i]); } puts("\n\n"); system("PAUSE"); return 0; } Ao executar este código C nós teremos o seguinte resultado: Caractere na posicao 0 = A Caractere na posicao 1 = r Caractere na posicao 2 = q Caractere na posicao 3 = u Caractere na posicao 4 = i Caractere na posicao 5 = v Caractere na posicao 6 = o |
![]() |
C ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Apostila C para iniciantes - Como usar o laço for em CQuantidade de visualizações: 38772 vezes |
O laço for é usado quando queremos executar um bloco de instruções um determinado número de vezes. Este laço é composto de três partes: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- for(inicialização; teste; incremento/decremento){ bloco de instruções } Na parte inicialização nós definimos o valor inicial da variável de controle. Na parte teste nós usamos o valor da variável de controle para testar a continuidade ou interrupção do laço. Finalmente, na parte incremento/decremento nós alteramos o valor da variável de controle para cima ou para baixo. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- int main(int argc, char *argv[]) { int i; for(i = 1; i <= 10; i++){ printf("%d ", i); } printf("\n\n"); system("PAUSE"); return 0; } O incremento/decremento da variável de controle não precisa ser necessariamente em 1. Podemos usar qualquer expressão. Veja um trecho de código que exibe os números pares de 0 à 10: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- int main(int argc, char *argv[]) { int i; for(i = 0; i <= 10; i += 2){ printf("%d ", i); } printf("\n\n"); system("PAUSE"); return 0; } Observe que "i += 2" é o mesmo que "i = i + 2". Com exceção da parte de testes, podemos inserir múltiplas expressões nas demais partes de um laço for. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int i, x; for(i = 0, x = 2; i <= 10; printf("%d ", i * x), i++); printf("\n\n"); system("PAUSE"); return 0; } Este último código é um pouco exótico, mas muito fácil de ser encontrado por aí. |
C ::: Dicas & Truques ::: Strings e Caracteres |
Como verificar a existência de qualquer um dos caracteres de um substring em uma string em C usando a função strpbrk()Quantidade de visualizações: 10394 vezes |
Muitas vezes precisamos verificar se qualquer um de um conjunto de caracteres está contido em uma string. Para isso nós podemos usar a função strpbrk(). Esta função recebe duas strings e retorna um ponteiro para a primeira ocorrência de qualquer um dos caracteres presentes na segunda string e também presentes na primeira string. Veja um exemplo no qual verificamos se uma string contém qualquer um dos digitos de 0 a 9:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { char texto[] = "Gosto muito de C e C++"; char numeros[] = "1234567890"; char *pos_atual = strpbrk(texto, numeros); if(pos_atual != NULL){ puts("A string contem digitos"); } else{ puts("A string NAO contem digitos"); } system("pause"); return 0; } |
C ::: Dicas & Truques ::: Rotinas de Conversão |
Como converter uma string em um valor de ponto-flutuante usando a função atof() da linguagem CQuantidade de visualizações: 9016 vezes |
Em algumas situações, pode ser necessário converter uma string em um valor numérico de ponto-flutuante. Para isso podemos usar a função atof(). Esta função recebe uma matriz de caracteres e tenta transformá-la em um valor de ponto-flutuante. Se a conversão não for possível, o valor 0 é retornado. Os sinais "+" e "-", o ponto decimal e uma parte exponencial, representada por "e" ou "E" são válidos na string a ser convertida. Veja um exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { // valor de ponto-flutuante em forma de string char valor_str[] = "34.5"; // A linha abaixo causa um comportamento estranho //float res = 10 + valor_str; // temos que converter a string em um valor de ponto-flutuante válido float res = 10 + atof(valor_str); printf("O resultado e: %f", res); puts("\n"); system("pause"); return 0; } |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
Códigos Fonte |
![]() Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
![]() Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |