Você está aqui: C ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço while em C - Linguagem C para iniciantes em programaçãoQuantidade de visualizações: 33392 vezes |
O laço while é usado quando queremos que um bloco de instruções seja executado ENQUANTO uma condição for verdadeira (true). Veja um trecho de código exemplificando isso:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- int valor = 1; while(valor <= 10){ printf("%d ", valor); valor++; } Este trecho de código exibe os números de 1 à 10 na página. Veja agora o mesmo trecho de código, desta vez contando de 10 à 1: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- int valor = 10; while(valor >= 1){ printf("%d ", valor); valor--; } Lembre-se de que a condição testada em um laço while deve resultar em um valor boolean (true ou false). O trecho de código seguinte deixa isso mais claro: ---------------------------------------------------------------------- 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 continuar = 1; // 1 é true em C int valor = 1; while(continuar){ printf("%d ", valor); valor++; if(valor > 10) continuar = 0; // 0 é false em C } printf("\n\n"); system("PAUSE"); return 0; } Para finalizar, lembre-se de que um laço while pode nunca ser executado, ou seja, se a condição testada na primeira iteração já resultar false, o fluxo de código é transferido para a primeira instrução após o laço. |
![]() |
C ::: Dicas & Truques ::: Rotinas de Conversão |
Como converter uma string em um valor inteiro usando a função atoi() da linguagem CQuantidade de visualizações: 46621 vezes |
Em algumas situações, pode ser necessário converter uma string em um valor numérico inteiro. Para isso podemos usar a função atoi(). Esta função recebe uma matriz de caracteres e tenta transformá-la em um valor inteiro. Se a conversão não for possível, o valor 0 é retornado. Os sinais "+" 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 inteiro em forma de string char valor_str[] = "10"; // A linha abaixo causa um comportamento estranho //int res = 40 + valor_str; // temos que converter a string em um valor inteiro válido int res = 40 + atoi(valor_str); printf("O resultado e: %d", res); puts("\n"); system("pause"); return 0; } |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercício Resolvido de C - Usando um laço for para percorrer os elementos de uma matriz e exibir a soma dos valores positivos e a quantidade de valores negativosQuantidade de visualizações: 11757 vezes |
Exercícios Resolvidos de C - Usando um laço for para percorrer os elementos de uma matriz e exibir a soma dos valores positivos e a quantidade de valores negativos Pergunta/Tarefa: Considere a seguinte matriz de inteiros: // uma matriz de inteiros contendo sete elementos int valores[] = {-3, 9, 12, -34, -2, 20, 10}; Escreva um programa C que usa um laço for para percorrer todos os elementos desta matriz e exibir a soma dos valores positivos e a quantidade de valores negativos. Seu programa deverá exibir uma saída com a mensagem: A soma dos valores positivos é: 51 A quantidade de valores negativos é: 3 Resposta/Solução: Veja abaixo a resolução completa para esta tarefa: ---------------------------------------------------------------------- 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[]) { // uma matriz de inteiros contendo sete elementos int valores[] = {-3, 9, 12, -34, -2, 20, 10}; // o primeiro passo é criar uma variável que vai receber a soma // dos valores positivos int soma_positivos = 0; // agora uma variável para receber a quantidade de valores negativos int quant_negativos = 0; int i; // agora vamos usar uma laço for para percorrer todos os elementos // da matriz for(i = 0; i < 7; i++){ // vamos verificar se o valor do elemento atual é negativo if(valores[i] < 0){ quant_negativos++; } else{ // o valor é positivo soma_positivos = soma_positivos + valores[i]; } } // vamos exibir a soma dos valores positivos printf("A soma dos valores positivos é: %d\n", soma_positivos); // vamos exibir a quantidade de valores negativos printf("A quantidade de valores negativos é: %d\n", quant_negativos); system("PAUSE"); return 0; } |
C ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como pesquisar um valor em um vetor de inteiros em CQuantidade de visualizações: 9345 vezes |
Em algumas situações precisamos verificar se um determinado valor está contido em uma matriz de inteiros em C. Nesta dica eu mostro como isso pode ser feito usando a pesquisa ou busca linear. Veja o código completo comentado:---------------------------------------------------------------------- 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[]) { // vamos declarar e inicializar uma matriz de cinco inteiros int valores[] = {3, 8, 2, 1, 4}; int encontrei = 0; // vamos inicializar encontrei como falso int i; // variável de controle do laço int valor = 2; // valor a ser pesquisado // vamos percorrer os elementos da matriz e verificar se o valor // informado está contido na mesma for(i = 0; i < 5; i++){ // o valor pesquisado é igual ao valor do elemento atual? if(valores[i] == valor){ encontrei = 1; // encontrei agora é verdadeiro break; // vamos sair do laço } } // vamos mostrar o resultado if(encontrei) printf("O valor pesquisado esta contido na matriz"); else printf("O valor pesquisado NAO esta contido na matriz"); printf("\n\n"); system("pause"); return 0; } Ao executar este trecho de código teremos o seguinte resultado: O valor pesquisado está contido na matriz. |
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 |