Solução: Problema do professor de terceiro ano (Márcio Trindade)

From AdonaiMedrado.Pro.Br
Revision as of 18:29, 5 June 2009 by 200.17.147.2 (Talk) (New page: <code lang="c"> #include<stdio.h> int main(void) { struct student { char nome[41]; int resp; int nota; }; struct student aluno[100], troca; int i,j, gab, n, bin1, acum; flo...)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
#include<stdio.h>
 
 
int main(void)
{
	struct student
	{
		char nome[41];
		int resp;
		int nota;
	};
 
	struct student aluno[100], troca;
	int i,j, gab, n, bin1, acum;
	float med;
 
	scanf("%d",&gab);
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%s",aluno[i].nome);
		scanf("%d",&(aluno[i].resp);
		bin1 = gab&aluno[i].resp;
		acum=0;
		for(j=0;j<7;j++)
			acum += ((bin1>>j)&1);
		aluno[i].nota = acum;
		med+=acum
	}
 
	for(i==0;i<n;i++)
	{
		for(j=i+1;j<n;j++)
		{
			if(aluno[i].nota>aluno[j].nota)
			{
				troca=aluno[i];
				aluno[i]=aluno[j];
				aluno[j]=troca;
			}
		}
	}
 
	printf("%d\n", aluno[i].nota);
	for(j=i;j>=0;j--)
		if(aluno[i].nota==aluno[i].nota)
			printf("%s",aluno[j].nome);
 
	printf("%d\n", aluno[0].nota);
	for(j=0;j<n;j++)
 
 
		if(aluno[j].nota==aluno[0].nota)
			printf("%s",aluno[j].nome);
 
return 0;
}