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

Внешний файл и дин.память - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Время, через которое встретятся два тела http://www.cyberforum.ru/cpp-beginners/thread170676.html
Определить время, через которое встретятся два тела, равноускоренно движущиеся навстречу друг другу, если известны их начальные скорости, ускорения и начальное расстояние между ними.
C++ Написать программу нахождения суммы чисел по правилу (n-нечетно): a1+a3+a5+…+an. Написать программу нахождения суммы чисел по правилу (n-нечетно): a1+a3+a5+…+an. http://www.cyberforum.ru/cpp-beginners/thread170675.html
C++ В матрице удалить строки, в которых встречается 3 и более одинаковых элементов
Задана матрица размером m на n. Удалить те строки в которых встречается 3 и более подряд идуших элементов.
C++ Перевод из одной системы счисления в другую
Осуществить перевод введенного с клавиатуры числа в двоичной, шестнадцатерич-ной, восьмеричной или десятичной системах счисления в другие системы счисления. Система счисления введенного с клавиатуры числа определяется литерой в конце числа (B – двоичная, H – шестнадцатеричная, O – восьмеричная, D – десятичная). может у кого то есть какие то наброски?например ,перевод из любой системы счисления...
C++ Сравнение чисел в трёхзначном числе http://www.cyberforum.ru/cpp-beginners/thread170653.html
Нужно определить какая из цифр в трёхзначном числе больше первая или последняя?
C++ как сделать аналог split(с#) на с++ помогите разбить строковую ячейку содержащую значение "4 8" на 2 элемента в c# это делает функция split подробнее

Показать сообщение отдельно
fasked
Эксперт С++
4933 / 2513 / 180
Регистрация: 07.10.2009
Сообщений: 4,311
Записей в блоге: 1
30.09.2010, 17:56     Внешний файл и дин.память
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
#include <stdlib.h>
#include <stdio.h>
 
int main()
{
    FILE *pfile = NULL;
    int *arr = NULL;
    int data = 0;
    int size = 0;
    
    int start = 0;
    int end = 0;
    
    int i = 0;
    
    if((pfile = fopen("file.txt", "rb")) == NULL) {
        fprintf(stderr, "can't open file \n");
        exit(1);
    }
    
    while(fscanf(pfile, "%d", &data) != EOF) 
        ++size;
    
    if((arr = (int*)malloc(sizeof(int) * size)) == NULL) {
        fprintf(stderr, "can't allocate memory \n");
        fclose(pfile);
        exit(1);
    }
    
    rewind(pfile);
    for(i = 0; fscanf(pfile, "%d", &arr[i]) != EOF; ++i);
    
    fclose(pfile);
    
    for(i = 0; i < size; ++i)
        printf("%d ", arr[i]);
    printf("\n");
    
    for(i = 0; arr[i] != 0 && i < size; ++i);
    start = ++i;
 
    for( ; arr[i] != 0 && i < size; ++i);
    end = i;
    
    for(i = start; i < end; ++i)
        arr[i] = 1;
 
    for(i = 0; i < size; ++i)
        printf("%d ", arr[i]);
    printf("\n");
    
    free(arr);
    
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru