Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
snake5129x
1 / 1 / 0
Регистрация: 29.09.2012
Сообщений: 52
1

Ошибки при компиляции - исправить ошибки в коде

05.10.2012, 18:40. Просмотров 1266. Ответов 7
Метки нет (Все метки)

Помогите исправить ошибки , не понимаю в чем может быть причина ...
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
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <iostream>
#include <string.h>
 
void ctenie (int mas, int n ,int m)
{
     int i,j;
     printf(" Vvedite razmer matrici:\n" );
     scanf("%d%d",&n,&m);       
     for (int i = 0; i < n; i++)
    {
      for (int j = 0; j < m; j++) 
       {
      scanf("%d",&mas[i][j]);
       }
    }
}
 
int random (int mas ,int n ,int m)
{
    int i,j;
    for(i=0; i < n; i++)
    {
        for(j=0; j < m; j++)
        {
            mas[i][j]= rand()%100 ;
        }
    }
}
 
int vivod (int mas, int n ,int m)
{
          int i,j;
          for (int i = 0; i < n; i++)
           {
            for(int j = 0; j < m; j++)
            printf(" Matrix :%d\n", mas[i][j]);
           }
}
int Max_Min (int mas, int n ,int m)
{
    
    int imax, jmax,imin,jmin;
    int i,j,max,min;
     min = mas[0][0];//ïðèñâГ*ГЁГўГ*ГҐГ¬ ìèГ*èìóì ïåðâîìó ýëåìåГ*ГІГі Г¬Г*òðèöû
     max = mas[0][0]; //ïðèñâГ*ГЁГўГ*ГҐГ¬ Г¬Г*êñèìóì ïåðâîìó ýëåìåГ*ГІГі Г¬Г*òðèöû
        for(i = 0; i < n; ++i)
          {  
              for(j = 0; j < n; ++j)
                  {     
                        if(max < mas[i][j])
                         max = mas[i][j];
                         imin = i;
                         jmin = j;
                                        
                        if(min > mas[i][j])
                         min = mas[i][j];
                         imin = i;
                         jmin = j;
                  }
          }
             printf("\nMax element s coord [%d][%d] raven %d", imax, jmax, mas[i][j]);
             printf("\nMin element s coord [%d][%d] raven %d", imin, jmin, mas[i][j]);            
}
 
 
 
int main(void)
{
    int key,n,m,i,j;
    int mas[100][100];
do {
        system("cls");
        printf("\n Menu");
        printf("\n 1.Ctenie s claviaturi.");
        printf("\n 2.Min_Max znacen i pozitii.");   
        printf("\n 3.Pemeniati mestami  2 stolbtsa.");
        printf("\n 4.Dobaviti stroku i zapolniti soglasno variantu ."); 
        printf("\n 5.Otsortirovati matritu po dobavlennoi stroke .");   
        printf("\n 6.Sgenerirovati matricu ."); 
        printf("\n 0. Vihod");
        printf("\n\t==>");
        scanf("%d",&key);
        switch(key) 
        {
                    
    case 1:
            system("cls");
            printf(" Vvedite razmer matrici:\n" );
            scanf("%d %d",&n,&m);
            vivod(mas,n,m);
            getch();
            break;                 
   
        }
      while(key!=0); 
  
    }
}
XML
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
F:\c++\Dev-CppPortable\Lab2.cpp: In function `void ctenie(int, int, int)':
F:\c++\Dev-CppPortable\Lab2.cpp:16: error: invalid types `int[int]' for array subscript
 
F:\c++\Dev-CppPortable\Lab2.cpp: In function `int random(int, int, int)':
F:\c++\Dev-CppPortable\Lab2.cpp:28: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp: In function `int vivod(int, int, int)':
F:\c++\Dev-CppPortable\Lab2.cpp:39: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp: In function `int Max_Min(int, int, int)':
F:\c++\Dev-CppPortable\Lab2.cpp:47: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp:48: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp:53: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp:54: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp:58: error: invalid types `int[int]' for array subscript
 
