terça-feira, 26 de novembro de 2013

Struct - Inicializando - Dando Valores e Ordenando

Assim como podemos inicializar e dar valor a variáveis, em linguagem C, também podemos fazer isto com estruturas.
Neste Programa criei três estruturas, dei valores e inicializei. Más o programa
é capaz de mostrar estes valores desordenados, e logo após ordenados.
O código é oferecido a estudantes em Linguagem C, portanto os que se dizem programador, não terão nenhuma surpresa com isto.
Não faça comentários sobre o código se você não o compilou ou testou para comprovar
o seu funcionamento.

Veja abaixo algumas imagens do Programa em execução:







 Veja abaixo o Código do Programa:

#include <stdio.h>
#include <conio.h>
void Janela5(){
int lin, col;
for ( lin = 0; lin <= 25; lin++ ){
for ( col = 0; col <= 80; col++ ){
gotoxy( col, lin );
if ( lin == 2 ){textbackground(LIGHTBLUE);printf( " ");}
if ( col == 1 ){textbackground(LIGHTBLUE);printf(" ");}
if ( lin == 25 ){textbackground(LIGHTBLUE);}
if ( col == 80 ){textbackground(LIGHTBLUE);printf(" ");}
}
}textbackground( BLACK);
}
struct Diretor {
char Dire_tor [ 85 ];
}Diretor_De_Escola [ 85 ] = {{"\t\t Um Diretor de Escola da rede Estadual de ensino\n\t\t nomeou seus 10 melhores alunos"},
{"\n\t\t Pressione qualquer tecla para conhece - los"}};
struct Notas {
float No_tas;
};
struct Notas Aluno [ ] = { 9.5, 8.9, 6.4, 7.5, 8.0, 7.7, 6.9, 9.0, 10.0, 8.5 };
struct Escola {
char nome [ 16 ];
};struct Escola Alu_no [ 16 ] = {
{ "Ana Celia      "  },
{ "Eder Costa     "  },
{ "Humberto Gomes "  },
{ "Dijalma Lacerda"  },
{ "Caroline Silva "  },
{ "Igor Goncalves "  },
{ "Bruna Carla    "  },
{ "Fabio Quadros  "  },
{ "Geany Barros   "  },
{ "Jaqueline Vega "  }};
int main(){
system ("title STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
int a = 0, i, j, ord;float aux;
system("cls");Janela5();
textcolor(LIGHTRED);gotoxy(20,3); printf("STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
textcolor(YELLOW);gotoxy(24,5);printf("Programa Desenvolvido Por:");
textcolor(LIGHTCYAN);gotoxy(51,5);printf("Samuel Lima");
textcolor(LIGHTGREEN);gotoxy(35,7);printf("sa_sp10@hotmail.com");
textcolor(LIGHTBLUE);gotoxy(30,11); printf("PRESSIONE QUALQUER TECLA");
textcolor(YELLOW);gotoxy(40,13); printf("PARA");
textcolor(LIGHTBLUE);gotoxy(37,15); printf("CONTINUAR");
getche();system("cls");
textcolor(LIGHTRED); gotoxy(18,10);printf("STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
printf("\n\n" );textcolor(LIGHTBLUE);
for ( i = 0; i < 10; i++ ){
printf(" %s\t ", Diretor_De_Escola [ i ] . Dire_tor );
}
getche();system("cls");
textcolor(LIGHTRED);gotoxy(20,3); printf("STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
textcolor(LIGHTBLUE);gotoxy(23,5);printf("Veja abaixo os Nomes dos Alunos ");
textcolor(YELLOW);printf("\n\n\t\t\t\t");
for ( i = 0; i < 10; i++ ){
printf(" %s\n\t\t\t\t ", Alu_no [ i ] . nome );
}
for( i = 0; i < 10 -1; i++ ){
for( j = i + 1; j < 10; j++ ){
if( strcmp ( Alu_no [ i ] . nome, Alu_no  [ j ] . nome )  > 0 ){
Escola aux = Alu_no  [ i ]  ;
Alu_no [ i ] = Alu_no [ j ];
Alu_no [ j ] = aux ;
}
}
}
getche();system("cls");
textcolor(LIGHTRED);gotoxy(20,3); printf("STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
textcolor(LIGHTBLUE);gotoxy(23,5);printf("Estes sao os nomes dos Alunos Ordenados");
textcolor(YELLOW);printf("\n\n\t\t\t\t");
for ( i = 0; i < 10; i++ )
printf(" %s\n\t\t\t\t ", Alu_no [ i ] . nome );
getche();system("cls");
textcolor(LIGHTRED);gotoxy(20,3); printf("STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
textcolor(LIGHTBLUE);gotoxy(23,5);printf("Abaixo estao os Nomes e as Notas dos Alunos");
printf("\n\n\t\t\t\t");
for ( i = 0; i < 10; i++ ){
textcolor(YELLOW);printf(" \n\t\t\t%s    ==> ", Alu_no [ i ] . nome );
textcolor(LIGHTRED);    printf("   %.1f ", Aluno [ i ] . No_tas );
}
getche();system("cls");
textcolor(LIGHTRED);gotoxy(20,3); printf("STRUCT - INICIALIZANDO DANDO VALORES E ORDENANDO");
textcolor(LIGHTBLUE);gotoxy(31,5);printf("Estas sao as notas dos Alunos");
textcolor(YELLOW);printf("\n\n\t\t ");
for ( i = 0; i < 10; i++ ){
printf(" %.1f ", Aluno [ i ] . No_tas );
}
ord = 0;
while(ord == 0){
ord = 1;
for ( a = 0; a < 10; a++ ){
if( Aluno  [ a ].No_tas  > Aluno [ ( a + 1 ) ] .No_tas){
aux = Aluno [ a ].No_tas;
Aluno [ a ].No_tas = Aluno [ ( a + 1 ) ].No_tas;
Aluno [ ( a + 1 ) ] .No_tas = aux;
ord = 0;
}
}
}
getche();
textcolor(LIGHTBLUE);gotoxy(25,9);printf("Estas sao as notas dos Alunos Ordenados");
textcolor(YELLOW);printf("\n\n\t\t ");
for ( a = 1; a <= 10; a++ ){
printf(" %.1f ", Aluno [ a ] . No_tas );
}
textcolor(LIGHTRED);gotoxy(33,20);printf ("O ROCCO AGRADECE");getche();exit(0);
}

Nenhum comentário:

Postar um comentário

Observação: somente um membro deste blog pode postar um comentário.