Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

เขียนโปรแกรม C เพื่อรักษาข้อมูลของนักคริกเก็ตในรูปแบบตารางโดยใช้โครงสร้าง


ปัญหา

วิธีเก็บข้อมูลของนักคริกเก็ตในรูปแบบตารางในลำดับการเรียงตามการวิ่งเฉลี่ยโดยใช้โครงสร้างในภาษา C Programming

วิธีแก้ปัญหา

ลองป้อนข้อมูลนักคริกเก็ต เช่น ชื่อ อายุ จำนวนการแข่งขัน และการวิ่งเฉลี่ยที่เขาทำคะแนน มันจะถูกป้อนในคอนโซลตอนรันไทม์โดยใช้แนวคิดโครงสร้าง

และพยายามแสดงข้อมูลในรูปแบบตารางโดยเรียงลำดับตามการวิ่งเฉลี่ยของแต่ละคน เพื่อให้ง่ายต่อการระบุรายละเอียดของแต่ละคนอย่างชัดเจน

ตรรกะที่เราใช้ในการจัดเรียงคริกเก็ตตามลำดับจากน้อยไปมากตามค่าเฉลี่ยที่พวกเขาทำคะแนนคือ -

for(i=0;i<2;i++){
   for(j=i+1;j<2;j++){
      if(c[i].avrn > c[j].avrn){
         temp1=c[i];
         c[i]=c[j];
         c[j]=temp1;
      }
   }
}

โปรแกรม

#include<stdio.h>
#include<conio.h>
#include<string.h>
struct cricketer{
   char name[50];
   int age;
   int match;
   float avrn;
   char temp;
};
struct cricketer c[20],temp1;
void main() {
   int i,j;
   for(i=0;i<2;i++){
      printf("Enter data of cricketer %d\n",i+1);
      //fflush(stdin);
      printf("Name: ");
      gets(c[i].name);
      printf("\nAge: ");
      scanf("%d",&c[i].age);
      printf("\nMatches: ");
      scanf("%d",&c[i].match);
      printf("\n\nAverage runs: ");
      scanf("%f",&c[i].avrn);
      scanf("%c",&c[i].temp);
   }
   /******************/
   /* sorting records */
   /*******************/
   for(i=0;i<2;i++) {
      for(j=i+1;j<2;j++) {
         if(c[i].avrn > c[j].avrn){
            temp1=c[i];
            c[i]=c[j];
            c[j]=temp1;
         }
      }
   }
   printf("Sorted records:\n");
   for(i=0;i<2;i++){
      printf("%d\t%s\t%d\t%d\t%f\n\n\n",i+1,c[i].name,c[i].age,c[i].match,c[i].avrn);
   }
   getch();
}

ผลลัพธ์

Enter data of cricketer 1
Name: Dhoni
Age: 39
Matches: 150
Average runs: 200
Enter data of cricketer 2
Name: virat
Age: 36
Matches: 135
Average runs: 190
Sorted records:
1    virat    36    135    190.000000
2    Dhoni    39    150    200.000000