Advertisement
Guest User

Untitled

a guest
Oct 16th, 2019
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 3.53 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string.h>
  3. struct address
  4. {
  5.     char present_address[100];
  6.     char city[50];
  7.     char country[50];
  8.     int postal_code;
  9. };
  10. struct personal_info
  11. {
  12.     char name[30];
  13.     char nid[100];
  14.     address ads;
  15.     int age;
  16.     double salary;
  17. };
  18. int main()
  19. {
  20.     int n,i,j;
  21.     scanf("%d",&n);
  22.     personal_info arr[n+2],temp;
  23.     char c;
  24.     for(i=0;i<n;i++)
  25.     {
  26.         //scanf("%c",&c);
  27.         getchar();
  28.         scanf("%[^\n]",arr[i].name);
  29.         getchar();
  30.         //scanf("%c",&c);
  31.         scanf("%s",arr[i].nid);
  32.         getchar();
  33.         //scanf("%c",&c);
  34.         scanf("%[^\n]",arr[i].ads.present_address);
  35.         getchar();
  36.        // scanf("%c",&c);
  37.         scanf("%s",arr[i].ads.city);
  38.         getchar();
  39.        // scanf("%c",&c);
  40.         scanf("%s",arr[i].ads.country);
  41.         getchar();
  42.        // scanf("%c",&c);
  43.         scanf("%d",&arr[i].ads.postal_code);
  44.         getchar();
  45.        // scanf("%c",&c);
  46.         scanf("%d",&arr[i].age);
  47.         getchar();
  48.         //scanf("%c",&c);
  49.         scanf("%lf",&arr[i].salary);
  50.         // scanf("%c",&c);
  51.     }
  52.     getchar();
  53.     while(1)
  54.     {
  55.         int q;
  56.         scanf("%d",&q);
  57.         if(q==1)
  58.         {
  59.             //cout<<"BLA"<<endl;
  60.             char qnid[100];
  61.             scanf("%s",qnid);
  62.             for(i=0;i<n;i++)
  63.             {
  64.                 if(strcmp(qnid,arr[i].nid)==0)
  65.                 {
  66.                     printf("%s\n%s\n",arr[i].name,arr[i].ads.present_address);
  67.                     break;
  68.                 }
  69.             }
  70.         }
  71.         else if(q==2)
  72.         {
  73.             double qsalary;
  74.             scanf("%lf",&qsalary);
  75.             for(i=0;i<n;i++)
  76.             {
  77.                 if(arr[i].salary<qsalary)
  78.                 {
  79.                     printf("%s\n",arr[i].name);
  80.                 }
  81.             }
  82.         }
  83.         else if(q==3)
  84.         {
  85.             char qnid[100];
  86.             scanf("%s",qnid);
  87.             int increase;
  88.             scanf("%d",&increase);
  89.             for(i=0;i<n;i++)
  90.             {
  91.                 if(strcmp(qnid,arr[i].nid)==0)
  92.                 {
  93.                     arr[i].salary+=(arr[i].salary*increase)/100.0;
  94.                     printf("Salary of %s has been increased to %.2lf\n",arr[i].name,arr[i].salary);
  95.                     break;
  96.                 }
  97.             }
  98.         }
  99.         else if(q==4)
  100.         {
  101.             for(i=0;i<n;i++)
  102.             {
  103.                 for(j=n-1;j>i;j--)
  104.                 {
  105.                     if(arr[i].salary<arr[j].salary)
  106.                     {
  107.                         temp=arr[i];
  108.                         arr[i]=arr[j];
  109.                         arr[j]=temp;
  110.                     }
  111.                     else if(arr[i].salary==arr[j].salary)
  112.                     {
  113.                         if(arr[i].age>arr[j].age)
  114.                         {
  115.                             temp=arr[i];
  116.                             arr[i]=arr[j];
  117.                             arr[j]=temp;
  118.                         }
  119.                     }
  120.                 }
  121.             }
  122.             for(i=0;i<n;i++)
  123.             {
  124.                 printf("%s\n",arr[i].name);
  125.                 printf("%s\n",arr[i].nid);
  126.                 printf("%s\n",arr[i].ads.present_address);
  127.                 printf("%s\n",arr[i].ads.city);
  128.                 printf("%s\n",arr[i].ads.country);
  129.                 printf("%d\n",arr[i].ads.postal_code);
  130.                 printf("%d\n",arr[i].age);
  131.                 printf("%.2lf\n",arr[i].salary);
  132.             }
  133.         }
  134.     }
  135. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement