UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS – CCT DEPARTAMENTO DE CIÊNCIAS DA COMPUTAÇÃO Caderno de Exercícios Algoritmos Introdução Linguagem C SUMÁRIO SEQUÊNCIA SIMPLES ________________________________________________ 3 ESTRUTURAS CONDICIONAIS ________________________________________ 5 ESTRUTURAS DE REPETIÇÃO ________________________________________ 7 FUNÇÕES __________________________________________________________ 10 VETORES __________________________________________________________ 12 STRINGS ___________________________________________________________ 15 MATRIZES _________________________________________________________ 16 PONTEIROS ________________________________________________________ 18 1.0 SEQUÊNCIA SIMPLES 1. Faça um algoritmo / programa em C que leia um número e o mostre. 2. Faça um algoritmo / programa em C que leia dois números e mostre o produto desses números. 3. Faça um algoritmo / programa em C que leia a idade de duas pessoas e mostre sua soma. 4. Faça um algoritmo / programa em C que leia dois números e troque o conteúdo destas variáveis entre si. Mostrar os novos conteúdos. 5. Faça um algoritmo / programa em C que leia três números, efetue o cálculo das expressões abaixo e mostre os resultados. (A – B) * C; (( x – 5) * y) – z. 6. Faça um algoritmo / programa em C que leia duas notas, os pesos de cada nota, e mostre a média ponderada. Média Ponderada = (nota 1 * peso nota 1) + (nota 2 * peso nota 2) / soma dos pesos. 7. Faça um algoritmo / programa em C que leia uma temperatura em graus Fahrenheit e converta / mostre em graus Centígrados. Centígrados = (Fahrenheit – 32) * 5 / 9. 8. Maria quer saber quantos litros de gasolina precisa colocar em seu carro e quanto vai gastar para fazer uma viagem até a casa de sua irmã. Faça um algoritmo / programa em C que leia: A distância da casa de Maria até sua irmã; O consumo do carro de Maria (KM rodados / litro); O preço da gasolina (litro). E mostre as informações que Maria necessita. 9. Faça um algoritmo / programa em C de auxilio para vendedores. A partir de um valor lido, mostrar: O total a pagar com desconto de 10%; O valor de cada parcela, no parcelamento de 3 x sem juros; A comissão do vendedor, no caso da venda ser a vista (5% sobre o valor com desconto); A comissão do vendedor, no caso da venda ser parcelada (5% sobre o valor total). 10. Faça um algoritmo / programa em C que leia um valor inteiro em segundos, e converta / mostre no formato hh:mm:ss. 11. Faça um algoritmo / programa em C que leia um valor em metros e mostre o converta / mostre em decímetros, centímetros e milímetros. 12. Faça um algoritmo / programa em C que leia quanto você ganha por hora e o número de horas trabalhadas no mês. Na seqüência, calcule e mostre o total do seu salário no referido mês. 13. Faça um algoritmo / programa em C para calcular a quantidade necessária de latas de tinta para pintar uma parede com X metros de largura por H metros de altura. Considere que o consumo de tinta por metro quadrado é 2.5 litros e a quantidade de tinta por lata é 8 litros. 14. Faça um algoritmo / programa em C que leia o salário bruto mensal de um funcionário, calcule e mostre os valores conforme modelo abaixo: Salário Bruto (-) IR (15%) (-) INSS (11%) (-) Sindicato (3%) Salário Liquido : R$ : R$ : R$ : R$ : R$ 2.0 ESTRUTURAS CONDICIONAIS 15. Faça um algoritmo / programa em C que leia dois números e mostre o maior deles. 16. Faça um algoritmo / programa em C que leia um número e informe se ele é positivo ou negativo. 17. Faça um algoritmo / programa em C que leia um número e informe se ele é par ou ímpar. 18. Faça um algoritmo / programa em C que leia 3 números e mostre-os em ordem decrescente. 19. Faça um algoritmo / programa em C que leia a capacidade de um elevador e o peso de 3 pessoas. Na seqüência, Informar se o elevador está liberado para subir ou se excedeu a carga máxima. 20. Faça um algoritmo / programa em C que leia três notas e mostre: A média das notas; A situação final do aluno: 21. aprovado média >= 7; prova final média > = 4 e média < 7; reprovado média < 4. Faça um algoritmo / programa em C para controlar a bilheteria de um metrô. O operador deve informar o tipo do bilhete (unitário, duplo ou 10 viagens) e o valor pago pelo passageiro. O algoritmo / programa deve mostrar, então, a quantidade de bilhetes possíveis e o troco que o passageiro deve receber. Tabela de Preços Bilhete unitário R$ 1,30 Bilhete duplo R$ 2,60 Bilhete de 10 viagens R$ 12,00 22. Faça um algoritmo / programa em C para calcular o salário de um funcionário. Deverão ser lidos: O salário bruto; O número de dependentes. E apresentado o salário líquido. Salário Líquido = Salário Bruto – Desconto INSS + (15,00 * Número de Dependentes) + Auxílio Refeição (100,00). Tabela Incidência INSS Salário Bruto % INSS Até R$ 300,00 9 R$ 300,01 - R$ 700,00 10 Acima de R$ 700,00 11 23. Faça um algoritmo / programa em C que leia o turno em que um aluno estuda (domínio: “M”-matutino, “V”-Vespertino ou “N”-Noturno). Em seguida, mostre a mensagem “Bom Dia!”, “Boa Tarde!”, “Boa Noite!” ou “Valor Inválido!”, conforme o caso. 24. Faça um algoritmo / programa em C que leia um número e exiba o dia correspondente da semana (1-Domingo, 2- Segunda,etc). Se o dia for inválido, mostrar a mensagem “Valor inválido”. 25. Faça um algoritmo / programa em C que leia o preço de um produto e uma condição de pagamento, e determine o valor a ser pago. 1 2 3 4 Condições de Pagamento À vista em dinheiro ou cheque, recebe 10% de desconto. À vista no cartão de crédito, recebe 5% de desconto. Em 2 vezes, preço normal de etiqueta sem juros. Em 3 vezes, preço normal de etiqueta mais juros de 10%. 26. Faça um algoritmo / programa em C que leia um valor numérico inteiro e verifica se este valor é divisível por dois e três. 27. Faça um algoritmo / programa em C que leia o sexo, a idade e o tempo de trabalho de uma pessoa e determine se ela pode se aposentar. Assuma que homens se aposentam com 45 anos de trabalho ou idade superior a 70 anos, e mulheres de aposentam com 40 anos de trabalho ou idade superior a 65 anos. 3.0 ESTRUTURAS DE REPETIÇÃO 28. Faça um algoritmo / programa em C que leia 50 números, um de cada vez, conte quantos deles são negativos, mostrando esta informação. 29. Faça um algoritmo / programa em C que leia 50 números, um de cada vez, e encontre o maior deles, mostrando esta informação. 30. Faça um algoritmo / programa em C que gere / mostre a tabuada de 1 a 10 de qualquer número. O usuário deve informar de qual número deseja ver a tabuada. 31. Faça um algoritmo / programa em C que leia cem números, e mostre qual a diferença entre o menor e o maior valor lido. 32. Faça um algoritmo / programa em C que gere e mostre cinqüenta números ímpares, começando com o valor 101. 33. Faça um algoritmo / programa em C que leia dois números, e liste todos os números contidos no intervalo formado por estes valores. 34. Faça um algoritmo / programa em C que leia cem números, e mostre qual é a diferença entre a média dos primeiros 50 valores e a média dos últimos 50 valores. 35. Faça um programa em C que efetue o cálculo e no final apresente o somatório do número de grãos de trigo que se pode obter num tabuleiro de xadrez, obedecendo à seguinte regra: colocar um grão de trigo no primeiro quadro e nos quadros seguintes o dobro do quadro anterior. Ou seja, no primeiro quadro coloca-se 1 grão, no segundo quadro colocam-se 2 grãos (neste momento têm-se 3 grãos), no terceiro quadro colocam-se 4 grãos (neste momento têm-se 7 grãos) até atingir o sexagésimo quarto quadro. 36. Num frigorífico existem 90 bois. Cada boi traz preso em seu pescoço um cartão contendo seu número de identificação e seu peso. Faça um algoritmo / programa em C que leia as informações de cada boi e mostre o número de identificação e o peso do boi mais gordo e do boi mais magro (supondo que não haja empates). 37. Faça um algoritmo / programa em C que leia uma quantidade indeterminada de números, um de cada vez, conte quantos números foram fornecidos e quantos deles são positivos, mostrando estas informações. 38. Faça um algoritmo / programa em C que leia uma quantidade indeterminada de números, um de cada vez, conte quantos números foram fornecidos e encontre o maior deles, mostrando estas informações. 39. Faça um algoritmo / programa em C que leia uma quantidade indeterminada de pares de números, um par de cada vez, e mostre o menor valor de cada par. 40. Um número primo é aquele que é divisível somente por ele mesmo e por um. Faça um algoritmo / programa em C que leia um número e informe se ele é ou não primo. O usuário deve ter a opção de repetir quantas vezes quiser esta operação. 41. A série de Fibonacci tem como dados os 2 primeiros termos da série que são respectivamente 0 e 1. A partir deles, os demais termos são construídos pela seguinte regra: tn = tn-1 + tn-2. Faça um algoritmo / programa em C que gera / mostra os N primeiros termos da Série de Fibonacci e a soma destes termos. N é informado pelo usuário. O usuário deve ter a opção de repetir quantas vezes quiser esta operação. 42. Faça um algoritmo / programa em C que leia um número inteiro e calcule / mostre seu fatorial. O usuário deve ter a opção de repetir quantas vezes quiser esta operação. Exemplo: 5! = 5 x 4 x 3 x 2 = 120 43. 44. Faça um algoritmo / programa em C que leia uma quantidade indeterminada de números, um de cada vez, e mostre a quantidade e média aritmética dos valores contidos em cada um dos seguintes intervalos: 0–25, 26–50, 51–75, 76–100. * Tratar divisão por zero. O cardápio de uma casa de lanches é dado pela tabela abaixo: Código 101 102 103 104 105 Descrição Bauru simples Bauru com ovo Hambúrguer cheese burguer Refrigerante Preço R$ 2,30 R$ 2,60 R$ 2,40 R$ 2,50 R$ 1,00 Faça um algoritmo / programa em C, que leia os códigos dos itens adquiridos por um consumidor e a quantidade correspondente, calcule e mostre o valor a pagar. O final da entrada do pedido é sinalizado com um código zero. Estruturar o algoritmo/ programa como um menu. 45. Faça um algoritmo / programa em C que leia um número inteiro menor que 1000 e imprima a quantidade de centenas, dezenas e unidades do mesmo. Exemplos: 326 - 3 centenas, 20 dezenas e 6 unidades; 12 – 1 dezena e 2 unidades. 46. Um viajante fará uma viagem de carro entre duas cidades e ao término deseja saber: Quantas vezes foi necessário abastecer; Quantos litros foram consumidos para percorrer a distancia indicada; Quantos litros restaram no tanque após a chegada ao destino. Faça um algoritmo / programa em C que leia a distância entre as duas cidades, a capacidade do tanque e o consumo médio do veículo e calcule / mostre as informações solicitadas. O usuário deve ter a opção de repetir quantas vezes quiser esta operação. 47. Foi realizada uma pesquisa em Joinville onde se perguntou a cada um dos entrevistados o seguinte: Clube de preferência (1 – JEC, 2 – AVAÍ, 3 – OUTROS); Salário mensal; Naturalidade (0 – Joinville, 1 - Outras cidades). Faça um algoritmo / programa em C que mostre: a) o número de torcedores por clube; b) médias salariais dos torcedores do Avaí e do Jec; c) o número de pessoas nascidas em Joinville que torcem para o Avaí; d) o número de pessoas entrevistadas. Obs: o número de pessoas entrevistadas é desconhecido. 48. Faça um algoritmo / programa em C que apure os resultados de uma competição de pesca. O algoritmo deverá ler a quantidade de pescadores e para cada pescador seu número, o número de peixes pescados e o peso total de peixes pescados. Para cada pescador, mostrar a média de peso por peixe. Ao final, mostrar o número do pescador que pescou o maior número de peixes e o número do pescador que pescou o maior peso. 49. Faça um algoritmo / programa em C para controlar a bilheteria de um cinema. Apresentar 3 opções de filmes e o respectivo valor da entrada. Ler a quantidade de ingressos e a opção de filme. Faça enquanto o usuário desejar (sugere-se criar uma opção para finalizar o programa). Ao final, apresentar o valor faturado por filme e a quantidade de entradas do filme com menor freqüência de público. 50. Uma sorveteria vende 3 tipos de picolés. O de fruta custa R$ 1,00, o de leite custa R$ 1,20 e o eskimo, R$2,50. Faça um programa em C que controle as vendas de picolés e ao “fechar o caixa” apresente: a) Quantidades de cada tipo de picolé vendido; b) Faturamento em R$ por tipo de picolé; c) Tipo de picolé mais vendido e percentual sobre o faturamento total. Obs.: Após fechar o caixa, permitir reiniciar a operação. 4.0 FUNÇÕES 51. Faça um programa em C que leia um número, e o passe como parâmetro para uma função que retorne 0 se este número for par ou 1 se este número for ímpar. De acordo com o retorno, mostrar esta informação. 52. Faça um programa em C que leia a hora atual em Brasília e o código de uma cidade e envie estes dados para uma função. A função calculará a hora na cidade de acordo com a tabela de fuso horário, e retornará esta informação que deverá ser mostrada. 1 2 3 4 5 6 Fuso Horário Buenos Aires Londres Roma Moscou Chicago Nova Iorque 0 3 4 6 -3 -2 53. Faça um programa em C que implemente uma calculadora simples (operações básicas). O programa deve solicitar os operandos e o operador e calcular / mostrar o resultado. Consistir operadores inválidos e divisão por zero. Implementar um menu. 54. Faça um programa em C que leia os lado de um triângulo e em seguida chame uma função que retorna 0 se o triângulo é eqüilátero, 1 se é isósceles e 2 se for escaleno. De acordo com o retorno, mostrar esta informação. 55. Faça um programa em C que leia um dia, um mês e um ano e envia estas informações a uma função que consiste se a data é válida. Obs.: um ano é bissexto quando é múltiplo de 4 e não múltiplo de 100, ou também quando é múltiplo de 400. 56. Faça um programa em C para controlar uma eleição presidencial de 3 candidatos. O programa deve possuir um menu com as seguintes opções: Cadastrar candidatos (assuma que em qualquer eleição é necessária uma opção para votos em branco e uma opção para votos nulos além dos candidatos); Informar votos (assuma que um voto é informado por vez, e faça o controle para que sejam informados votos apenas para candidatos pré-cadastrados!) Listar resultado (a listagem deve conter o total de votos / percentual por candidato) Obs.: Utilizar funções para cada uma das opções de menu. 57. Faça um programa em C que contenha uma função que: a. receba 3 ponteiros para números como parâmetros: A, B e C. b. ordene de tal forma que, ao final da função, A contenha o menor número e C o maior. A função deve usar os ponteiros para acessar os valores dos números por referência. 58. Faça um programa em C que contenha uma função que: a. receba como parâmetros duas variáveis inteiras, X e Y; b. “retorne” em X a soma de X e Y; c. “retorne” em Y a subtração de X e Y. 59. Faça um programa em C que leia um número inteiro e apresente a soma de todos os números contidos no intervalo de 0 (zero) até o número lido. Para tanto, utilize uma função recursiva. 60. Faça um programa em C que leia um número inteiro e calcule seu fatorial. Para tanto, utilize uma função recursiva. 61. Torre de Hanói: considerando 3 torres, o objetivo é transferir 3 discos que estão na torre A para a torre C, usando uma torre B como auxiliar. Somente o último disco de cima de uma pilha pode ser deslocado para outra, e um disco maior nunca pode ser colocado sobre um menor. Implementar uma função recursiva que mostra a seqüência de movimentos para resolver o problema da Torre de Hanói. Exemplo Torre de Hanói: 5.0 VETORES 62. Faça um algoritmo / programa em C que leia um vetor com 6 elementos e os mostre. Em seguida, conte quantos elementos têm valor negativo e mostre esta informação. 63. Faça um algoritmo / programa em C que leia um vetor com 10 elementos e mostre-os na ordem inversa. 64. Faça um algoritmo / programa em C que leia um vetor com 100 números e um número qualquer. Em seguida, substitua todos os valores do vetor iguais ao número informado por 0 e o mostre. 65. Faça um algoritmo / programa em C que leia um vetor com 80 elementos e mostre o valor do menor e maior elementos e suas posições no vetor. 66. Em uma cidade do interior, sabe-se que, de janeiro a abril de 1976 (121 dias), não ocorreu temperatura inferior a 15° nem superior a 40°. As temperaturas verificadas em cada dia estão disponíveis em um vetor. Faça um algoritmo / programa em C que calcule e mostre: a) a menor temperatura ocorrida; b) a maior temperatura ocorrida; c) a temperatura média; d) o número de dias no qual a temperatura foi inferior à temperatura média. 67. Faça um algoritmo / programa em C que leia uma série de N notas, e calcule quantas são 10% acima da média e quantas são 10% abaixo. 68. Faça um algoritmo / programa em C que leia um conjunto de 30 valores numéricos inteiros e distribua-os entre dois vetores, separando os números positivos e negativos. Mostrar os vetores ao final do processamento. 69. Faça um algoritmo / programa em C que leia um vetor com 20 elementos e o mostra. Em seguida, troque o primeiro elemento com o último, o segundo com o penúltimo, etc, até o décimo com o décimo primeiro e mostre o vetor assim modificado. 70. Faça um algoritmo / programa em C que leia um vetor com 20 elementos e o mostra. Em seguida, troque o primeiro elemento com o décimo primeiro, o segundo com o décimo segundo, etc, e mostre o vetor assim modificado. 71. Faça um algoritmo / programa em C que leia dois vetores com 10 elementos cada um e calcule o produto escalar entre eles, mostrando os vetores lidos e o produto calculado. O produto escalar é calculado da seguinte forma: cada valor do primeiro vetor deve ser multiplicado pelo valor do elemento correspondente do segundo vetor e os resultados devem ser somados. Exemplo: u = [3, 5, 2] v = [2, 1, 5] então: u · v = 3 * 2 + 5 * 1 + 2 * 5 72. Faça um algoritmo / programa em C que leia dois vetores com 10 elementos cada. Considerando cada vetor como sendo um conjunto, crie um terceiro vetor que seja a união dos dois primeiros e o mostre. 73. Faça um algoritmo / programa em C que leia dois vetores com 10 elementos cada. Considerando cada vetor como sendo um conjunto, crie um terceiro vetor que seja a intersecção dos dois primeiros e o mostre. 74. Faça um algoritmo / programa em C que leia dois vetores com 10 elementos cada. Considerando cada vetor como sendo um conjunto, crie um terceiro vetor que seja a diferença (elementos do primeiro vetor que não existem no segundo vetor) dos dois primeiros e o mostre. 75. Faça um algoritmo / programa em C que leia dois vetores com 10 elementos cada. Em seguida, crie um terceiro vetor, que seja a soma dos dois primeiros, e um quarto, que seja a diferença entre os dois primeiros, e os mostre. 76. Faça um algoritmo / programa em C que leia um vetor com 6 elementos, que é o resultado de um sorteio da Sena. Em seguida leia outro vetor, também com 6 elementos, que é a aposta de um apostador. Comparar os vetores e ao final mostrar a aposta, o resultado e o número de acertos do apostador. 77. Faça um algoritmo / programa em C que leia um vetor com 20 elementos e o mostra. Em seguida, retire dele todos os valores negativos, e mostre o vetor resultante. 78. Faça um algoritmo / programa em C que leia um vetor com 20 elementos e o mostra. Em seguida, retire os elementos em duplicata, compactando o vetor e mostrando o vetor compactado. 79. Faça um algoritmo / programa em C que leia um vetor com 20 elementos. Em seguida, mostre cada um dos valores distintos que aparecem no vetor, dizendo quantas vezes cada valor aparece. 80. Faça um algoritmo / programa em C que leia 50 números inteiros e obtenha qual o tamanho da maior seqüência consecutiva de números em ordem crescente. 81. Dadas duas seqüências com n números inteiros entre 0 e 9, interpretadas como dois números inteiros de “n” algarismos, calcular a seqüência de números que representa a soma dos dois inteiros. Ex.: 8 2 4 3 4 2 5 1 + 3 3 7 5 2 3 3 7 1 1 6 1 8 6 5 8 8 82. Um armazém trabalha com 100 mercadorias diferentes identificadas pelos números inteiros de 1 a 100. O dono do armazém anota a quantidade de cada mercadoria vendida durante o mês. Ele tem uma tabela que indica, para cada mercadoria, o preço de venda. Faça um programa em C para calcular o faturamento mensal do armazém. A tabela de preços é fornecida seguida pelos números das mercadorias e as quantidades vendidas. Quando uma mercadoria não tiver nenhuma venda, é informado o valor zero no lugar da quantidade. 83. Faça um algoritmo / programa em C que leia um vetor A com 10 componentes distintos inteiros e um vetor B com 5 componentes distintos inteiros e verifique se as seguintes afirmações são verdadeiras ou falsas: a) O vetor B está totalmente contido no vetor A; b) O vetor B está parcialmente contido no vetor A, isto é, existe alguma componente de B em A; c) O vetor B não está nada contido no vetor A, isto é, não existe nenhuma componente de B no vetor A. 84. Considere um vetor de 10 números inteiros positivos maiores que zero. Verifique, dois a dois, se os números são divisíveis. Para os pares de números que não são divisíveis, verifique se são primos entre si. 85. Faça um algoritmo / programa em C que leia um vetor com 15 elementos e o mostre. A seguir, ordene os elementos em ordem crescente e os mostre novamente. 86. Faça um algoritmo / programa em C que leia dois vetores, ordeno-os, e intercale os números de forma que o terceiro vetor continue ordenado. Imprima o vetor construído ao final. Os vetores podem ter tamanhos diferentes, mas no máximo 50 elementos. 6.0 STRINGS 87. Faça um programa em C que leia uma string de no máximo 80 posições e apresente as seguintes informações: a) Tamanho da string b) Quantidade caracteres números 88. Faça um programa em C que leia duas strings e informe o tamanho de cada string acompanhado de uma frase que diga se as duas strings são iguais ou diferentes. 89. Faça um programa em C que leia um nome e em seguida o mostre de trás para frente utilizando somente letras maiúsculas. O programa não pode permitir que sejam informados números. 90. Faça um programa em C que leia duas strings, sendo a primeira o nome de uma pessoa, e a segunda seu sobrenome. Concatenar essas strings em uma terceira string, obedecendo o seguinte formato: sobrenome, vírgula, espaço, primeiro nome. Apresentar a string concatenada. 91. Faça um programa em C que leia uma quantidade indeterminada de nomes, e apresente o primeiro nome considerando ordem alfabética. 92. Faça um programa em C que receba uma string como parâmetro e imprima quantas palavras (separadas por espaço em branco) o mesmo contém. 93. Um dos sistemas de encriptação mais antigos é atribuído a Júlio César: se uma letra a ser encriptada é a letra de número N do alfabeto, substitua-a com a letra (N+K), onde K é um número inteiro constante (César utilizava K = 3). Usualmente consideramos o espaço como zero e todos os cálculos são realizados com módulo-27. Dessa forma, para K = 1 a mensagem “Ataque ao amanhecer” se torna “bubrfabpabnboifdfs”. Faça um programa em C que receba como entrada uma mensagem e um valor de K e retorne a mensagem criptografada pelo código de César. 94. Faça um programa em C que implemente as seguintes funções para manipulação de strings: strlen, strcat, strcmp, strcpy. O retorno de valores e recebimento de parâmetros deve ser o mesmo das função usadas na linguagem C. 95. Faça um programa em C que contenha uma função para: a. Receber dois ponteiros para char (char*) como parâmetro e um número representando uma certa quantidade de caracteres. b. procurar no vetor apontado pelo parâmetro 1 o primeiro caracter de espaço (‘ ‘) ou o fim de vetor (representado pela quantidade fornecida no parâmetro 3). c. copiar os caracteres anteriores ao espaço no vetor indicado pelo segundo parâmetro. d. retornar o número de caracteres copiados. 7.0 MATRIZES 96. Faça um programa em C que leia duas matrizes 3 X 3 e gere uma terceira matriz com a soma dos elementos correspondentes de cada matriz. 97. Faça um programa em C que leia uma matriz 4 X 4 e encontre o menor valor contido na matriz e sua posição. 98. Faça um programa em C que leia uma matriz 6 X 4 e a mostre. Em seguida, calcule e mostre uma matriz modificada 6 X 5, sendo que os elementos da 5ª coluna são formados com o produto dos elementos da mesma linha. 99. Faça um programa em C que leia uma matriz 5 X 5 e a mostre. Em seguida, troque a segunda linha pela quinta e a primeira coluna pela quarta. Ao final, mostre a matriz resultante. 100. Uma empresa fabrica dois tipos de produtos, com os preços R$ 500,00 e R$ 650,00, respectivamente. Faça um programa em C que leia uma planilha contendo a quantidade vendida de cada produto por mês (considere apenas um ano). Em seguida, mostre as seguintes informações: a) Mês com maior faturamento; b) Mês com maior quantidade de produtos vendidos; c) A média anual de venda de cada produto . 101. Faça um programa em C que leia uma matriz 3 X 2 e a mostre. Em seguida, determine e mostre sua transposta. 102. Faça um programa em C que leia uma matriz quadrada de ordem 4 e um número qualquer. Em seguida, multiplique a diagonal principal por este número e mostre a matriz multiplicada. 103. Faça um programa em C leia duas matrizes de reais, com respectivos tamanhos 5 x 4 e 4 x 6, e imprima a matriz resultante A x B (multiplicação das matrizes), de tamanho 5 x 6. 104. Faça um programa em C que leia duas matrizes 3 X 2 e mostre, em formato bidimensional, a matriz resultante da seguinte regra: Se i ≤ j C(i, j) = A(i, j), senão C(i, j) = B(i, j). Onde C = matriz resultante, A = matriz 1 e B = matriz 2. 105. Faça um programa em C que leia uma matriz 5 X 5 e cria 2 vetores que contenham, respectivamente as somas das linhas e das colunas da matriz. Ao término, mostre os vetores criados. 106. Faça um programa em C que leia e imprima uma matriz cujo conteúdo é a população dos 10 municípios mais populosos de cada um dos 27 estados, sendo POPULACAO[i,j] o elemento que armazena a população do j-ésimo município do i-ésimo estado. Em seguida: a) Determina e imprima o número do município mais populoso e o número do estado a que pertence; b) Considerando que a primeira coluna contém sempre a população da capital do estado, calcule a média da população das capitais dos 27 estados. 107. Faça um programa em C que leia uma matriz 5 X 5 e calcule e mostre a soma dos elementos abaixo da diagonal principal da matriz, incluindo os elementos da própria diagonal principal. 108. Faça um programa em C que leia uma lista de 50 nomes e verifica se existe um nome também informado pelo usuário. Se existir, imprimir a posição onde foi encontrado o nome, e o nome completo, se não, imprimir: “Nome não encontrado”. 8.0 PONTEIROS 109. Procure determinar quais valores são impressos ao final destes programas. Confira sua resposta testando a execução dos programas. Execute-os passo a passo conferindo o valor das variáveis em cada momento. a) main(){ int a,b,*c; a = 3; b = 4; c = &a; b++; *c = a+2; printf("%d %d",a,b); } b) main(){ int a,b,*c; a = 4; b = 3; c = &a; *c = *c +1; c = &b; b = b+4; printf("%d %d %d",a,b,*c); } c) main(){ int a,b,*c,*d,*f; a = 4; b = 3; c = &a; d = &b; *c /= 2; f = c; c = d; d = f; printf("%d %d",*c,*d); } 110. Faça um programa em C onde um vetor de ponteiros tenha cada uma das suas posições apontando para as equivalentes de um vetor de valores float. A posição 0 do vetor ponteiro deve apontar para a posição 0 do vetor float e assim por diante. Caminhe no vetor float e: mostre para cada posição vetor float, seu endereço e seu conteúdo. 111. Faça um programa em C que leia 10 números inteiros e armazene em um vetor. Depois, utilize a aritmética de ponteiros para imprimir todos os elementos deste vetor.