fork download
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. /* Function to Calculate Average Age for Specified Group of Family Members */
  5. float averageFunction(float totalAge, int count)
  6. {
  7. return (totalAge/count);
  8. }
  9.  
  10. /* Main Module for Definition and Initialization of Variables */
  11. int main(void)
  12. {
  13. char *name, *state; // Input variables for family member name and state
  14. float age = 0.0; // Input variable for family member age
  15. char memberName[50]; // Stores names for up to 50 family members
  16. char memberState[50]; // Stores state of residence for up to 50 family members
  17. float memberAge[50]; // Stores ages for up to 50 family members
  18. float usTotalAge = 0.0; // Stores aggregate age of all family members
  19. float vtTotalAge = 0.0; // Stores aggregate age of family members in Vermont
  20. float usAverageAge = 0.0; // Stores average age of all family members
  21. float vtAverageAge = 0.0; // Stores average age of family members in Vermont
  22. int continueProgram = 1; // Select whether or not to continue running program
  23. int i,count = 1; // Tracks total number of family members entered
  24. int vtCount = 0; // Tracks number of family members in Vermont
  25.  
  26. /* Input Module to Enter Family Member Information */
  27. while(continueProgram>0)
  28. printf("Enter another Family Member? ");
  29. scanf("%d", &continueProgram);
  30. if(continueProgram>0)
  31. {
  32. printf("Yes\nName, Age, and State of Residence for Family Member #%d:\n", count);
  33. scanf("%s", name);
  34. memberName[count] = name; // warning: assignment makes integer from pointer without a cast
  35. scanf("%f", &age);
  36. memberAge[count] = age;
  37. scanf("%s", state);
  38. memberState[count] = state; // warning: assignment makes integer from pointer without a cast
  39. printf("%s\t", memberName[count]); // warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int'
  40. printf("%f\t", memberAge[count]);
  41. printf("%s\n", memberState[count]); // warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int'
  42. usTotalAge = usTotalAge + memberAge[count];
  43. if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
  44. {
  45. vtTotalAge = vtTotalAge + memberAge[count];
  46. vtCount = vtCount+1;
  47. }
  48. count = count+1;
  49. }
  50. else
  51. {
  52. printf("No\n\n");
  53. }
  54. }
  55.  
  56. /* Output Module for Average Age and Names of Family Members in Vermont */
  57. usAverageAge = averageFunction(usTotalAge, count);
  58. printf("Average age of all family members:\t%f\n", usAverageAge);
  59. vtAverageAge = averageFunction(vtTotalAge, vtCount);
  60. printf("Average age of family members in VT:\t%f\n", vtAverageAge);
  61. printf("Names of family members in VT:\n");
  62. count = 1;
  63. for(i=0; i<count; i++)
  64. {
  65. if(strcmp(memberState[count],"VT")!=0)
  66. {
  67. printf("%s", memberName[count]);
  68. }
  69. count = count+1;
  70. }
  71. return 0;
  72. }
  73.  
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
1 Bill 25 MD
1 Fred 85 CA
1 Mark 60 VT
1 Jane 45 VT
1 Hank 30 WI
0
compilation info
prog.c: In function 'main':
prog.c:34:25: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
       memberName[count] = name; // warning: assignment makes integer from pointer without a cast
                         ^
prog.c:38:26: warning: assignment makes integer from pointer without a cast [-Wint-conversion]
       memberState[count] = state; // warning: assignment makes integer from pointer without a cast
                          ^
prog.c:39:14: warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int' [-Wformat=]
       printf("%s\t", memberName[count]); // warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int'
              ^
prog.c:41:14: warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int' [-Wformat=]
       printf("%s\n", memberState[count]); // warning: format '%s' expects argument of type 'char *', but argument 2 has type 'int'
              ^
In file included from /usr/include/string.h:635:0,
                 from prog.c:2:
prog.c:43:17: warning: passing argument 1 of '__builtin_strlen' makes pointer from integer without a cast [-Wint-conversion]
       if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
                 ^
prog.c:43:17: note: expected 'const char *' but argument is of type 'char'
prog.c:43:17: warning: passing argument 1 of '__builtin_strcmp' makes pointer from integer without a cast [-Wint-conversion]
       if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
                 ^
