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

Копирование строчек по критерию отсутсвия буквы. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Файлы http://www.cyberforum.ru/cpp-beginners/thread74134.html
1. Задано 3 файла, состоящие из 7 чисел каждый. Сформировать новый файл из чисел, принадлежащим одновременно всем трем файлам...помогите,пожалуйста, тему файлы не понимаю....
C++ Выравнивание строки Помогите пожалуйста написать функцию, которая выравнивает строку по левому краю до заданной длинны. http://www.cyberforum.ru/cpp-beginners/thread74115.html
посмотрите код C++
Добавлено через 5 минут и еще, не подскажнте, как сделать так, чтоб работал великий и могучий)) русский язык
C++ Передача двумерного массива в функцию
Возможно это уже и естьна форуме, но как передать из одной функции в другую двумерный массив? (статическое распределение адресов)
C++ Динамическая структура.С. Срочно!! http://www.cyberforum.ru/cpp-beginners/thread74106.html
Добрый день. Нужно строчно написать программку в С, используя динамическую структуру. Заранее благодарю. Задание такое: В текстовом файле есть список студентов. Структура строчный данных : фамилия, имя, дата рождения и есть оценки студентческой книжки(до конца сточки, не больше чем 25 оценок). Нужно сформировать список студентов, в котором будут такие данные: фамилия, имя,ВОЗРАСТ,СРЕДНИЙ...
C++ Поместить в список строки Подскажите или покажите на примере как поместить в список несколько строк...? подробнее

Показать сообщение отдельно
Sergey_O
5 / 5 / 1
Регистрация: 09.12.2009
Сообщений: 65

Копирование строчек по критерию отсутсвия буквы. - C++

14.12.2009, 00:20. Просмотров 367. Ответов 2
Метки (Все метки)

Добрый вечер. Очередная проблема и вновь обращаюсь к этому форуму)))
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
136
137
138
139
140
141
142
143
144
#include <iostream>
#include <stdio.h>
using namespace std;
int n1,n2;
 
 
 
struct STROKI{char stroka[26];} stroki[100];
int kolstr; int num=0, num2=0;
 
 
void rus()
 
{
    setlocale( LC_ALL,"Russian" );
}
 
int readfile1()
{
    FILE *file;
    file = fopen("f1.txt", "r+");
    if (file == NULL) return 0;
    for(int i=0; fscanf(file,"%s",&stroki[i].stroka)==1;i++)
    {
        num++;
    }
    
    fclose(file);
    return 1;
}
 
 
 
void printfile1()
{
    for (int i=0;i<num;i++)
    {
        printf ("\n%s",&stroki[i].stroka);
    }
}
int readfile2()
{
    FILE *file2;
    file2 = fopen("f2.txt", "r+");
    if (file2 == NULL) return 0;
    for(int i=0; fscanf(file2,"%s",&stroki[i].stroka)==1;i++)
    {
        num2++;
    }
    
    fclose(file2);
    return 1;
}
 
void printfile2()
{
    for (int i=0;i<num2;i++)
    {
        printf ("\n%s",&stroki[i].stroka);
    }
}
int copy()
{
    FILE *file2;
    file2 = fopen("f2.txt", "w");
    int kol_a;
    char bukva[]="A";
    if (file2 == NULL) return 0;
    for(int i=n1;i<=n2;i++)
    {
        kol_a=0;
        for(int m=0;m<26;m++)
        {
            if(strcmp(&stroki[i].stroka[m],bukva))
            {}
            else kol_a++;
        }
        if (kol_a==0)
        {
              fprintf(file2, "%s\n", &stroki[i].stroka);
              num2++;
        }
    }
    fclose(file2);
    return 1;
}
void zaprosn1n2()
{
    cout << "\nВведите промежуок для рассмотрения строк" << endl;
    cin >> n1 >> n2;
}
//void poisk()
//{
//  char glassnie_a[]="A";
//    char glassnie_o[]="O";
//  char glassnie_e[]="E";
//    char glassnie_i[]="I";
//  int nomer_stroki=0,kol_vo=0;
//  for(int i=0;i<num2;i++)
//      {for(int m=0;m<26;m++)
//              {
//                  if(strcmp(&stroki[i].stroka[m],glassnie_a))
//                         {}
//                 else 
//                        {
//                          kol_vo++;
//                          nomer_stroki=i;
//                          cout << "\n" << kol_vo << " " << nomer_stroki << endl;
//                        }
//                  if(strcmp(&stroki[i].stroka[m],glassnie_o))
//                         {}
//                 else 
//                        {
//                          kol_vo++;
//                          nomer_stroki=i;
//                          cout << "\n" << kol_vo << " " << nomer_stroki << endl;
//                        }
//                  if(strcmp(&stroki[i].stroka[m],glassnie_e))
//                         {}
//                 else 
//                        {
//                          kol_vo++;
//                          nomer_stroki=i;
//                          cout << "\n" << kol_vo << " " << nomer_stroki << endl;
//                        }
//            
//  }
//  }
//  cout << "\n" << nomer_stroki;
//}
 
 
void  main()
{
    rus();
    readfile1();
    printfile1();
    zaprosn1n2();
    copy();
    readfile2();
    printfile2();
    //poisk();
 
}
Суть такая: в функции copy я пытаюсь скопировать все строчки без буквы А в другой файл.
в функции poisk пытаюсь найти строчку с наибольшим числом гласных букв.

проблема, видимо в том, что я неверно задаю условие, возможно неверно определяю переменную, с которой потом сравниваю элементы строки, может что-то ещё. Подозреваю, что проблема в обеих функциях одна и та же.

Буду благодарен за любые подсказки.

Добавлено через 1 час 57 минут
блин, уже все варианты перебрал, которые пришли в голову(((
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru