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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
#1

Открытие файла, найти недочеты в коде - C++

11.03.2014, 20:37. Просмотров 410. Ответов 16
Метки нет (Все метки)

Добрый вечер. Не получается запустить одну программу, думаю проблемы с файлами. буду очень благодраен за любую помощь

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
#include "stdafx.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    return 0;
}
 
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <iostream>
using namespace std;
 
int main()
 
{
    int *s;
    FILE *fin, *fout;                   //объявление файловых потоков
    int i,j, urv, n,q=0;                // объявления целочисленных переменных
    bool *b,f=1;
    fin = fopen("C:\100VIDEO\123.txt", "rt");       //открытие файлового потока
   fin = fopen("input1.txt", "rt");
    fscanf(fin, "%d", &n);              //считывание размерности матрицы из файла
    s= new int[n*n];                    //выделение памяти под массив матрицы
    b= new bool[n];                     //выделение памяти под массив
    for (i = 0; i < n; i ++)
        b[i]=0;
    for (i = 0; i < n; i ++)
        for (j = 0; j < n; j ++) {
            fscanf(fin, "%d", &s[n * i + j]);
        }
    fclose(fin);
 
for (urv=0;urv<n;urv++)
{   
    printf("N%d: ",urv);
 
    for (j = 0; j < n; j ++)
    {   int sum=0;
        for ( i = 0; i < n; i ++) 
    sum+=s[i*n+j]; //сумма столбца
        if ((sum==0)&&(!b[j]))
        {
            printf("%d ",j+1);
            b[j]=1;  
 
        }
 
    }
    for(q=0;q<n;q++)
    if(b[q])for ( i = 0; i < n; i ++) 
    s[q*n+i]=0; // обнуление строки
 
   printf("\n");
   
}       
 
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.03.2014, 20:37
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Открытие файла, найти недочеты в коде (C++):

Разность множеств: найти недочеты в коде - C++
Помогите разобраться с ошибкой в коде. Требуется сделать разность двух множеств: множество1 - множество2. Придумала два алгоритма,но не...

Замена слов в цикле. Найти недочеты в коде - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;cstring&gt; using namespace std; int main(){ char temp; cout &lt;&lt; &quot;vvedite...

Конструктор копирования, найти недочеты в программном коде - C++
Здравствуйте, посмотрите пожалуйста, тут у меня конструктор копирования. Я нашел какой-то пример, попробовал все переделать под свою...

Программа из учебника Прата. Структуры в многофайловом приложении. Исправить недочеты в коде - C++
Посмотрите, пожалуйста, что где исправить. int fill()-для заполнения массива all-для вывода суммы продаж за 4 квартала первый: ...

Ошибка при открытие CD-ROW в коде - C++
Компилятор выдает ошибку при компилирование в это коде: Код: #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;mmsystem.h&gt; ...

как может корректно выполняющийся оператор >> (чтение из текстового файла) негативно влиять на открытие другого файла? - C++
Друзья! Создадим два текстовых файла, f_0.txt и f_1.txt и что-нибудь в них запизаем, например в первый запихаем 1234 а во второй 5678 и...

16
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.03.2014, 06:24 #2
Цитата Сообщение от avatar1870 Посмотреть сообщение
C++
1
2
fin = fopen("C:\100VIDEO\123.txt", "rt"); * * * //открытие файлового потока
fin = fopen("input1.txt", "rt");
Открытие файлов, особенно для чтения, всегда проверять нужно. Обратные слеши, в коде, в путях, нужно двойные писать:
C++
1
2
if ((fin = fopen("C:\\100VIDEO\\123.txt", "rt")) == NULL)
    printf("Error!\n");
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
12.03.2014, 20:12  [ТС] #3
Всё равно не хочет запускаться
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.03.2014, 20:37 #4
Цитата Сообщение от avatar1870 Посмотреть сообщение
Всё равно не хочет запускаться
Код, который пробуете выложите. На экран что-нибудь выводит? Опишите: что значит "не хочет запускаться"?

Добавлено через 7 минут
Код компилируется? Верхнюю main() уберите.
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
12.03.2014, 22:57  [ТС] #5
Код

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
// disc_03.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
 
 
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main()
 
{
    int *s;
    FILE *fin, *fout;                   //объявление файловых потоков
    int i,j, urv, n,q=0;                // объявления целочисленных переменных
    bool *b,f=1;
    if ((fin = fopen("C:\\100VIDEO\\123.txt", "rt")) == NULL)
    printf("Error!\n"); //открытие файлового потока
     fin = fopen("input1.txt", "rt");
    scanf(fin, "%d", &n);               //считывание размерности матрицы из файла
    s= new int[n*n];                    //выделение памяти под массив матрицы
    b= new bool[n];                     //выделение памяти под массив
    for (i = 0; i < n; i ++)
        b[i]=0;
    for (i = 0; i < n; i ++)
        for (j = 0; j < n; j ++) {
            fscanf(fin, "%d", &s[n * i + j]);
        }
    fclose(fin);
 
for (urv=0;urv<n;urv++)
{   
    printf("N%d: ",urv);
 
    for (j = 0; j < n; j ++)
    {   int sum=0;
        for ( i = 0; i < n; i ++) 
    sum+=s[i*n+j]; //сумма столбца
        if ((sum==0)&&(!b[j]))
        {
            printf("%d ",j+1);
            b[j]=1;  
 
        }
 
    }
    for(q=0;q<n;q++)
    if(b[q])for ( i = 0; i < n; i ++) 
    s[q*n+i]=0; // обнуление строки
 
   printf("\n");
   
}       
 
    return 0;
}
0
Миниатюры
Открытие файла, найти недочеты в коде  
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.03.2014, 23:10 #6
Зачем вам два потока для чтения?

Добавлено через 54 секунды
Компилятор пишет, какая ошибка. Что ещё нужно?
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
12.03.2014, 23:19  [ТС] #7
Поставил fopen_s всё равно не работает
0
Корд
8 / 8 / 0
Регистрация: 22.03.2013
Сообщений: 209
12.03.2014, 23:26 #8
C++
1
 scanf(fin, "%d", &n);
почему scanf?
Для чтения из файла используется fscanf.
C++
1
 fscanf(fin, "%d", &n);
Компилятор и показывает эту ошибку.
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
12.03.2014, 23:41  [ТС] #9
Я извиняюсь, что беспокою но не пашет онаа(((
0
Миниатюры
Открытие файла, найти недочеты в коде  
Корд
8 / 8 / 0
Регистрация: 22.03.2013
Сообщений: 209
12.03.2014, 23:44 #10
avatar1870,
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 "stdafx.h"
 
 
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
int main()
 
{
    int *s;
    FILE *fin, *fout;                   //объявление файловых потоков
    int i,j, urv, n,q=0;                // объявления целочисленных переменных
    bool *b,f=1;
    if ((fin = fopen("C:\\100VIDEO\\123.txt", "r+")) == NULL)
    printf("Error!\n"); //открытие файлового потока
     fin = fopen("input1.txt", "r+");
    fscanf(fin, "%d", &n);               //считывание размерности матрицы из файла
    s= new int[n*n];                    //выделение памяти под массив матрицы
    b= new bool[n];                     //выделение памяти под массив
    for (i = 0; i < n; i ++)
        b[i]=0;
    for (i = 0; i < n; i ++)
        for (j = 0; j < n; j ++) {
            fscanf(fin, "%d", &s[n * i + j]);
        }
    fclose(fin);
 
for (urv=0;urv<n;urv++)
{   
    printf("N%d: ",urv);
 
    for (j = 0; j < n; j ++)
    {   int sum=0;
        for ( i = 0; i < n; i ++) 
    sum+=s[i*n+j]; //сумма столбца
        if ((sum==0)&&(!b[j]))
        {
            printf("%d ",j+1);
            b[j]=1;  
 
        }
 
    }
    for(q=0;q<n;q++)
    if(b[q])for ( i = 0; i < n; i ++) 
    s[q*n+i]=0; // обнуление строки
 
   printf("\n");
   
}       
 
    return 0;
}
Пробуйте.
0
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
12.03.2014, 23:52 #11

Не по теме:

Как в пустоту пишу:


???
Цитата Сообщение от alsav22 Посмотреть сообщение
Зачем вам два потока для чтения?
0
Корд
8 / 8 / 0
Регистрация: 22.03.2013
Сообщений: 209
12.03.2014, 23:59 #12
alsav22,
Только, что присмотрелся к его коду. Обратил внимание только на его Error
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
13.03.2014, 00:00  [ТС] #13
ну ё-маё блин(
0
Миниатюры
Открытие файла, найти недочеты в коде  
alsav22
5425 / 4820 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
13.03.2014, 00:12 #14
Цитата Сообщение от avatar1870 Посмотреть сообщение
ну ё-маё блин(
???
Цитата Сообщение от alsav22 Посмотреть сообщение
Зачем вам два потока для чтения?
Второго файла нет или не там лежит.

Добавлено через 55 секунд
Цитата Сообщение от Корд Посмотреть сообщение
Обратил внимание только на его Error
Это я у ТС спрашиваю про два потока.
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
13.03.2014, 00:14  [ТС] #15
Убрал строчку со вторым файлом
0
13.03.2014, 00:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.03.2014, 00:14
Привет! Вот еще темы с ответами:

Открытие файла - C++
Здравствуйте, интересует вопрос, можно ли сделать так, чтобы программа открывала нужный файл (наприм. картинку), если можно то как?

открытие файла - C++
ifstream is; cout&lt;&lt;endl&lt;&lt;&quot;Name file: &quot;; cin&gt;&gt;name; is.open(name, ios::binary); if(!is.is_open()) { ...

Открытие файла - C++
У меня есть файл в котором сначала хранится количество наименований файлов,а потом названия файлов 2! 1.txt! 2.txt! ! используются...

Открытие файла на C++ - C++
Здравствуйте. Появился вопрос, если, допустим, писать батник, то для открытия файла нужно писать start (или open) &quot;Путь к файлу&quot;... А...


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

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

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