ecco il codice di leggiposti .. riguardo la documentazione di scanf ora cerco su google grazie cmq dell'appunto

codice:
void leggiposti(int numposti,SOCKET conn) // permette di prenotare uno o più  posti 
{
	char buffer[1000];
	buffer[0]=2;
	buffer[1]=(char) numposti;
	int t=0;
	while(t<numposti)
	{
			int q=0;
			char posto[TEXT_LENGTH];
			puts("\ninserisci numero della fila");

			while(q<=0 || q>127)
			{
					errore=scanf("%s",posto);

					if(errore<0)
						{
							if(WSAGetLastError()==WSAEINTR)
									{
									printf("Errore nella scanf");
									SendMessage(HWND_BROADCAST,my_mex_type,0,0);
									exit(-1);// uscita
									}
						}

			if(verificastringa(posto)!=-1)
				{
						q=atoi(posto); // converte stringa in intero
				}
			else
					q=-1;
					if(q<=0 || q>127)
						puts("\n\nErrore:numero fila inserito non valido.inserisci il numero fila");
			} // chiusura del while

			buffer[2+(t*2)]=(char)q;

			puts("\ninserisci il numero del posto");
			q=0;

			while( q<=0 || q>127)
			{
					errore=scanf("%s",posto);
					if(errore<0)
					{
						if(WSAGetLastError()==WSAEINTR)
						{
							printf("Errore nella scanf");
							SendMessage(HWND_BROADCAST,my_mex_type,0,0);
							exit(-1);// uscita
						}
					}

				if(verificastringa(posto)!=-1)
				{
						q=atoi(posto);
				}
				else
					q=-1;

					if(q<=0||q>127)
						puts("\n\nErrore:numero posto inserito non valido.inserisci il numero di posto");
			}

			buffer[2+(t*2)+1]=(char)q;
			++t;
	} // chiudo while controllo su t
	if(conn<0)
		printf("impossibile connettersi \n");
	int errore=send(conn,buffer,(numposti*2)+2,0);

	if (errore<0)
	{
		if(WSAGetLastError()==WSAEINTR)
				{
				printf("errore nella send");
				SendMessage(HWND_BROADCAST,my_mex_type,0,0);
				exit(-1);// uscita
				}
	}
	
	char risp[7];
	int q=0;

	while(q<numposti)
	{
			errore=recv(conn,risp,sizeof(risp),0);
			if(errore<0)
			{
					if(WSAGetLastError()==WSAEINTR)
					{
					printf("errore nella recv");
					SendMessage(HWND_BROADCAST,my_mex_type,0,0);
					exit(-1);// uscita
					}
			}

		if(risp[0]=='E')
		{
				errore=printf("\nil posto %d,%d è occupato\n", risp[5],risp[6]);
				if(errore<0)
				{
						if(WSAGetLastError()==WSAEINTR)
						{
							printf("errore nella printf");
							SendMessage(HWND_BROADCAST,my_mex_type,0,0);
							exit(-1);// uscita
						}
				}
		}
		else
			if(risp[0]=='Y')
				{
						errore=printf("\n\nil posto %d,%d non è disponibile nella sala\n", risp[5],risp[6]);
						if(errore<0)
						{
							if(WSAGetLastError()==WSAEINTR)
							{
							printf("errore nella printf");
							SendMessage(HWND_BROADCAST,my_mex_type,0,0);
							exit(-1);// uscita
							}
						}
				puts("\ncontrollare le dimensioni della sala tramite la funzione visualizza");
			}
			else
					errore=printf("\nil posto %d,%d è stato prenotato con codice %s \n", risp[5],risp[6],risp);
					if(errore<0)
						{
							if(WSAGetLastError()==WSAEINTR)
							{
							printf("errore nella printf");
							SendMessage(HWND_BROADCAST,my_mex_type,0,0);
							exit(-1);// uscita
							}
						}

			q++;
	} // chiudi la while controllo sulla q
}