Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Barmaleyka
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 22
1

Как правильно выставить метки

15.12.2017, 14:21. Просмотров 78. Ответов 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
#include <stdio.h> 
#include <stdlib.h> 
#include <string.h> 
#include <locale.h> 
 
change(char ss1[1024], char ss2[1024]) 
{ 
int i=0; 
int b=1; 
int word_n=1; 
ss2[0]=0; 
for(i=0;i<strlen(ss1);i++) 
{ 
if ((b==1) && (ss1[i]==32)) 
{ 
word_n++; b=0; 
} 
if ((b==0) && (ss1[i]!=32)) b=1; 
if ((b==1 && word_n%2==1) || (ss1[i]==32)) 
{ 
ss2[strlen(ss2)+1]=0; ss2[strlen(ss2)]=ss1[i]; 
} 
} 
if(word_n%2==1) strcpy(ss2,ss1); 
else 
{ 
ss2[strlen(ss2)+1]=0; 
ss2[strlen(ss2)]=10; 
}} 
 
main () 
{ 
setlocale(LC_ALL, "Rus"); 
char s1[1024],s2[1024],fname[200],s[1024]; 
FILE *f1,*f2; 
m:printf("Введите имя исходного файла:\n"); 
gets(fname); 
f1=fopen(fname,"rt"); 
if(f1==NULL) 
{ 
printf("Файл не найден!\n");goto m; 
} 
printf("Введите имя получаемого файла:\n"); 
gets(fname); 
f2=fopen(fname,"wt"); 
while(feof(f1)==0) 
{ 
if(fgets(s1,1024,f1)!=NULL) 
{ 
change(s1,s2); 
fprintf(f2,s2); 
} 
} 
fclose(f1); 
fclose(f2); 
}
Интересуют вот эти строчки: change(char ss1[1024], char ss2[1024]) и ss2[strlen(ss2)]=10; .В первой строчке как сделать вместо динамических массивов метки, а во второй почему =10? Всем спасибо, кто не откажет в помощи.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2017, 14:21
Ответы с готовыми решениями:

SetConsoleTextAttribute | Как выставить свой цвет
Доброго времени суток! Хотелось бы узнать возможно выставлять свой цвет в...

Как по условию выйти из метки case
Подскажите такое дело Например есть автомат MODE= MODE_2; for(;;) { switch...

Как выставить failbit внутри тела перегрузки операторов ввода/вывода
Доброй ночи всем! Есть вот такой код main: for(Sales_item item; std::cin &gt;&gt;...

Как правильно вписать функцию в h-файл и правильно её отразить в основной функции?
Создать внешнюю библиотеку, в которой написана функция вывода символьного ...

Как правильно унаследовать TPoint2D от TPoint3D/ Правильно ли наследовать? ООП
Два пользовательских класса: Точка в 2D пространстве и точка в 3D пространстве....

2
nmcf
6414 / 5674 / 2583
Регистрация: 14.04.2014
Сообщений: 24,016
15.12.2017, 14:52 2
C++
1
2
ss2[strlen(ss2)] = 10; // добавление \n в конец строки.
ss2[strlen(ss2)] = '\n'; // так надо писать, чтобы было понятно
Цитата Сообщение от Barmaleyka Посмотреть сообщение
вместо динамических массивов метки
При чём тут метки?
0
Barmaleyka
0 / 0 / 0
Регистрация: 13.10.2013
Сообщений: 22
15.12.2017, 17:54  [ТС] 3
препод сказал, что вместо динамических массивов должны быть какие то метки
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2017, 17:54

Метки
Есть такой вопрос, как курсор к коде переставить в то место куда мне надо (в...

Метки
Есть ли команда в С++ наподобие команды в паскале label 1; 1:, т.е. метки. Если...

free и метки
Здравствуйте, господа. Никак не могу найти ответы на след. вопросы: 1)....


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

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

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