2014-11-21 5 views
-4

Привет, я чрезвычайно новичок в CI. Я пытаюсь написать простую программу, которая предложит пользователю ввести несколько модулей, за которыми следуют кредитная и цифровая оценка для каждого модуля, эта программа должна распечатать информацию полученных пользователем, включая класс письма для каждого модуля и ГПД в нижней части. Я дошел до точки, где я пытаюсь преобразовать числовую оценку в класс письма, и я пытаюсь написать класс, который я могу ввести в числовой класс, скажем, «mod1.grade», который вернет класс письма, но не сможет это обработать как я сказал, что я полный новичок, так что был бы признателен за любую полученную помощь.C GPA Gross Point Average

#include <stdio.h> 
#include <string.h> 

struct module { char moduleid[10]; int credit; float grade; }; 
int main() { 
     struct module mod1,mod2; printf("Please enter: module id, module credit and module grade\n"); 
     scanf("%s%d%f",mod1.moduleid,&mod1.credit,&mod1.grade); 
     scanf("%s%d%f",mod2.moduleid,&mod2.credit,&mod2.grade); 

     String getGrade (float input){ 

     String letterGrade; 
     if(input >= 80&&<=100){ 
      letterGrade = 'A'; 
     } 
     return letterGrade; 
     } 

    printf("Module id\tCredit\t\tGrade\n"); 
    printf("%s\t\t%d\t\t%f\t%s\n",mod1.moduleid,mod1.credit,mod1.grade,getGrade(mod1.grade)); 
    printf("%s\t\t%d\t\t%f\n",mod2.moduleid,mod2.credit,mod2.grade); 

    return 0; 
} 
+3

Является ли это C или C# вопрос? Кроме того, что вы пробовали до сих пор и что у вас возникли проблемы с пониманием? Stack Overflow - это не «моя домашняя работа для меня». Мы здесь, чтобы помочь ответить на конкретные вопросы. –

+0

Пожалуйста, отформатируйте и отстудите свой код, чтобы сделать его доступным для чтения. –

+1

В C. нет классов или 'String'. –

ответ

0

Ваш код должен быть:

#include <stdio.h> 
#include <string.h> 

struct module { 
    char moduleid[10]; 
    int credit; 
    float grade; 
}; 

    char getGrade (float input){ //you need to return a char 
    //there isn't any "String" data type in C 
    char letterGrade; //char not String 
    if(input >= 80&&input<=100){ //note the difference here 
      letterGrade = 'A'; 
    } 
    return letterGrade; 
    } 

    int main() { 
     struct module mod1,mod2; 
     printf("Please enter: module id, module credit and module grade\n"); 
     scanf("%s%d%f",mod1.moduleid,&mod1.credit,&mod1.grade); 
     scanf("%s%d%f",mod2.moduleid,&mod2.credit,&mod2.grade); 

     printf("Module id\tCredit\t\tGrade\n"); 
     printf("%s\t\t%d\t\t%f\t%c\n",mod1.moduleid,mod1.credit,mod1.grade,getGrade(mod1.grade));//%c for a character 
     printf("%s\t\t%d\t\t%f\t%c\n",mod2.moduleid,mod2.credit,mod2.grade,getGrade(mod2.grade)); //same here too 

     return 0; 
    }