prog.c:43:17: note: expected 'const char *' but argument is of type 'char'
prog.c:43:17: warning: passing argument 1 of '__builtin_strlen' makes pointer from integer without a cast [-Wint-conversion]
       if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
                 ^
prog.c:43:17: note: expected 'const char *' but argument is of type 'char'
prog.c:43:17: warning: passing argument 1 of '__builtin_strcmp' makes pointer from integer without a cast [-Wint-conversion]
       if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
                 ^
prog.c:43:17: note: expected 'const char *' but argument is of type 'char'
prog.c:43:17: warning: passing argument 1 of '__builtin_strcmp' makes pointer from integer without a cast [-Wint-conversion]
       if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
                 ^
prog.c:43:17: note: expected 'const char *' but argument is of type 'char'
prog.c:43:17: warning: passing argument 1 of '__builtin_strcmp' makes pointer from integer without a cast [-Wint-conversion]
       if(strcmp(memberState[count],"VT")!=0) // comparison between pointer and integer
                 ^
prog.c:43:17: note: expected 'const char *' but argument is of type 'char'
prog.c:23:7: warning: unused variable 'i' [-Wunused-variable]
   int i,count = 1;             // Tracks total number of family members entered
       ^
prog.c:21:9: warning: unused variable 'vtAverageAge' [-Wunused-variable]
   float vtAverageAge = 0.0;    // Stores average age of family members in Vermont
         ^
prog.c:20:9: warning: unused variable 'usAverageAge' [-Wunused-variable]
   float usAverageAge = 0.0;    // Stores average age of all family members
         ^
prog.c: At top level:
prog.c:57:3: warning: data definition has no type or storage class
   usAverageAge = averageFunction(usTotalAge, count);
   ^
prog.c:57:3: warning: type defaults to 'int' in declaration of 'usAverageAge' [-Wimplicit-int]
prog.c:57:34: error: 'usTotalAge' undeclared here (not in a function)
   usAverageAge = averageFunction(usTotalAge, count);
                                  ^
prog.c:57:46: error: 'count' undeclared here (not in a function)
   usAverageAge = averageFunction(usTotalAge, count);
                                              ^
prog.c:58:10: error: expected declaration specifiers or '...' before string constant
   printf("Average age of all family members:\t%f\n", usAverageAge);
          ^
prog.c:58:54: error: expected declaration specifiers or '...' before 'usAverageAge'
   printf("Average age of all family members:\t%f\n", usAverageAge);
                                                      ^
prog.c:59:3: warning: data definition has no type or storage class
   vtAverageAge = averageFunction(vtTotalAge, vtCount);
   ^
prog.c:59:3: warning: type defaults to 'int' in declaration of 'vtAverageAge' [-Wimplicit-int]
prog.c:59:34: error: 'vtTotalAge' undeclared here (not in a function)
   vtAverageAge = averageFunction(vtTotalAge, vtCount);
                                  ^
prog.c:59:46: error: 'vtCount' undeclared here (not in a function)
   vtAverageAge = averageFunction(vtTotalAge, vtCount);
                                              ^
prog.c:60:10: error: expected declaration specifiers or '...' before string constant
   printf("Average age of family members in VT:\t%f\n", vtAverageAge);
          ^
prog.c:60:56: error: expected declaration specifiers or '...' before 'vtAverageAge'
   printf("Average age of family members in VT:\t%f\n", vtAverageAge);
                                                        ^
prog.c:61:10: error: expected declaration specifiers or '...' before string constant
   printf("Names of family members in VT:\n");
          ^
prog.c:62:3: warning: data definition has no type or storage class
   count = 1;
   ^
prog.c:62:3: warning: type defaults to 'int' in declaration of 'count' [-Wimplicit-int]
prog.c:63:3: error: expected identifier or '(' before 'for'
   for(i=0; i<count; i++)
   ^
prog.c:63:13: error: expected '=', ',', ';', 'asm' or '__attribute__' before '<' token
   for(i=0; i<count; i++)
             ^
prog.c:63:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before '++' token
   for(i=0; i<count; i++)
                      ^
prog.c:71:3: error: expected identifier or '(' before 'return'
   return 0;
   ^
prog.c:72:1: error: expected identifier or '(' before '}' token
 }
 ^
stdout
Standard output is empty