2016-05-14 10 views
-3

Schlaufen für StrukturenWie Schleife für Strukturen?

main() 
{ 
    structure perdata //MADE A STRUCTURE 
    { 
    char name; 
    int age; 
    float salary; 
    }p1,p2,p3; 
    int i; 
    for(i=1;i<4;i++) 
    { 
    printf("p%d.name",i); 
    scanf("%s",);/*should loop and read names of p1,p2,p3*/ 
    } 
printf("p1.name:%s",p1.name); 
getch(); 
} 
+1

ein Array verwenden. Erledigt, –

Antwort

1

machen immer Arrays von Strukturen, Klassen usw., wenn Sie eine Schleife durch Instanzen müssen.

int main(void) 
    { 
     struct perdata //MADE A STRUCTURE 
     { 
     char name[20]; 
     int age; 
     float salary; 
     }; 

     struct perdata p[4]; 

     for(int i=0;i<4;i++) 
     { 
     //printf("p%d.name",i); 
     scanf("%s", &p[i].name);/*should loop and read names of p1,p2,p3*/ 
     } 

     for(int i=0;i<4;i++) 
     { 
      printf("p%d.name:%s\n",i+1, p[i].name); 
     } 
    getch(); 

    } 
1

Sie sollten Array von Strukturen verwenden, so dass Sie durch sie durchlaufen können.

Beispiel: Eine Reihe von Studenten Struktur,

#include <stdio.h> 

struct student{ 
    char name[50]; 
    int roll; 
    float marks; 
}; 

int main(){ 
    struct student s[10]; //Ten student details maybe stored 
    int i; 
    printf("Enter information of students:\n"); 

    //get the details of 10 students 
    for(i=0;i<10;++i) 
    { 
     s[i].roll=i+1; 
     printf("\nFor roll number %d\n",s[i].roll); 
     printf("Enter name: "); 
     scanf("%s",s[i].name); 
     printf("Enter marks: "); 
     scanf("%f",&s[i].marks); 
     printf("\n"); 
    } 

    //display the details of 10 students 
    printf("Displaying information of students:\n\n"); 
    for(i=0;i<10;++i) 
    { 
    printf("\nInformation for roll number %d:\n",i+1); 
    printf("Name: "); 
    puts(s[i].name); 
    printf("Marks: %.1f",s[i].marks); 
    } 
    return 0; 
} 

Verwenden Sie den obigen Beispielcode & Ihr Programm schreiben.

Verwandte Themen