Baixe o app para aproveitar ainda mais
Prévia do material em texto
LISTA DE EXERCÍCIOS SOBRE VETORES EXEMPLO 1: Proponha um programa que realize a leitura de um vetor contendo 10 valores inteiros. Após isto, imprima todas as posições do vetor que possuem valor acima de 100. RESOLUÇÃO DO EXEMPLO 1: #include <stdio.h> int main() { int v[10]; int i; /* ler 10 valores inteiros */ for (i=0; i < 10; i++) { printf ("digite valor %d: ", i); scanf ("%d", &v[i]); } /* varrer vetor e imprimir apenas os valores armazenados */ /* acima de 100 */ for (i=0; i < 10; i++) { if (v[i] > 100) { printf ("v[%d] possui valor %d\n", i, v[i]); } } getch(); } EXERCÍCIOS Proponha um programa que declare um vetor de 5 posições de valores inteiros. Defina cada posição (elemento) do vetor com o valor 0. . #include <stdio.h> #include <stdio.h> int main() { int v[5], i; for( n=0;n<5 ;n++) { scanf(“%i”, &v[i]); } for (i=4; i<4; i--) { Pritnf((“%i”, v[i]); } } Proponha um programa que declare um vetor de 9 posições de valores inteiros. Associe 0 para a posição 0 do vetor, 1 para a posição 1 e assim por diante. Imprima o vetor na tela. #include <stdio.h> #include <conio.h> int main(int argc, char *argv[]) { int v[10],i; for(i=0;i<10;i++) { v[i]=i; } for(i=0;i<10;i++) { printf("%d ", v[i]); } getch(); } Explique o que faz o programa abaixo: int main() { int v[5]; int i; v[0] = 10; for (i = 1; i < 5; i++) { v[i] = v[i-1] * 2; } } Declara um vetor de valores inteiros com cinco posições. A 1ª posição tem o valor 10, e as posições seguintes tem o dobro da posição anterior: 2ª posição = 20; 3ª posição = 40; 4ª posição = 80; 5ª posição = 160. Proponha um programa que declare um vetor de 26 posições do tipo char. Coloque a letra ‘A’ na posição 0, ‘B’ na posição 1, e assim por diante. Imprima o vetor na tela. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { char v[26],i; for(i='A';i<='Z';i++) { v[i]=i; } for(i='A';i<='Z';i++) { printf("%c ",v[i]); } getch(); } Proponha um programa que declare um vetor de 10 posições de valores inteiros. Leia o valor a ser colocado em cada posição, calcule a média dos valores digitados e imprima a média na tela. . #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int v[10],i,media,soma=0; for(i=0;i<=10;i++) { printf("Digite um numero: "); scanf("%d",&v[i]); soma=soma+v[i]; } media=soma/10; printf("A media dos numero digitados e: %d\n",media); getch(); } Proponha um programa que declare um vetor de 10 posições de valores inteiros. Leia do teclado um valor para cada posição do vetor. Imprima o vetor de trás para a frente. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int v[10],i; for (i=0;i<10;i++) { printf("Digite um numero "); scanf("%d",&v[i]); } for (i=9;i>=0;i--) { printf("%d ",v[i]); } getch(); } Declare um vetor de 10 valores inteiros chamado idade. Leia o valor de cada posição do vetor. Após isto, para cada posição, imprima “maior (>=18), menor(<18) ou idade inválida(<0)” conforme os valores presentes no vetor. #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { int idade[10],i; for(i=0;i<10;i++) { printf(" Digite um numero: "); scanf("%d",&idade[i]); } for(i=0;i<10;i++) { printf("%d --> ",idade[i]); if(idade[i]<0) { printf("opcao invalida\n"); } else if ( idade[i]<18) { printf("menor\n"); } else { printf("maior\n"); } } getch(); } Escrever um programa que simule a leitura de uma senha. Neste tipo de leitura, não desejamos apresentar os caracteres digitados na tela. Desta forma, devemos utilizar a função getch() para ler cada caractere individualmente. A cada caractere digitado, o programa deve imprimir um asterisco na tela. A leitura da senha termina quando o usuário digitar ENTER. Neste momento, o programa deve imprimir na tela a senha digitada. Atenção: A função getch() retorna o código do caractere digitado. Ex: char ch = getch(); ENTER possui código numérico 13. Não esqueça de colocar o zero no final do vetor de caracteres (string). #include <stdio.h> #include <conio.h> int main(int argc, char *argv[]) { char ch, v[50]; int i=0; do { ch = getch(); if(ch==13)break; printf("* "); v[i]=ch; i++; }while(1); v[i+1]=0; puts(v); getch(); } Escrever um programa que (a) leia um conjunto de 10 notas, armazenando-as em um vetor (ou arranjo), (b) calcule e imprima a sua média, (c) calcule e imprima o número de alunos com nota superior à média #include <stdio.h> #include <conio.h> int main() { int n[10], i, c=0; float soma=0; printf(" Digite dez numeros: "); for(i=0; i<10; i++) { scanf("%d", &n[i]); soma=soma+n[i]; } printf ("media = %f\n", soma/10); for (i=0; i<10; i++) { if (n[i]<soma/10) c++; } printf ("%d aluno(s) com nota superior a media.", c); getch(); } Fazer um programa que (a) leia uma frase de até 80 caracteres, incluindo brancos, (b) conte e imprima quantos brancos existem na frase, (c) conte e imprima quantas vezes a letra A aparece. QUESTÃO ESPECIAL conte e imprima quantas vezes aparece cada letra. #include <stdio.h> include <conio.h> #include <string.h> int main() { char v[80]; int i, b=0, a=0; gets (v); for(i=0; i<80; i++) { if (v[i]==' ') b++; else if (v[i]=='a') a++; } printf ("Tem %d espaco(s) em branco(s).\n", b); printf ("Tem %d letra(s) a.\t", a); getch(); } Criar um algoritmo que leia o preço de compra e o preço de venda de dez mercadorias. O algoritmo deverá imprimir quantas mercadorias proporcionam: (a) lucro menor do que 10%, (b) lucro entre 10% e 20%, inclusive, e (c) lucro maior que 20% #include <stdio.h> #include <conio.h> int main() { int c[10], v[10]; int i, l1=0, l2=0, l3=0; printf ("Digite os 10 precos de compra:\n"); for (i=0; i<10; i++) { scanf ("%d", &c[i]); } printf ("Digite os 10 precos de venda:\n"); for (i=0; i<10; i++) { scanf ("%d", &v[i]); } for(i=0; i<10; i++) { if ((v[i]-c[i])<(c[i]*0,1)) l1++; else if ((v[i]-c[i])>=c[i]*0,1 && (v[i]-c[i])<=(c[i]*0,2)) l2++; else if ((v[i]-c[i])>c[i]*0,2) l3++; } printf ("%d mercadorias proporcionam lucro menor que 10 por cento\n", l1); printf ("%d mercadorias proporcionam lucro entre 10 e 20 por cento\n", l2); printf ("%d mercadorias proporcionam lucro maior que 20 por cento", l3); getch(); } Criar um algoritmo que leia dois conjuntos de números inteiros, tendo cada um 10 e 20 elementos, e apresentar os elementos que não são comuns aos dois conjuntos. #include <stdio.h> #include <conio.h> int main() { int a[10], b[20], i=0, c=0; printf("Digite 10 valores para o conjunto a:\n"); for(i=0; i<10; i++) scanf("%d", &a[i]); printf("Digite 20 valores para o conjunto b:\n"); for(c=0; c<20; c++) scanf("%d", &b[c]); for(i=0; i<10; i++) { int existe=0; for(c=0; c<20; c++) { if(a[i]==b[c]) existe=1; } if(existe==0) printf("\nO %d nao e comum aos dois conjuntos", a[i]); } for(c=0; c<20; c++) { int existe=0; for(i=0; i<10; i++) { if(b[c]==a[i]) existe=1; } if(existe==0) printf("\nO %d nao e comum aos dois conjuntos", b[c]); } getch();
Compartilhar