F:\c++\Dev-CppPortable\Lab2.cpp:59: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp:64: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp:65: error: invalid types `int[int]' for array subscript
F:\c++\Dev-CppPortable\Lab2.cpp: In function `int main()':
F:\c++\Dev-CppPortable\Lab2.cpp:93: error: invalid conversion from `int (*)[100]' to `int'
F:\c++\Dev-CppPortable\Lab2.cpp:93: error:   initializing argument 1 of `int vivod(int, int, int)'
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `while' before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `(' before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected primary-expression before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `)' before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `;' before '}' token
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.10.2012, 18:40
Ответы с готовыми решениями:

Исправить ошибки при компиляции кода
Ребята , был код с индексацией все работало отлично , переделал на указатели , не компилирует...

Исправить ошибки в коде
#include &lt;stdio.h&gt; #include &lt;malloc.h&gt; #define DEVICE_NAME_LEN 30 #define CUSTOMER_NAME_LEN 40...

Исправить ошибки в коде
написал код а он не работает можете посмотреть почему и если можно исправьте ошибки пожалуйста ...

Исправить ошибки в коде
#include&lt;conio.h&gt; #include&lt;stdio.h&gt; #include&lt;string.h&gt; int main() { struct uchenik {...

Исправить ошибки в коде
#include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; int main(){char ch; double d; system(&quot;chcp 1251...

7
Кот Ангенс
318 / 268 / 128
Регистрация: 24.05.2012
Сообщений: 629
05.10.2012, 19:59 2
В аргументах: int** mas;
1
snake5129x
1 / 1 / 0
Регистрация: 29.09.2012
Сообщений: 52
06.10.2012, 15:41  [ТС] 3
Большое спасибо щас попробую

Добавлено через 38 минут
Помогло остались только эти ошибки
XML
1
2
3
4
5
6
7
F:\c++\Dev-CppPortable\Lab2.cpp: In function `int main()':
F:\c++\Dev-CppPortable\Lab2.cpp:93: error: cannot convert `int (*)[100]' to `int**' for argument `1' to `int vivod(int**, int, int)'
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `while' before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `(' before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected primary-expression before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `)' before '}' token
F:\c++\Dev-CppPortable\Lab2.cpp:101: error: expected `;' before '}' token
Добавлено через 18 часов 6 минут
Разобрался осталась только одна
XML
1
93 F:\c++\Dev-CppPortable\Lab2.cpp cannot convert `int (*)[100]' to `int**' for argument `1' to `int vivod(int**, int, int)'
0
Vladoos
0 / 0 / 0
Регистрация: 30.12.2014
Сообщений: 12
30.12.2014, 16:25 4
Нужна помощь с программой нужно исправить ошибки при компилировании
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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
// C-string-drob.cpp: определяет точку входа для консольного приложения.
//
#include "stdafx.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <locale.h>                     //подключаем библиотеки
 
void write(char p,int i)                //функция для вывода названия соответветствующего разряда числа, в ней передаём само число p и его разряд i(от 1 до 6)
{
if ((i==0)||(i==3))                     //если первый или 4-й разряд т.е. сотни тысяч и сотни
    {
    if (p=='1') printf("сто");
    if (p=='2') printf("двести");
    if (p=='3') printf("триста");
    if (p=='4') printf("четыреста");
    if (p=='5') printf("пятьсот");
    if (p=='6') printf("шестьсот");
    if (p=='7') printf("семьсот");
    if (p=='8') printf("восемьсот");
    if (p=='9') printf("девятьсот");
    }
if ((i==1)||(i==4))                         //если второй и 5-й т.е. десятки тысяч и десятки
    {
    if (p=='1') printf("десять");
    if (p=='2') printf("двадцать");
    if (p=='3') printf("тридцать");
    if (p=='4') printf("сорок");
    if (p=='5') printf("пятьдесят");
    if (p=='6') printf("шестьдесят");
    if (p=='7') printf("семьдесят");
    if (p=='8') printf("восемьдесят");
    if (p=='9') printf("девяносто");
    }
if ((i==2)||(i==5))                         //если третий и 6-й т.е. тысячи и еденицы
    {
    if (p=='1') printf("одна");
    if (p=='2') printf("две");
    if (p=='3') printf("три");
    if (p=='4') printf("четыре");
    if (p=='5') printf("пять");
    if (p=='6') printf("шесть");
    if (p=='7') printf("семь");
    if (p=='8') printf("восемь");
    if (p=='9') printf("девять");
    }
}
 
void main()                     //основная функция
{
    setlocale(LC_ALL,"");       //русский язык
    FILE *in;               //переменная для фаила
    int k,i,j;              //переменные бегунки
    float c,z;              //знаменатель и числитель
    i=0;
    char *ch,*zn;           //переменные для знаменателя и числителя, а точнее для их записи
    char S[1024];           //переменная для считывания всего что находится в фаиле
    if ((in=fopen("C:\\String.txt", "r"))!=NULL)            //если есть фаил и он не пустой
    {
        while (!feof(in))                           //пока не конец фаила
        {
            fscanf(in,"%s", &S[i]);                 //считываем поэлементно из фаила в S
            i++;
        }
        fclose(in);                                 //закрываем фаил
    }
    else printf("No file!");
    i=strlen(S);                                    //вычисляем размер строки S т.е. то кол-во символом что было записано в фаиле
    for (j=0;j<i;j++)
        if (S[j]=='/') k=j;                         //ищем в строке S где находится знак / и запоминаем его номер
    ch=new char [k+1];                              //создаём соот. размера массивы char-ов для числителя и знаменателя
    zn=new char [i-k];
    strncpy(ch,S,k);                                //копируем первые k-символом , т.е. всё что до знака / в строку для числителя
    for (j=k+1;j<i;j++)
        zn[j-k-1]=S[j];                             //аналогично для знаменателя только то , что полсе знака деления
    c=atoi(ch);                                     //функция которая переводит строку в число
    z=atoi(zn);
    c=c/z;                                          //после перевода высчитываем результат деления
    printf("Само число:  %f\n", c);                 //выводим результат деления с 6-ю знаками после запятой
    c=1000000*c;                                    //домножаем на 1000000 чтобы потом при 
    k=c;                                            //пероде в int у нас исчезло всё что после 6-го знака
    char s[20];                 
    char *p;                                        //перменные для первода строки в число
    int l;          
    p=itoa(k,s,10);                                 //вызываем функцию в 10-ричной систем счисления
    j=strlen(p);                                    //вычисляем размер строки, в которую перевели результат
    l=j;
    for (i=1;i<6;i++)
        if (p[j-1]=='0')
            j--;                                    //в цикле смотрим чтобы не было нолей на конце, т.е. например 12300 преходит в 123
    if (k==1) printf("Одна миллионная");
    else if (k==10) printf("Одна стотысячная");
        else if (k==100) printf("Одна десятитысячная");
            else if (k==1000) printf("Одна тысячная");
                else if (k==10000) printf("Одна сотая");
                    else if (k==100000) printf("Одна десятая");
                        else if (k==1000000) printf("одна целая");                      //условия на проверку одной чего-то там
                        else                                                            //если результат деления не равен одной
                        {
                            if (j==6) k=0;                                              //то смотрим размер строки
                            if (j==5) k=1;                                          //в зависимости от него 
                            if (j==4) k=2;                                      //т.е. то сколько нулей посел запятой идёт прежде чем мы встрети первый ненулевой элемент
                            if (j==3) k=3;                                  //сколько нулей то на столько смещаем номер разряда в дальнейшем
                            if (j==2) k=4;
                            if (j==1) k=5;
                            for (i=0;i<(6-k);i++)                           //поразрядно учитывая нули  сразу после запятой смотрим числа
                        {
                            if ((((i+k)==1)||((i+k)==4))&&(p[i]==1)&&(p[i+1]!=0))           //это условие если у нас числа 11,12,13....,19 - т.к. у нас эо числа исключения при написании, для них не подхордит общий случай описания
                            {
                                if (p[i+1]=='1') {printf("одиннадцать");i++;}
                                if (p[i+1]=='2') {printf("двенадцать");i++;}
                                if (p[i+1]=='3') {printf("тринадцать");i++;}
                                if (p[i+1]=='4') {printf("четырнадцать");i++;}
                                if (p[i+1]=='5') {printf("пятьнадцать");i++;}
                                if (p[i+1]=='6') {printf("шестьнадцать");i++;}
                                if (p[i+1]=='7') {printf("семьнадцать");i++;}
                                if (p[i+1]=='8') {printf("восемьнадцать");i++;}
                                if (p[i+1]=='9') {printf("девятьнадцать");i++;}
                            }
                            else write(p[i],i+k);                   //если чисел исклбчений нет то вывзываем функцию написания
                            if (i==(2-k)) printf(" тысяч(и)");      //если прошли третий разряд то пишем что это были тысячи
                            printf(" ");                                //добавляем пробельчики
                        }
                            k=k-(6-l);                          //это для того чтобы понять сколько нулей сразу после запятой
                            if (k==5) printf("десятых");
                            if (k==4) printf("сотых");
                            if (k==3) printf("тысячных");
                            if (k==2) printf("десятитысячных");
                            if (k==1) printf("стотысячных");
                            if (k==0) printf("миллионных");
                        }
    printf("\n");
    system("pause");
}
Ошибки
Кликните здесь для просмотра всего текста
Ошибка 3 error C1010: непредвиденный конец файла во время поиска предкомпилированного заголовка. Возможно, вы забыли добавить директиву "#include "pch.h"" в источник. c:\documents\visual studio 2012\projects\app4\app4\app.xaml.cpp 136 1 App4
4 IntelliSense: не удается открыть источник файл "stdafx.h" c:\Documents\Visual Studio 2012\Projects\App4\App4\App.xaml.cpp 3 1 App4
5 IntelliSense: идентификатор "system" не определен c:\Documents\Visual Studio 2012\Projects\App4\App4\App.xaml.cpp 134 2 App4
0
30.12.2014, 16:25
zss
Модератор
Эксперт С++
8299 / 7369 / 4576
Регистрация: 18.12.2011
Сообщений: 19,502
Завершенные тесты: 1
30.12.2014, 19:39 5
Изничтожьте строку
#include "stdafx.h"
0
Qwertiy
823 / 631 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
30.12.2014, 21:53 6
snake5129x, а какое было задание? Что-то слишком странный код...
0
castorsky
1973 / 1076 / 87
Регистрация: 29.11.2013
Сообщений: 3,354
30.12.2014, 22:53 7
Цитата Сообщение от Qwertiy Посмотреть сообщение
Что-то слишком странный код
обычное спагетти

Не по теме:

кстати за такие программы я бы запрещал исполнителям постить во фриланс

0
Qwertiy
823 / 631 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
30.12.2014, 23:16 8
Цитата Сообщение от castorsky Посмотреть сообщение
обычное спагетти
Да не, там совсем странное что-то:
Код
if (k==1) printf("Одна миллионная");
    else if (k==10) printf("Одна стотысячная");
        else if (k==100) printf("Одна десятитысячная");
            else if (k==1000) printf("Одна тысячная");
                else if (k==10000) printf("Одна сотая");
                    else if (k==100000) printf("Одна десятая");
                        else if (k==1000000) printf("одна целая");
Почему всегда одна?
0
30.12.2014, 23:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.12.2014, 23:16

Исправить 3 ошибки в коде
Вот сам код #include &lt;stdio.h&gt; #include &lt;stdlib.h&gt; #include &lt;stdbool.h&gt; #include &quot;rec.h&quot; ...

Исправить ошибки в коде
int i,j int out; int out1; for(i=0;i&lt;750;i++) out=0; for(i=750;i&lt;800;i++) out=1;

Исправить ошибки в коде
Требования: - добавить комментарии к программному коду; - проверить правильность именования...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru