2016-02-17 3 views
-1

Я NEW на языке программирования c и в настоящее время написание небольшого кода для моего окончательного проекта. Код ниже представляет собой проект конечного продукта. В основном это система оценки, в которой файлы будут включены позже. Но пока я просто пытаюсь проверить программу, чтобы увидеть, где я стою. Я получаю сообщение об ошибке. [Ошибка] ld возвратил 1 статус выхода. Это код.У меня есть [Ошибка] ld возвращен 1 статус выхода в C

#include<stdio.h> 
#include<conio.h> 
#include<string.h> 
int main() 
{ 
    int use; 
    int key; 
    int pass,i; 
    int a; 
    do 
    { 
     menu (a); 
     switch(a) 
     { 
      case 1: 
       for(i=1;i<5;i++) 
       { 
        printf("Please enter your username and password \n"); 
        scanf("%d",&use); 
        printf(""); 
        scanf("%d",& pass); 
        if (use ==711 && pass ==90210) 
        { 
         printf("\n Student Name"); 
         printf("\n student subjects/student letter grade"); 
         printf("\n"); 
         printf("\n"); 
         printf("\n"); 
         printf("\t\t student GPA"); 
         printf("\n Please enter any key to exit"); 
         scanf("%d",& key); 
         break; 
        } 
       } 

      case 2: 
       for(i=1;i<5;i++) 
       { 
        printf("Please enter your username and password \n"); 
        scanf("%d",&use); 
        printf(""); 
        scanf("%d",& pass); 
        if (use ==911 && pass ==90211) 
        { 
         printf("Would you like to update student grades?"); 
        } 
        break; 
       } 

      case 3: 
       for(i=1;i<5;i++) 
       { 
        printf("Please enter your username and password \n"); 
        scanf("%d",&use); 
        printf(""); 
        scanf("%d",& pass); 
        if (use ==1011 && pass ==90215) 
        { 
         printf("\n below the amount of users that accessed the system today"); 
         printf("\n **********"); 
         printf("\n"); 
        } 
        break; 
        default: 
        printf("Please try agagin"); 
       } 
     } 
    } while (a!=4); 
    return 0;      

    getch(); 
} 


int menu(a) 
{ 
    printf("\t Welcome to Ski Academy Portal"); 
    printf("\n 1. Student \t");                 
    printf("\n 2. Staff \t");                                  
    printf("\n 3. Administrative \t");             
    printf("\n 4. Exit \t");   
    printf("\n Please enter your number choice \n"); 
    scanf("%d",&a); 

    return 0; 
} 
+0

какая команда компилятора вы выполняете и какой полный вывод? – bruceg

+0

Слишком плохо, что это не фактическое сообщение об ошибке, а только отчет вашего инструмента построения произошел с ошибкой. Укажите ** полное сообщение об ошибке **. Прочитайте [ask]. – Olaf

ответ

0

Ваша ошибка, как представляется, связано с тем, что menu не имеет никакого заявления, прежде чем пытаться использовать его. Предупреждение:

warning: implicit declaration of function ‘menu’ 

Непонятно. В зависимости от компилятора, который будет проходить через этап ссылки и генерировать ld returns -1 error, потому что компоновщик не может найти определение функции с именем menu.

Создайте объявление menu в верхней части вашего кода после включения. например

... 
#include<string.h> 

int menu(a); 

int main (void) { 
... 

или предпочтительно:

int menu (int a); 

отметить также 'i' и 'a' используются неинициализированным в main(). Перед тем, как попытаться использовать их, убедитесь, что вы указали их значение.

Компиляция с -Wall -Wextra (например, предупреждение включено) расскажет вам все это в сжатой форме.

+0

Большое вам спасибо – Keez

Смежные вопросы