Prévia do material em texto
A prefeitura de uma cidade fez uma pesquisa entre os seus habitantes, coletando dados sobre o salario, idade, sexo e número de filhos. Crie um programa que leia os dados de um numero indeterminado de pessoas, e ao final mostre: A média da idade das mulheres com salários inferiores a R$ 1000,00 1. A média do salario da população; 2. A média do numero de filhos; 3. O maior salario 4. A menor idade 5. A leitura termina quando for digitada idade igual a zero. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 1 de 17 02/08/2016 09:19 R. #include <stdio.h> #include <conio.h> #include <string.h> #include <ctype.h> int main(){ struct dados_habitante{ int idade; float salario; int filho; char sexo; }; int cont,i,aux,contm=0,midade=110; float mm=0,ms=0,mf=0,msalario=0; struct dados_habitante habitante[100]; cont=0; do{ printf("Dados do habitante %d\n",cont+1); printf("Digite a idade: "); scanf("%d",&aux); if(aux!=0){ habitante[cont].idade=aux; printf("Digite o salario: "); scanf("%f",&habitante[cont].salario); printf("Digite o sexo [f ou m]: "); habitante[cont].sexo=getche(); printf("\nDigite o numero de filhos: "); scanf("%d",&habitante[cont].filho); //A média do salario da população; ms+=habitante[cont].salario; AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 2 de 17 02/08/2016 09:19 //A média do numero de filhos; mf+=habitante[cont].filho; //A média da idade das mulheres < R$ 1000,00 if((habitante[cont].sexo=='f')&&(habitante[cont].salario<1000)){ mm+=habitante[cont].idade; contm++; } // O maior salario if(habitante[cont].salario>msalario) msalario=habitante[cont].salario; //A menor idade if(habitante[cont].idade>midade) midade=habitante[cont].idade; cont++; system("\n\npause"); system("cls"); }else{ for(i=0;i<cont;i++) printf("\nPessoa %d ..... %.2f, %2.d, %c, %2.d",i+1,habitante[i].salario,habitante[i].idade,habitante[i].sexo,habitante[i].filho); printf("\n\n"); printf("\nMedia de idade de mulheres < 100.00: %.0f ",mm/contm); printf("\nMedia de salario da populacao: %.2f ",ms/cont); printf("\nMedia de filhos da populacao: %.2f ",mf/cont); printf("\nMaior salario: %.2f ",msalario); } }while(aux!=0); printf("\n\n"); AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 3 de 17 02/08/2016 09:19 Resposta: #include <stdio.h> #include <conio.h> #include <string.h> #include <ctype.h> int main(){ struct dados_habitante{ int idade; float salario; int filho; char sexo; }; int cont,i,aux,contm=0,midade=110; float mm=0, ms=0, mf=0, msalario=0; struct dados_habitante habitante[100]; cont=0; do{ printf("Dados do habitante %d\n",cont+1); printf(Digite a idade: "); scanf("%d", &aux); if(aux!=0){ habitante[cont].idade=aux; printf("Digite o salario: "); scanf("%f,&habitante[cont].salario); printf("Digite o sexo[f ou m]: "); habitante[cont].sexo=getche(); printf("\nDigite o numero de filhos: "); scanf("%d",&habitante[cont].filho); //Media salario ms+=habitante[cont].salario; //Media de filhos mf+=habitante[cont].filho; return 0; } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 4 de 17 02/08/2016 09:19 //Media idade mulheres <R$1000,00 if))habitante[cont].sexo=='f')&&(habitante[cont].salario<1000)){ mm+=habitante[cont].idade; contm++; } //Maior salario if(habitante[cont].salario>msalario) msalario=habitante[cont].salario; /Menor idade if(habitante[cont].idade>midade) midade=habitante[cont].idade; cont++; system ("\n\npause"); system("cls); }else{ for(i=0;i<cont;i++) printf("\nPessoa%d .... %2f, %2.d, %c, %2.d",i+1, habitante[i].salario,habitante[i].idade,habitante[i].sexo,habitante[i].filho); printf("\n\n"); printf("\nMedia de idade das mulheres <100,00. %.0f",mm/contm); printf("\nMedia de salario da populacao: %.2f",ms/cont); printf("nMedia de filhos da populacao: %2f",mf/cont); printf("\nMaior salario: %2f ",msalario); } }while(aux!=0); printf("\n\n"); return 0; Uma empresa contratou 15 funcionários temporários. De acordo com o valor das vendas mensais, os funcionários adquirem pontos que determinarão seus salários ao final de cada mês. Sabe-se que esses funcionários trabalharão nos meses de novembro de 2014 a janeiro de 2015. Faça um programa que: AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 5 de 17 02/08/2016 09:19 Cadastre os nomes dos funcionários e suas respectivas vendas mensais; 1. Calcule e mostre a pontuação geral de todos os funcionários a cada mês; 2. Determine e mostre a maior pontuação atingida nos três meses, mostrando o nome do funcionário. Desconsiderar empates; 3. Determine e mostre o valor total vendido 4. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 6 de 17 02/08/2016 09:19 #include <stdio.h> #include <stdlib.h> #include <conio.h> #define MAX 3 //A cada 100 reais em vendas =1pt. typedef struct { float nov, dez, jan; float total=0; char nome[20]; }func; int i,cont; float aux,pts,venda=0; func vet[MAX]; main(){ system("cls"); for(i=0;i<MAX;i++){ printf("Digite o nome do funcionario %d:\n", i+1); scanf("%s", &vet[i].nome); printf("Digite o valor das vendas em novembro: "); scanf("%f", &vet[i].nov); printf("Digite o o valor das vendas em dezembro: "); scanf("%f", &vet[i].dez); printf("Digite o valor das vendas em janeiro: "); scanf("%f", &vet[i].jan); venda=venda+(vet[i].nov+vet[i].dez+vet[i].jan); } system("cls"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em novembro: %.2f, ", vet[i].nome, vet[i].nov); pts=vet[i].nov/100; vet[i].total=vet[i].total+pts; printf("totalizando %.2f pontos\n", pts); } printf("\n"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em dezembro: %.2f, ", vet[i].nome, vet[i].dez); AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava...7 de 17 02/08/2016 09:19 Resposta: #include<stdio.h> #include<stdlib.h> #include<conio.h> #define MAX 3 //A cada 100 reais em vendas = 1pt. typedef struct { float nov, dez, jan; float total=0; char nome[20]; }func; int i,cont; float aux,pts,venda=0; func vet[MAX]; pts=vet[i].dez/100; vet[i].total=vet[i].total+pts; printf("totalizando %.2f pontos\n", pts); } printf("\n"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em janeiro: %.2f, ", vet[i].nome, vet[i].jan); pts=vet[i].jan/100; vet[i].total=vet[i].total+pts; printf("totalizando %.2f pontos\n", pts); } printf("\n"); aux=0; cont=0; for(i=0;i<MAX;i++){ if(vet[i].total>aux){ aux=vet[i].total; cont=i; } } printf("\n\nFuncionario %s teve a maior pontuacao nos tres meses. Total de: %.2f\n", vet[cont].nome, vet[cont].total); printf("\n\nValor total das vendas nos tres meses: %.2f\n", venda); } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 8 de 17 02/08/2016 09:19 main(){ system ("cls"); for(i=0;i<MAX;i++){ printf("Digite o nome do funcionario %d:\n",i+1); scanf("%s",&vet[i].nome); printf("Digite o valor das vendas em novembro: "); scanf("%f", &vet[i].nov_; printf("Digite o valor das vendas em dezembro: "); scanf("%f",&vet[i].dez); printf("Digite o valor das vendas em janeiro: "); scanf("%f", &vet[i].jan); venda=venda+(vet[i].nov+vet[i].dez+vet[i].jan); } system("cls"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em novembro: %2f,",vet[i].nome, vet[i].nov); pts=vet[i].nov/100; vet[i].total = vet[i].total+pts; printf("totalizando %2f pontos\n",pts); } printf("\n); for(i=0; i<MAX;i++){ printf("Funcionario %s vendeu em dezembro: %2f,",vet[i].nome, vet[i].dez); pts=vet[i].dez/100; vet[i].total=vet[i].total+pts; printf("totalizando %2f pontos\n",pts); } printf("\n"); for(i=0;i<MAX;i++){ printf("Funcionario %s vendeu em janeiro: %2f, ", vet[i].nome, vet[i].jan); pts=vet[i].jan/100; vet[i].total=vet[i].total+pts; printf("totalizando %2f pontos\n",pts); } printf("\n"); aux=0; cont=0; for(i=0;i<MAX;i++){ if(vet[i].total>aux){ aux=vet[i].total; cont=i; AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 9 de 17 02/08/2016 09:19 } } printf("\n\nFuncionario %s teve a maior pontouacao nos tres meses. Total de : %2f\n, vet[cont].nome, ve[cont].total); printf("\n\nValor total das vendas nos tres meses: %2f\n", venda); } Faça um programa que carregue uma matriz 10x20 com números inteiros e some cada uma das linhas, armazenando o resultado das somas em um vetor. A seguir, multiplique cada elemento da matriz pela soma da linha e mostre a matriz resultante. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 10 de 17 02/08/2016 09:19 Resposta: int main(){ int matriz[10[20], vetor[10, i, j; for(i=0; i<10; i++) for(j=0; j<20; j++) scanf("%d", &matriz[i][j]); for(i=0; i<10; i++){ vetor[i] = 0; for(j=0; j<20; j++) R. #include <stdafx.h> #include<stdio.h> #include<stdlib.h> #define MAXL 10 #define MAXC 20 int main() { int mat[MAXL][MAXC], soma[MAXL]; int i, j; for (i=0;i<MAXL;i++) { soma[i]=0; for (j=0;j<MAXC;j++) { scanf("%d",&mat[i][j]); soma[i]=soma[i]+mat[i][j]; } } for (i=0;i<MAXL;i++) { printf("\n"); for (j=0;j<MAXC;j++) printf("%4d",mat[i][j]*soma[i]); } printf("\n\n"); system("pause"); return 0; } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 11 de 17 02/08/2016 09:19 vetor[i]+=matriz[i][j]; } for(i=0; i<10; i++) for(j=0; j=<20; j++) matriz[i][j] *=vetor[i]; for(i=0; i<10; i++){ printf("\n"); for(j=0; j<20; j++) printf("%d\t", matriz[i][j]); } return 0; } Construa um programa que leia salário, idade e sexo de 3 funcionários de uma empresa. Determine e escreva: a) quantos destes que possui o sexo masculino, com idade inferior a 25 anos, ganham salário inferior a R$ 1200,00 reais. b) quantos destes com o sexo feminino, com idade superior a 30 anos, ganham salário superior a R$ 5000,00 reais. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 12 de 17 02/08/2016 09:19 Resposta: #include<stdio.h> #include<stdlib.h> int main(){ float sal; char sexo; int idade,c,ca=0,cb=0; for(c=1;c<=3;c++){ R. #include <stdio.h> #include <stdlib.h> int main(){ float sal; char sexo; int idade,c,ca=0,cb=0; for (c=1;c<=3;c++){ printf("Salario do funcionario %d: ",c); scanf("%f",&sal); printf("Sexo(f-m): "); scanf("%s",&sexo); printf("Idade: "); scanf("%d",&idade); if((sal<1200)&&(idade<25)&&(sexo=='m')){ ca++; } if((sal>5000)&&(idade>30)&&(sexo=='f')){ cb++; } } printf("\na)Homens com menos de 25 anos e que recebem menos de R$1200,00: %d",ca); printf("\na)Mulheres com mais de 30 anos e que recebem mais de R$5000,00: %d",cb); } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 13 de 17 02/08/2016 09:19 printf("Salario do funcionario %d: ",c); scanf("%f,&sal); printf("sexo(f-m): "); scanf("%s, &sexo); printf("idade: "); scanf("%d, &idade); if (sal<1200)&&(idade<25)&&(sexo=='m')){ ca++; } if((sal>5000)&&(idade>30)&&{sexo=='f')){ cb++; } printf("\na)Homens com menos de 25 anos e que recebem menos de R$1200,00: %d",ca); printf("\na)Mulheres com mais de 30 anos e que recebem mais de R$ 5000,00: %d",cb); } Faça um programa que carregue uma matriz 10x3 com as notas de dez alunos em três provas. Mostre um relatório com o número do aluno (número da linha) e aprova em que cada aluno obteve menor nota. Ao final do relatório, mostre quantos alunos tiveram menor nota na prova 1, quantos alunos tiveram menor nota na prova 2 e quantos alunos tiveram menor nota na prova 3. AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 14 de 17 02/08/2016 09:19 R. #include<stdafx.h> #include<stdio.h> #include<stdlib.h> #define MAXL 10//qtd alunos #define MAXC 5 //qtd notas+2 | prova | menor int main() { float mat[MAXL][MAXC], menor, cont; int i, j, val, qtd[3], temp; for (i=0;i<MAXL;i++) for (j=0;j<(MAXC-2);j++) scanf("%f",&mat[i][j]); for (i=0;i<MAXL;i++) { val=1; cont=0; for (j=0;j<MAXC;j++) { switch(j) { case (MAXC-2): mat[i][j]=cont+1; break; case (MAXC-1): mat[i][j]=menor; break; default: if(val==1) { menor=mat[i][j]; val=0; cont=j;} else { if (mat[i][j]<menor) { menor=mat[i][j]; cont=j; } } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 15 de 17 02/08/2016 09:19 Resposta: #include<stdio.h> #define COLUNAS 3 #define LINHAS 10 int main(){ float notas [LINHAS][COLUNAS], menor_do_aluno; int l,c,i,p; int menornota[COLUNAS], menor_de_cada[LINHAS]; menornota[c]=0; for(l=0;l<LINHAS;l++){ for(c=0;c<COLUNAS;c++){ } } } qtd[0]=0; qtd[1]=0; qtd[2]=0; for (i=0;i<MAXL;i++) { printf("\nAluno: %d - Menor nota: %.2f ref a prova: %.0f ",i+1, mat[i][MAXC-1], mat[i][MAXC-2]); temp=mat[i][MAXC-2]; qtd[temp-1]++; } printf("\nQuantidade de menores notas - Prova 1: %d - Prova 2: %d - Prova 3: %d",qtd[0], qtd[1], qtd[2]); printf("\n\n"); /*printf("\nMatriz:\n"); for (i=0;i<MAXL;i++) { printf("\n"); for (j=0;j<MAXC;j++) printf("%2.f",mat[i][j]); } printf("\n\n");*/ system("pause"); return 0; } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 16 de 17 02/08/2016 09:19 printf("Digite a Nota [%d}{%d]: ".l.c); scanf("%f", ¬as[l][c]); if(c == 0){ menor_do_aluno = notas[l][c]; p=c; } else if(Menor_do_aluno >notas[l][c]; p=c; } } menor_de_cada[l]=p; menornota[p]++; } printf("\nProva com a menor nota de cada aluno"); for(l=0;l<LINHAS;l++) printf("\n%d\t%d",l,menor_de_cada[l]); printf("\nQuantidades de menores notas por prova\n"); for(c=0; c<COLUNAS; c++) printf("%d\t%d\n",c,menornota[c]); return 0; } AVA UNIVIRTUS http://univirtus-277877701.sa-east-1.elb.amazonaws.com/ava/web/#/ava... 17 de 17 02/08/2016 09:19