Slt, je suis un débutant en programmation et mon prof me dit d'écrire un programme qui permet de trier une liste de chaine de caractère inserée dans un tableau.Voici un peu ce que j'ai fait mais le compilateur m'indique des erreurs lvalue required.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<stdlib.h>
#include<string.h>
struct etudiant{
char nom[20];
char prenom[30];
int numero;
} *ref;
void main()
{ clrscr();
int n,i;
char *tamp,*tamp1;
int tamp2,r;
printf("\n Saisir le nombre des ‚tudiants:" );
scanf("%d",&n);
// TYPEDEF struct etudiant etu;
ref=(struct etudiant *)calloc(n,sizeof(struct etudiant));
if(ref!=NULL)
{
for(i=0;i<n;i++)
{ printf("\n\tSaisie de l'‚tudiant %d",i+1);
printf("\n NOM:" );
scanf("%s",&ref[i].nom);
printf("\n PRENOM:" );
scanf("%s",&ref[i].prenom);
printf("\n NUMERO:" );
scanf("%d",&ref[i].numero);
}
for(i=0;i<n;i++)
{ r=strncmp(ref[i].nom,ref[i+1].nom,2);
if(r>0)
{ tamp=ref[i+1].nom;
ref[i+1].nom=ref[i].nom;
ref[i].nom=tamp;
tamp1=ref[i+1].prenom;
ref[i+1].prenom=ref[i].prenom;
ref[i].nom=tamp1;
tamp2=ref[i+1].numero;
ref[i+1].numero=ref[i].numero;
ref[i].numero=tamp2;
}
for(i=0;i<n;i++)
{ clrscr();
printf("\n\n\n\n\n\t\t Etudiant %d",i+1);
printf("\n %s",ref[i].nom);
printf("\n %s",ref[i].prenom);
printf("\n %d",ref[i].numero);
}
}
else
{ printf("\n PAS ASSEZ DE PLACE" ); }
free(ref);
getch();
}