Você está aqui: C ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Criando uma matriz de strings (strings, não é matriz de caracteres)

Quantidade de visualizações: 22062 vezes


Uma das tarefas mais difíceis para programadores C iniciantes é criar uma matriz de strings. Nesta dica eu forneço o código completo para tal tarefa. O segredo é criar um array bidimensional de char. Veja o código:
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  // declara e inicializa um array de strings
  // veja que definimos o limite de 99 caracteres
  // por string (uma posição é para o caractere
  // de fim de linha)
  char nomes[][100] = {"Osmar J. Silva", "Carlos de Souza",
    "Fernanda Reis", "Joaquim Alves"};

  // vamos exibir os nomes
  int i;
  for(i = 0; i < 4; i++){
    printf("%s\n", nomes[i]);
  }

  system("PAUSE");
  return 0;
}


Link para compartilhar na Internet ou com seus amigos:

C ::: Dicas & Truques ::: Matemática e Estatística

Como calcular raiz quadrada em C usando a função sqrt()

Quantidade de visualizações: 6049 vezes
A raiz quadrada de um número pode ser obtida em C por meio da função sqrt(). Esta função recebe um valor double, ou seja, qualquer tipo que possa ser convertido em double e retorna um valor double. Veja o 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>
#include <math.h>

int main(int argc, char *argv[])
{
  int numero = 9;

  printf("A raiz quadrada de %d é %f", numero,
    sqrt(numero));

  printf("\n\n");
  system("pause");
  return 0;
}

Ao executar este código nós teremos o seguinte resultado:

A raiz quadrada de 9 é 3.

É importante observar que não é possível obter a raiz quadrada de um número negativo. Caso seu código tente fazer isso, o resultado poderá ser imprevisível.


C ::: Dicas & Truques ::: Rotinas de Conversão

Como converter uma string em um valor inteiro usando a função atoi() da linguagem C

Quantidade de visualizações: 46524 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 ::: Métodos, Procedimentos e Funções

Exercício Resolvido de C - Como converter minutos em segundos usando C

Quantidade de visualizações: 473 vezes
Pergunta/Tarefa:

Escreva um programa C para converter minutos em segundos. Você deverá criar uma função converter() que receberá, como argumento, um número inteiro representando os minutos e retornará, também como um inteiro, os segundos correspondentes. Os minutos deverão ser informados pelo usuário.

Sua saída deverá ser parecida com:

Informe os minutos: 15
A quantidade de segundos é: 900
Resposta/Solução:

Veja a resolução comentada deste exercício em C:

----------------------------------------------------------------------
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 <locale.h>

// protótipo da função usada para converter minutos
// em segundos
int converter(int minutos);

// função principal do programa
int main(int argc, char *argv[]){
  // variáveis usadas na resolução do problema
  int minutos, segundos;
  
  setlocale(LC_ALL,""); // para acentos do português
 
  // vamos pedir para o usuário informar os minutos
  printf("Informe os minutos: ");
  scanf("%d", &minutos);
  
  // agora vamos chamar a função converter() para converter
  // os minutos em segundos
  segundos = converter(minutos);
  
  // e mostramos o resultado
  printf("A quantidade de segundos é: %d", segundos);
  
  printf("\n\n");
  system("PAUSE");	
  return 0;
}

// função usada para converter minutos em segundos
int converter(int minutos){
  int segundos = minutos * 60;
  return segundos;
}



Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

palavra = "FACULDADE"
resultado = palavra[0:len(palavra):2]
print(resultado)

A) EALCF

B) FACULDADE

C) FA

D) DADE

E) FCLAE
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

soma = 0
for i in range(0, 10):
  soma = soma + 3
  if i > 4:
    break
  
print("A soma é: {0}".format(soma))

A) A soma é: 9

B) A soma é: 19

C) A soma é: 24

D) A soma é: 18

E) A soma é: 28
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em

Dimensionamento de pilares de extremidade

É importante detalhar as armaduras longitudinais e transversais de um pilar de extremidade durante a concretagem dessas estruturas, evitando futuras patologias. Para isso, é importante que o projetista atenda aos requisitos normativos desse detalhamento.

Sobre o detalhamento de armaduras de pilares de extremidade, assinale a alternativa correta.

A) O máximo espaçamento permitido entre as barras longitudinais corresponde a 500mm.

B) O espaçamento mínimo permitido entre as barras transversais corresponde a 5mm.

C) O diâmetro da armadura transversal deve ser maior ou igual a 5mm ou 1/4 do diâmetro da barra longitudinal.

D) O diâmetro máximo da barra longitudinal corresponde a 12,5mm e a 1/8 da barra transversal.

E) Para armaduras de aço CA-50, o espaçamento vertical corresponde a 25 vezes o diâmetro da barra transversal.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais

Perda de Carga Localizada, Acessórios de Tubulação

Considerando a questão: "Qual a perda de carga singular em um conduto de 100 m, diâmetro de 100 mm, com um fluido escoando a 2 m/s, apresentando as seguintes singularidades rosqueadas na tubulação: válvula globo totalmente aberta e cotovelo de 45º com raio normal?".

Qual o comprimento equivalente das perdas de cargas singulares da tubulação anteriormente citada, considerando que o tubo perde linearmente 0,135 m de carga por metros de tubulação?

Selecione a resposta:

A) 9 m.

B) 14 m.

C) 10 m.

D) 12 m.

E) 8 m.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

A responsabilidade moral

A moral está intrínseca, ou seja, no interior da decisão de como agir em determinada situação, no foro íntimo de cada um, na forma como as pessoas, individualmente, reagem diante de certo impasse. Portanto, marque a alternativa que expressa corretamente o conceito de moral.

A) Moral e ética são a mesma coisa.

B) Moral é o conjunto de regras aplicadas no cotidiano e usadas continuamente por cada cidadão.

C) Moral remete a atitudes benéficas.

D) Moral reflete em atitudes que os cidadãos desprezam.

E) Moral é o conjunto de regras que não se aplicam, de nenhuma forma, na sociedade.
Verificar Resposta Estudar Cards Todas as Questões

Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C

Veja mais Dicas e truques de C

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
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
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 32 usuários muito felizes estudando em nosso site.