Die Struktur Struktur istImplementieren Bubble Sort einen Zeiger mit
struct student
{
char name[10];
int roll;
int percent;
};
struct student s[5];
struct student *p;
Die obige Erklärung Global ist. Und das ist meine Bubble-Sort-Funktion.
void sort(int n)
{
int i,j,k;
struct student temp;
for(i=0;i<=(n-2);i++)
{
for(j=0;j<(n-i-1);j++){
if((p+j)->percent>(p+j+1)->percent){
//Define the temp variable of Structure type
temp=*(p+j);//Interchange s[j] and s[j+1]
*(p+j)=*(p+j+1);
*(p+j)=temp;
}
}
}
Ich mag den Punkt-Operator zu vermeiden, mit Elementen der Struktur zuzugreifen Die temporäre Variable für Swapping des Strukturtypen deklariert wurde. Diese Blasensortierfunktion funktioniert nicht. Dies sind die Zeilen, in denen ich denke, dass ich versaut habe. Bitte weisen Sie auf den Fehler hin.
if((p+j)->percent>(p+j+1)->percent){
temp=*(p+j);//Interchange s[j] and s[j+1]
*(p+j)=*(p+j+1);
*(p+j)=temp;
Was ist die Frage? Sie scheinen den Punktoperator vermieden zu haben. Funktioniert der Code nicht? – Mitchel0022
Bitte weisen Sie auf den Fehler hin, falls vorhanden, die Bubble-Sortierfunktion funktioniert nicht. Ich hatte die gleiche Funktion mit dem Punktoperator geschrieben und dieser funktioniert. Habe ich irgendwo die Syntax durcheinandergebracht? – KshitijV97
es funktioniert nicht wie in wird nicht kompilieren oder funktioniert nicht in seiner nicht sortiert? – Mitchel0022