Форум программистов, компьютерный форум CyberForum.ru

в чем ошибка - C++

Восстановить пароль Регистрация
 
issus
1 / 1 / 1
Регистрация: 07.12.2011
Сообщений: 46
28.05.2012, 10:46     в чем ошибка #1
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
//---------------------------------------------------------------------------
 
#include <stdio.h>
#include <conio.h>
//---------------------------------------------------------------------------
int main()
{
FILE *f;
    int i,n,d;
    f=fopen("out.txt","w");
    struct zarplata
    {
        char name[15];
        int god_r;
        int stag;
        int oklad;
        float zarplatta;
    };
    struct zarplata base [50];
    puts("kolichestvo-->");
    scanf("%d",&n);
    for (i = 0; i < n; i++)
    {
        puts ("fio-->");
        scanf("%s",base[i].name);
        puts ("data-->");
        scanf("%d",&base[i].god_r);
        puts ("staj-->");
        scanf("%d",&base[i].stag);
        puts ("oklad-->");
        scanf("%d",&base[i].oklad);
    }
    fprintf(f, "|Fio            |Data      |Staj      |Oklad     |Zp        |\n");
    fprintf(f,"___________________________________________________________________________\n");
    for (i = 0; i < n; i++)
    {
 
        if (base[i].stag>0 && base[i].stag<=4)
            base[i].zarplatta=base[i].oklad;
        if (base[i].stag>=5 && base[i].stag<=9)
            base[i].zarplatta=base[i].oklad+base[i].oklad*10/100;
        if (base[i].stag>=10 && base[i].stag<=19)
            base[i].zarplatta=base[i].oklad+base[i].oklad*(float)30/100;
        if (base[i].stag>=20 && base[i].stag<=50)
            base[i].zarplatta=base[i].oklad+base[i].oklad*50/100;
        fprintf(f,"|%15s|%10d|%10d|%10d|%10.2f|\n",
            base[i].name,base[i].god_r,base[i].stag,base[i].oklad, base[i].zarplatta);
    }
    fprintf(f,"___________________________________________________________________________\n");
    fclose(f);
    getch();
    return 0;
}
в чем ошибка
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2012, 10:46     в чем ошибка
Посмотрите здесь:

В чем ошибка? C++
В чем ошибка?.. C++
В чем ошибка? C++
C++ в чем ошибка?
В чем ошибка? C++
В чем ошибка ? ? C++
C++ в чем ошибка?
C++ В чем ошибка?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dimcoder
Полярный
 Аватар для dimcoder
449 / 422 / 66
Регистрация: 11.09.2011
Сообщений: 1,108
28.05.2012, 11:13     в чем ошибка #2
Нельзя объявлять в функции main() структуры/классы. Выносите в начало.

Добавлено через 22 минуты
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <stdio.h>
#include <conio.h>
//---------------------------------------------------------------------------
 
struct zarplata
{
    char name[15];
    int god_r;
    int stag;
    int oklad;
    float zarplatta;
};
 
int main()
{
FILE *f;
    int i,n,d;
    f=fopen("out.txt","w");
 
    struct zarplata base [50];
    puts("kolichestvo-->");
    scanf("%d",&n);
    for (i = 0; i < n; i++)
    {
        puts ("fio-->");
        scanf("%s",base[i].name);
        puts ("data-->");
        scanf("%d",&base[i].god_r);
        puts ("staj-->");
        scanf("%d",&base[i].stag);
        puts ("oklad-->");
        scanf("%d",&base[i].oklad);
    }
    fprintf(f, "|Fio            |Data      |Staj      |Oklad     |Zp        |\n");
    fprintf(f,"___________________________________________________________________________\n");
    for (i = 0; i < n; i++)
    {
 
        if (base[i].stag>0 && base[i].stag<=4)
            base[i].zarplatta=base[i].oklad;
        if (base[i].stag>=5 && base[i].stag<=9)
            base[i].zarplatta=base[i].oklad+base[i].oklad*10/100;
        if (base[i].stag>=10 && base[i].stag<=19)
            base[i].zarplatta=base[i].oklad+base[i].oklad*(float)30/100;
        if (base[i].stag>=20 && base[i].stag<=50)
            base[i].zarplatta=base[i].oklad+base[i].oklad*50/100;
        fprintf(f,"|%15s|%10d|%10d|%10d|%10.2f|\n",
            base[i].name,base[i].god_r,base[i].stag,base[i].oklad, base[i].zarplatta);
    }
    fprintf(f,"___________________________________________________________________________\n");
    fclose(f);
    getch();
    return 0;
}
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 50
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
28.05.2012, 11:21     в чем ошибка #3
Цитата Сообщение от dimcoder Посмотреть сообщение
Нельзя объявлять в функции main() структуры/классы. Выносите в начало.
Нельзя функции объявлять и определять в других функциях, а main() это функция. Структуры же можно определять в функциях.
Yandex
Объявления
28.05.2012, 11:21     в чем ошибка
Ответ Создать тему
Опции темы

Текущее время: 03:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru