SabirSazzad

Structer Project (Eahtasm Sir)

Feb 20th, 2017
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 8.62 KB | None | 0 0
  1. #include<stdio.h>
  2. struct Quiz
  3. {
  4.     float quiz1Marks;
  5.     float quiz2Marks;
  6.     float quiz3Marks;
  7. };
  8. struct Term
  9. {
  10.  
  11.     float labQuizMarks;
  12.     float attendanceMarks;
  13.     float assignmentMarks;
  14.     float termExam;
  15.     float mid_percentage;
  16.     float final_percentage;
  17.     float final_marks;
  18.     struct Quiz quiz;
  19.  
  20. };
  21.  
  22. struct Marks
  23. {
  24.     float projectMarks;
  25.     struct Term midTerm;
  26.     struct Term finalTerm;
  27. };
  28.  
  29. struct Course
  30. {
  31.     char *name;
  32.     int ID;
  33.     struct Marks marks;
  34. };
  35.  
  36. struct Student
  37. {
  38.     int studentID;
  39.     char  *studentName;
  40.     struct Course programming_language;
  41. };
  42.  
  43.  
  44.  
  45. int main()
  46. {
  47.     struct Student students[40];
  48.  
  49.     /* My Data */
  50.  
  51.     students[0].studentName = "MD. Sabir Ibna Sazzad";
  52.     students[0].studentID = 31051;
  53.     students[0].programming_language.name = "Programming Language 1";
  54.     students[0].programming_language.ID = 1604;
  55.  
  56.     students[0].programming_language.marks.projectMarks = 20;
  57.  
  58.     students[0].programming_language.marks.midTerm.quiz.quiz1Marks = 45;
  59.     students[0].programming_language.marks.midTerm.quiz.quiz2Marks = 48;
  60.     students[0].programming_language.marks.midTerm.quiz.quiz3Marks = 44;
  61.     students[0].programming_language.marks.midTerm.labQuizMarks = 20;
  62.     students[0].programming_language.marks.midTerm.attendanceMarks = 10;
  63.     students[0].programming_language.marks.midTerm.assignmentMarks = 20;
  64.     students[0].programming_language.marks.midTerm.termExam = 95;
  65.  
  66.  
  67.     students[0].programming_language.marks.finalTerm.quiz.quiz1Marks = 46;
  68.     students[0].programming_language.marks.finalTerm.quiz.quiz2Marks = 48;
  69.     students[0].programming_language.marks.finalTerm.quiz.quiz3Marks = 50;
  70.     students[0].programming_language.marks.finalTerm.attendanceMarks = 10;
  71.     students[0].programming_language.marks.finalTerm.termExam = 90;
  72.  
  73.     /* Akif's Data */
  74.  
  75.     students[1].studentName = "Akif Ahmed";
  76.     students[1].studentID = 31014;
  77.     students[1].programming_language.name = "Programming Language 1";
  78.     students[1].programming_language.ID = 1604;
  79.  
  80.     students[1].programming_language.marks.projectMarks = 20;
  81.  
  82.     students[1].programming_language.marks.midTerm.quiz.quiz1Marks = 48;
  83.     students[1].programming_language.marks.midTerm.quiz.quiz2Marks = 45;
  84.     students[1].programming_language.marks.midTerm.quiz.quiz3Marks = 47;
  85.     students[1].programming_language.marks.midTerm.labQuizMarks = 20;
  86.     students[1].programming_language.marks.midTerm.attendanceMarks = 10;
  87.     students[1].programming_language.marks.midTerm.assignmentMarks = 20;
  88.     students[1].programming_language.marks.midTerm.termExam = 94;
  89.  
  90.  
  91.     students[1].programming_language.marks.finalTerm.quiz.quiz1Marks = 44;
  92.     students[1].programming_language.marks.finalTerm.quiz.quiz2Marks = 50;
  93.     students[1].programming_language.marks.finalTerm.quiz.quiz3Marks = 50;
  94.     students[1].programming_language.marks.finalTerm.attendanceMarks = 10;
  95.     students[1].programming_language.marks.finalTerm.termExam = 97;
  96.  
  97.      /* choose lowest number quiz from mid term .. because only best 2 will count*/
  98.     int i;
  99.     int mid_small_number[40];
  100.     int final_small_number[40];
  101.     int mid_sum=0,final_sum=0,mid_percent[40],final_percent[40],final_number[40];
  102.  
  103.     for(i=0;i<2;i++)
  104.     {
  105.         if(students[i].programming_language.marks.midTerm.quiz.quiz1Marks < students[i].programming_language.marks.midTerm.quiz.quiz2Marks && students[i].programming_language.marks.midTerm.quiz.quiz1Marks < students[i].programming_language.marks.midTerm.quiz.quiz3Marks)
  106.         {
  107.             mid_small_number[i] = students[i].programming_language.marks.midTerm.quiz.quiz1Marks;
  108.         }
  109.         else if (students[i].programming_language.marks.midTerm.quiz.quiz2Marks < students[i].programming_language.marks.midTerm.quiz.quiz3Marks)
  110.         {
  111.             mid_small_number[i] = students[i].programming_language.marks.midTerm.quiz.quiz2Marks;
  112.         }
  113.         else
  114.         {
  115.             mid_small_number[i] = students[i].programming_language.marks.midTerm.quiz.quiz3Marks;
  116.         }
  117.  
  118.     /* choose lowest number quiz from final term.. because only best 2 will count*/
  119.  
  120.  
  121.         if(students[i].programming_language.marks.finalTerm.quiz.quiz1Marks < students[i].programming_language.marks.finalTerm.quiz.quiz2Marks && students[i].programming_language.marks.finalTerm.quiz.quiz1Marks < students[i].programming_language.marks.finalTerm.quiz.quiz3Marks)
  122.         {
  123.             final_small_number[i] = students[i].programming_language.marks.finalTerm.quiz.quiz1Marks;
  124.         }
  125.         else if (students[i].programming_language.marks.finalTerm.quiz.quiz2Marks < students[i].programming_language.marks.finalTerm.quiz.quiz3Marks)
  126.         {
  127.             final_small_number[i] = students[i].programming_language.marks.finalTerm.quiz.quiz2Marks;
  128.         }
  129.         else
  130.         {
  131.             final_small_number[i] = students[i].programming_language.marks.finalTerm.quiz.quiz3Marks;
  132.         }
  133.  
  134.  
  135.     /* 40% count from Mid term & 60% form Final term*/
  136.     /* Both Mid & Final term marks taking from quiz 40%, Lab Quiz 10%, Assignment 10%, MId & Final Term Exam 70% */
  137.  
  138.         mid_sum = (.1 * students[i].programming_language.marks.midTerm.labQuizMarks)
  139.         + students[i].programming_language.marks.midTerm.attendanceMarks
  140.         + (.1 * students[i].programming_language.marks.midTerm.assignmentMarks)
  141.         + (.4 * students[i].programming_language.marks.midTerm.termExam)
  142.         + (.4 * students[i].programming_language.marks.midTerm.quiz.quiz1Marks)
  143.         + (.4 * students[i].programming_language.marks.midTerm.quiz.quiz2Marks)
  144.         + (.4 *  students[i].programming_language.marks.midTerm.quiz.quiz3Marks);
  145.  
  146.         mid_sum = mid_sum - (.4 * mid_small_number[i]);
  147.  
  148.         mid_percent[i] = (.4 * mid_sum);
  149.         students[i].programming_language.marks.midTerm.mid_percentage = mid_percent[i];
  150.  
  151.         final_sum = students[i].programming_language.marks.finalTerm.attendanceMarks
  152.         + (.4 * students[i].programming_language.marks.finalTerm.termExam)
  153.         + (.5 * students[i].programming_language.marks.finalTerm.quiz.quiz1Marks)
  154.         + (.5 * students[i].programming_language.marks.finalTerm.quiz.quiz2Marks)
  155.         + (.5 *  students[i].programming_language.marks.finalTerm.quiz.quiz3Marks);
  156.  
  157.         final_sum = final_sum - (.5 * final_small_number[i]);
  158.         final_percent[i] = (.6 * final_sum);
  159.         students[i].programming_language.marks.finalTerm.final_percentage = final_percent[i];
  160.  
  161.         final_number[i] =  ((mid_percent[i] + final_percent[i]) * .8) + students[i].programming_language.marks.projectMarks ;
  162.         students[i].programming_language.marks.finalTerm.final_marks = final_number[i];
  163.  
  164.     }
  165.  
  166.  
  167.     for(i=0;i<2;i++)
  168.     {
  169.  
  170.         printf("Student Name: %s\n",students[i].studentName);
  171.         printf("Student ID: %d\n",students[i].studentID);
  172.         printf("Course Name: %s\n",students[i].programming_language.name);
  173.         printf("Course ID: %d\n\n",students[i].programming_language.ID);
  174.  
  175.         printf("Mid term Quiz1 Marks: %f\n",students[i].programming_language.marks.midTerm.quiz.quiz1Marks);
  176.         printf("Mid term Quiz2 Marks: %f\n",students[i].programming_language.marks.midTerm.quiz.quiz2Marks);
  177.         printf("Mid term Quiz3 Marks: %f\n",students[i].programming_language.marks.midTerm.quiz.quiz3Marks);
  178.         printf("Mid term Lab Quiz Marks: %f\n",students[i].programming_language.marks.midTerm.labQuizMarks);
  179.         printf("Mid term Attendance Mark: %f\n",students[i].programming_language.marks.midTerm.attendanceMarks);
  180.         printf("Mid term Assignment Marks: %f\n",students[i].programming_language.marks.midTerm.assignmentMarks);
  181.         printf("Mid term Exam Marks: %f\n",students[i].programming_language.marks.midTerm.termExam);
  182.         printf("Mid term percentage: %f\n\n",students[i].programming_language.marks.midTerm.mid_percentage);
  183.  
  184.         printf("Final term Quiz1 Marks: %f\n",students[i].programming_language.marks.finalTerm.quiz.quiz1Marks);
  185.         printf("Final term Quiz2 Marks: %f\n",students[i].programming_language.marks.finalTerm.quiz.quiz2Marks);
  186.         printf("Final term Quiz3 Marks: %f\n",students[i].programming_language.marks.finalTerm.quiz.quiz3Marks);
  187.         printf("Final term Attendance Mark: %f\n",students[i].programming_language.marks.finalTerm.attendanceMarks);
  188.         printf("Final term Exam Marks: %f\n",students[i].programming_language.marks.finalTerm.termExam);
  189.         printf("Final term Percentage: %f\n\n",students[i].programming_language.marks.finalTerm.final_percentage);
  190.  
  191.         printf("Final Mark is: %f\n\n\n",students[i].programming_language.marks.finalTerm.final_marks);
  192.  
  193.     }
  194.  
  195.     return 0;
  196. }
Advertisement
Add Comment
Please, Sign In to add comment