Pessoal estou com um problema em um programa que lê o nome da pessoa, duas notas delas, a sua idade e se ela tem alguma deficiência. Meus problemas são: não estou conseguindo parar o programa com o while e não estou conseguindo ler se a pessoa tem ou não algum tipo de deficiência.
#include <stdio.h>
#include <windows.h>
#include <math.h>
#include <string.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;
typedef char string [50];
struct Ficha {
string nome;
float n1,n2;
int idade, S, N;
} Aluno[10];
int main() {
string nome1;
float nota1,nota2;
int idade1,i,a;
char S1,N1;
i=0;
do {
printf ("\n\n Digite o nome do aluno: ");
scanf ("%s", &Aluno[i].nome);
printf ("\n\n Digite a nota 1 do aluno ");
scanf ("%f", &Aluno[i].n1);
printf ("\n\n Digite a nota 2 do aluno ");
scanf ("%f", &Aluno[i].n2);
printf ("\n\n Digite a idade do aluno: ");
scanf ("%d", &Aluno[i].idade);
printf("Aluno possui alguma deficiencia? 1 para sim, 0 para Naho ");
scanf ("%d", &a );
if (a == 1) {
Aluno[i].S=a;
Aluno[i].N=0;
}
else {Aluno[i].N=a;
Aluno[i].S=0;
}
i++;
}
while (Aluno[i-1].nome!="fim");
for (i=0; i<5;i++) {
printf ("Nome: %s\n", Aluno[i].nome);
printf ("Nota 1: %f\n", Aluno[i].n1);
printf ("Nota 2: %f\n", Aluno[i].n2);
printf ("Idade: %d\n", Aluno[i].idade);
if (Aluno[i].S=0) {
printf ("Possui necessidade especial \n");
}
else {
printf ("Não possui necessiade Especial \n");
}
}
system ("PAUSE");
return (0);
}