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

Нужно найти ошибку - C++

Восстановить пароль Регистрация
 
Сеня 2007
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 182
30.03.2011, 17:58     Нужно найти ошибку #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
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <locale.h>
 
 
int main(void)
{
    setlocale (LC_ALL, "Russian");
    int a[50][100];
    int r[100];
    int size,size2,i,b,c,l,j,tmp;
    do
{
     
    printf("Введите 1 - для ввода с клавиатуры\n");
    printf("Введите 2 - для ввода из файла\n");
    printf("Введите 3 - для вывода\n");
    printf("Введите 4 - для нахождения элементов больших C\n");
    printf("Введите 5 - для нахождения произведения\n");
    printf("Введите 6 - для сортировки\n");
    printf("Введите 7 - для вывода в файл\n");
    printf("Введите 0 - для выхода\n");
    scanf("%d",&b);
    switch(b)
    {
    case 1: 
        printf("Введите количество элементов  n= \n");
        scanf("%d",&size);
        printf("Введите количество элементов  n= \n");
        scanf("%d",&size2);
        printf("Введите числа:\n");
    for(i=0; i<size; i++)
     {
         for(j=0; j<size2; j++)
         {
         scanf("%d",&a[i][j]);
         }
    }; break;
    case 2:
        FILE*In;
    In=fopen("1.txt","r");
    if(In!=0){
        for(i=0; i<size; i++)
        {
             for(j=0; j<size2; j++)
         {
            fscanf(In, "%d", &a[i][j]);
             }}}
    else printf("Файл не открыт");
        fclose(In); break;
    case 3:
        printf("Массив:\n");
    for(i=0; i<size; i++)
     {
         printf("\n");
         for(j=0; j<size2; j++)
         {
         printf("%d ",a[i][j]);
         }
    }; break;
    case 4:
            printf("\nНомер столбца имеющего 0\n");
    for(j=0; j<size2; j++)
     {
         for(i=0; i<size; i++)
         {
             if(a[i][j]==0)
             {
                 printf("%d",j+1);
                 l=1;
                 break;
             }if(l==1){break;}
         }
    }
for(i=0; i<size; i++)
{
r[i]=0;
}; break;
    case 5:
        for(i=0; i<size; i++)
    {
        if(r[i]<r[i+1])
        {
            for(j=0; j<size2; j++)
            {
            tmp=a[i][j];
            a[i][j]=a[i+1][j];
            a[i+1][j]=tmp;
            }
        }
    }
for(i=0; i<size; i++)
     {printf("\n");
         for(j=0; j<size2; j++)
         {
             printf("%d ",a[i][j]);
         }
    }; break;
    } while(b!=0);
}
}
Пишет Error 7 error C2059: syntax error : '}' j:\123\24.cpp 102
Но если убераешь эту скобку, то пишет что не хватает скобку! В чем причина?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.03.2011, 17:58     Нужно найти ошибку
Посмотрите здесь:

C++ Нужно найти ошибку!!
нужно найти ошибку. C++
Нужно найти ошибку C++
нужно найти ошибку в коде C++
C++ Нужно найти ошибку
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
30.03.2011, 18:04     Нужно найти ошибку #2
Цитата Сообщение от Сеня 2007 Посмотреть сообщение
while(b!=0);
к чему относится вообще?
Сеня 2007
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 182
30.03.2011, 22:18  [ТС]     Нужно найти ошибку #3
При 0 выходит из цикла
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
30.03.2011, 23:37     Нужно найти ошибку #4
синтаксически к чему относится?
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
31.03.2011, 07:31     Нужно найти ошибку #5
Скобки надо проверить.
Сеня 2007
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 182
31.03.2011, 21:45  [ТС]     Нужно найти ошибку #6
Да это и ежу понятно что скобки. А в каком месте косяк я понять не могу!!
oxotnik
 Аватар для oxotnik
1584 / 1061 / 33
Регистрация: 21.08.2008
Сообщений: 4,545
Записей в блоге: 1
31.03.2011, 23:43     Нужно найти ошибку #7
меня берут большие сомнения насчет синтаксической легальности конструкции
Код
for{...}while(...);
Код
do{...}while(...)
знаю, а насчет описанной как то не уверен.
Сеня 2007
2 / 2 / 0
Регистрация: 03.10.2010
Сообщений: 182
01.04.2011, 22:48  [ТС]     Нужно найти ошибку #8
Данная конструкция используется для замкнутого цикла.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.04.2011, 12:43     Нужно найти ошибку
Еще ссылки по теме:

C++ Нужно найти ошибку
C++ Нужно найти ошибку
C++ Нужно найти и исправить ошибку

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

Или воспользуйтесь поиском по форуму:
vitaska
 Аватар для vitaska
83 / 83 / 2
Регистрация: 04.02.2010
Сообщений: 162
02.04.2011, 12:43     Нужно найти ошибку #9
у вас не закрыт switch (между 99 и 100 строкой вставить } ) и лишняя скобка строка 101
Yandex
Объявления
02.04.2011, 12:43     Нужно найти ошибку
Ответ Создать тему
Опции темы

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