/*Fazer um programa para obter o nome e as 2 notas dos 28 alunos de uma turma. As notas serão
informadas pelo professor. O programa deve calcular a média das 2 notas de cada aluno e exibir
"Aprovado" caso a média seja igual ou superior a 7.0 e reprovado, caso contrário.*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define ALUNOS 3
void leituraDados( char nomes[ ALUNOS] [ 30 ] , float notas[ ALUNOS] [ 3 ] ) {
int i, j;
for ( i= 0 ; i< ALUNOS; i++ ) {
printf ( "\n Entre com o nome do aluno: " ) ; fgets ( nomes
[ i
] , 29 , stdin
) ; for ( j= 0 ; j< 2 ; j++ ) {
printf ( "Informe a %da. nota:" , j
) ; scanf ( "%f " , & notas
[ i
] [ j
] ) ; }
}
}
void calcularMedias( float notas[ ALUNOS] [ 3 ] ) {
int i;
for ( i= 0 ; i< ALUNOS; i++ ) {
notas[ i] [ 2 ] = ( notas[ i] [ 0 ] + notas[ i] [ 1 ] ) / 2 ;
}
}
void mostraAprovacao( char nomes[ ALUNOS] [ 30 ] , float notas[ ALUNOS] [ 3 ] ) {
int i;
for ( i= 0 ; i< ALUNOS; i++ ) {
printf ( "\n Media final = %.2f" , notas
[ i
] [ 2 ] ) ; if ( notas[ i] [ 2 ] >= 7.0 )
printf ( " ( aluno %s aprovado )." , nomes
[ i
] ) ; else
printf ( " ( aluno %s reprovado )." , nomes
[ i
] ) ; }
}
int main( void ) {
float notas[ ALUNOS] [ 3 ] , media;
char nomes[ ALUNOS] [ 30 ] ;
leituraDados( nomes, notas) ;
calcularMedias( notas) ;
mostraAprovacao( nomes, notas) ;
return 0 ;
}
ICAgIC8qRmF6ZXIgdW0gcHJvZ3JhbWEgcGFyYSBvYnRlciBvIG5vbWUgZSBhcyAyIG5vdGFzIGRvcyAyOCBhbHVub3MgZGUgdW1hIHR1cm1hLiBBcyBub3RhcyBzZXLDo28KICAgIGluZm9ybWFkYXMgcGVsbyBwcm9mZXNzb3IuIE8gcHJvZ3JhbWEgZGV2ZSBjYWxjdWxhciBhIG3DqWRpYSBkYXMgMiBub3RhcyBkZSBjYWRhIGFsdW5vIGUgZXhpYmlyCiAgICAiQXByb3ZhZG8iIGNhc28gYSBtw6lkaWEgc2VqYSBpZ3VhbCBvdSBzdXBlcmlvciBhIDcuMCBlIHJlcHJvdmFkbywgY2FzbyBjb250csOhcmlvLiovCiAgICAgCiAgICAjaW5jbHVkZSA8c3RkaW8uaD4KICAgICNpbmNsdWRlIDxzdHJpbmcuaD4KICAgICNpbmNsdWRlIDxzdGRsaWIuaD4KICAgICAKICAgICNkZWZpbmUgQUxVTk9TIDMKICAgIAogICAgdm9pZCBsZWl0dXJhRGFkb3MoY2hhciBub21lc1tBTFVOT1NdWzMwXSwgZmxvYXQgbm90YXNbQUxVTk9TXVszXSkgewogICAgCWludCBpLGo7CiAgICAgICAgZm9yKGk9MDtpPEFMVU5PUztpKyspewogICAgICAgICAgICBwcmludGYoIlxuRW50cmUgY29tIG8gbm9tZSBkbyBhbHVubzogIik7CiAgICAgICAgICAgIGZnZXRzKG5vbWVzW2ldLDI5LHN0ZGluKTsKICAgICAgICAgICAgZm9yKGo9MDtqPDI7aisrKXsKICAgICAgICAgICAgICAgIHByaW50ZigiSW5mb3JtZSBhICVkYS4gbm90YToiLCBqKTsKICAgICAgICAgICAgICAgIHNjYW5mKCIlZiAiLCAmbm90YXNbaV1bal0pOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfQogICAgCiAgICB2b2lkIGNhbGN1bGFyTWVkaWFzKGZsb2F0IG5vdGFzW0FMVU5PU11bM10pIHsKICAgIAlpbnQgaTsKICAgICAgICBmb3IoaT0wO2k8QUxVTk9TO2krKyl7CiAgICAgICAgICAgIG5vdGFzW2ldWzJdID0gKG5vdGFzW2ldWzBdICsgbm90YXNbaV1bMV0pIC8gMjsKICAgICAgICB9CiAgICB9CiAgICAKICAgIHZvaWQgbW9zdHJhQXByb3ZhY2FvKGNoYXIgbm9tZXNbQUxVTk9TXVszMF0sIGZsb2F0IG5vdGFzW0FMVU5PU11bM10pIHsKICAgICAgICBpbnQgaTsKICAgICAgICBmb3IoaT0wO2k8QUxVTk9TO2krKyl7CiAgICAgICAgICAgIHByaW50ZigiXG5NZWRpYSBmaW5hbCA9ICUuMmYiLCBub3Rhc1tpXVsyXSk7CiAgICAgICAgICAgIGlmIChub3Rhc1tpXVsyXSA+PSA3LjApCiAgICAgICAgICAgICAgICBwcmludGYoIiAoIGFsdW5vICVzIGFwcm92YWRvICkuIixub21lc1tpXSk7CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIHByaW50ZigiICggYWx1bm8gJXMgcmVwcm92YWRvICkuIixub21lc1tpXSk7CiAgICAgICAgfQogICAgfQogICAgCiAgICBpbnQgbWFpbih2b2lkKSB7CiAgICAgICAgZmxvYXQgbm90YXNbQUxVTk9TXVszXSwgbWVkaWE7CiAgICAgICAgY2hhciAgbm9tZXNbQUxVTk9TXVszMF07CiAgICAgICAgCiAgICAgICAgbGVpdHVyYURhZG9zKG5vbWVzLCBub3Rhcyk7CiAgICAgICAgY2FsY3VsYXJNZWRpYXMobm90YXMpOwogICAgICAgIG1vc3RyYUFwcm92YWNhbyhub21lcywgbm90YXMpOwoKICAgICAgICByZXR1cm4gMDsKICAgIH0=