Baixe o app para aproveitar ainda mais
Prévia do material em texto
Nome: Renan Rossetto das Neves R.A: 83512 Matriz e vetor: 1. Faça um programa que cria um vetor com 5 elementos inteiros, lê 5 números do teclado, armazena os números no vetor e imprime o vetor na ordem inversa. #include <conio2.h> #include <stdio.h> int main() { int i, vet[5], x; for (i = 0; i < 5; i++) { printf("Digite 5 numeros inteiros: ", i+1); scanf("%d", &vet[i]); } printf("Vetor:"); for (i = 0; i < 5; i++) { printf(" %d ", vet[i]); x = vet[i]; } printf("\nVetor Invertido:"); x-- ; for (i = x ; i >= 0 ; i--) { printf(" %d ", vet[i]); } getche(); } 2. Faça um programa que lê uma matriz de 3 x 3 elementos usando um comando for, multiplica cada elemento por 5 e imprime o resultado. #include <conio2.h> #include <stdio.h> int main() { int i,j, matriz[3][3]; for(i=0; i<3;i++) { for (j = 0; j < 3; j++) { printf("Matriz[%d][%d]= ",i,j); scanf ("%d", &matriz[ i ][ j ]); // Aqui estou recebendo os valores da matriz. } } for(i=0; i<3;i++) { for (j = 0; j < 3; j++) { printf("%d ",matriz[i][j]); printf("\n"); // mostrando os valores iniciais da matriz. } } // Agora vamos para a multiplicação dos valores da matriz por 5. for(i=0; i<3;i++) for (j = 0; j < 3; j++) matriz[i][j]=matriz[i][j]*5; for(i=0;i<3;i++) { for(j=0;j<3;j++) printf("Resultado da multiplicaçao da matriz %d ",matriz[i][j]); printf("\n"); } } 3. Preencher um vetor com 8 números inteiros e solicitar um número do teclado. Pesquisar se esse número existe no vetor. Se existir, imprimir em qual posição do vetor. Se não existir, imprimir este valor que não existe. #include <conio.h> #include <stdio.h> main() { int res,num,i,vet[8]; for(i=0;i<8;i++) { printf("Digite um numero para o vetor"); scanf("%i",&vet[i]); } printf("Informe um valor para ser verificado no vetor: "); scanf("%i",&num); for(i=0;i<8;i++) { if (vet[i]==num) { printf("Posicao do vetor %i\n",i); res=0; } } if (res!=0) { printf("Valor nao encontrado"); } getch(); } 4. Preencher um vetor de 8 elementos inteiros. Mostrar o vetor e informar quantos números são maiores que 30. #include <conio2.h> #include <stdio.h> int main() { int i, j, vet[8]; for (i = 0; i < 8; i++) { printf("Digite 8 numeros inteiros: "); scanf("%d", &vet[i]); } for(i=0;i<8;i++) { printf("Valores do vetor %d [%d]\n",i,vet[i]); if (vetor[i]>30) j++; } printf("Os numeros maiores que 30 sao: %d\n",j); getch(); } 5. Criar um algoritmo que leia os elementos de uma matriz inteira de 4 x 4 e imprimir os elementos da diagonal principal. #include <conio2.h> #include <stdio.h> int main() { int i,j, matriz[4][4], principal; for(i=0; i<4;i++) { for (j = 0; j < 4; j++) { printf("Matriz[%d][%d]= ",i,j); scanf ("%d", &matriz[ i ][ j ]); // Aqui estou recebendo os valores da matriz. } } for(i=0; i<3;i++) { for (j = 0; j < 3; j++) { printf("%d ",matriz[i][j]); printf("\n"); // mostrando os valores iniciais da matriz. } } //Imprimindo a diagonal principal da matriz printf("\n\nDiagonal principal\n\n"); for (i=0; i<=4;i++) { printf("%d\n",matriz[i][j]); for (principal=1;principal<=i+1;principal++) printf("\t"); } printf("\n\n"); system("pause"); return 0; } Função: 1. Capítulo 5: Resolver apenas os exercícios propostos: 1,2,3,4 1. Indique se são verdadeiras ou falsas as seguintes afirmações: a) Uma função em C pode devolver simultaneamente mais do que um valor.(F) b) Uma função em C pode não ter parâmetros. (V) c) Uma função em C tem que devolver sempre um inteiro. (F) d) Os parâmetros das funções podem ser do tipo void. (F) e) A instrução return termina a execução de uma função. (V) f) Uma variável local a uma função pode ter o mesmo nome que um parâmetro.(F) g) A instrução return termina a execução de uma função apenas se for a última instrução da função em que se encontra.(F) h) A instrução return, quando executada dentro de qualquer função, termina o programa. (F) i) A instrução return, quando executada dentro da função main, termina o programa. (V) j) O nome de uma função é opcional. (F) k) Os parâmetros numa função são opcionais. (V) l) Uma função deve fazer o maior número de tarefas possível sem ocupar muito código.(F) m) Uma função não deve ter mais que 10 linhas.(F) n) O nome de uma função não deve ter mais do que 6 letras.(F) o) O nome de uma função não pode ser uma palavra reservada do C. (V) p) Sempre que for necessário devem ser utilizadas variáveis locais.(V) q) Um protótipo não é nada mais que a repetição do cabeçalho da função seguido de;. (V) r) Em C, um procedimento não é mais do que uma função que "retorna void" (V) 2. Identifique os erros de compilação que seriam detectados nos seguintes programas: 2.1 /* * Copyright: Asneira Suprema Software!!! */ f(int x,int y); // Aqui foi adicionado ; e na função isso está incorreto. { x = 4; y = 5; } 2.2 /* * Copyright: Asneira Suprema Software!!! */ void f(int x , int y) //A função void não retorna nada (void = vazio). { return -1; } 2.3 /* * Copyright: Asneira Suprema Software!!! */ void f(void); // Não se usa ; na função e as funções são diferentes. void f(int x,int y) { x = 4; y = 5; } 2.4 /* * Copyright: Asneira Suprema Software!!! */ f(int x,int y); void f(int x,int y) //Protótipo diferente da função principal. { x = 4; y = 5; } 2.5 /* * Copyright: Asneira Suprema Software!!! */ void (int x,int y) //Nome da função não foi declarado. { x = 4; y = 5; } 2.6 /* * Copyright: Asneira Suprema Software!!! */ void f(int x, y) //Aqui a variável y não possui valor (int,char, etc). { x = 4; y = 5; } 3.[Exercício de Exame] Dadas as funções Ping e Pong void Ping(int i) { switch (i) { case 1: case 2: case 3: while (i--) printf("\n%d",--i); break; case 25: Pong(3); break; default: printf("\nJá Passei em C"); Pong(123); } } void Pong(int x) { int j=0; switch (x) { case 1: case 2: Ping(x); case 3: j=5; j++; return; default: printf("\nOla"); return; } printf("\nVou Sair"); } Qual a saída das seguintes chamadas: a) Pong(3); // Sem saída. b) Ping(-4); //Já passei em C ola. c) Ping(25); //Sem saida d) Pong(2); // 0 e) Pong(1); // Laço de números impares. Implemente as seguintes funções: 4.[Exercício de Exame] int Abs(int x) Devolve o valor absoluto de x. Abs(-5) --> 5 Abs(5) --> 5 Int Abs(int x) { If (x >=0) return x; Else Return -x; } 2. Crie um programa onde o usuário digita dois valores e imprima na tela a soma destes valores na tela, utilizando uma função do tipo int. #include <stdio.h> int soma( int x, int y) { printf ("Digite o primeiro valor da soma: "); scanf("%d", &x); printf ("Digite o segundo valor da soma: "); scanf("%d", &y); soma = x + y; printf ("O valor da soma eh: %d", soma); return 0; } 3. Crie um programa onde o usuário digita 2 valores e imprima na tela o menor valor, devendo para isso, criar uma função Menor que imprime na tela o menor valor. #include<stdio.h> int Menor(int x,int y) { if( x < y) { printf("X eh o menor: %d", x); } if (y < x) { printf("Y eh o menor: %d", y); } } main() { int x,y; printf("Digite o primeiro valor: "); scanf("%d",&x); printf("Digite o segundo valor: "); scanf("%d",&y); Menor(x,y); getch();} 4. Crie um programa onde o usuário digita dois valores e imprima a soma, subtração, multiplicação e divisão do primeiro valor pelo segundo, sendo que deverá ser criada uma função para cada operação. #include <stdio.h> int soma( int x, int y) { return (x+y); } int subt( int i, int j) { return (i-j); } int div( int a, int z) { return (a/z); } int mult( int k, int l) { return (k*l); } main () { int x,y,i,j,a,z,k,l; //variaveis int total,total1,total2,total3; //resultados printf ("Digite o primeiro valor da soma: "); scanf("%d", &x); printf ("Digite o segundo valor da soma: "); scanf("%d", &y); total = soma(x,y); printf("Soma: %d", total); //subtração printf ("Digite o primeiro valor da subtracao: "); scanf("%d", &i); printf ("Digite o segundo valor da subtracao: "); scanf("%d", &j); total1 = subt(i,j); printf("Subtracao: %d", total1); //Divisão printf ("Digite o primeiro valor da divisao: "); scanf("%d", &a); printf ("Digite o segundo valor da divisao: "); scanf("%d", &z); total2 = div (a,z); printf("Divisao: %d", total2); //Multiplicação printf ("Digite o primeiro valor da multiplicacao: "); scanf("%d", &k); printf ("Digite o segundo valor da multiplicacao: "); scanf("%d", &l); total3 = mult(k,l); printf("Multiplicação: %d", total3); }
Compartilhar