13 / 8 / 1
Регистрация: 12.01.2010
Сообщений: 106
|
|
1 | |
Вопросы по C++10.10.2011, 20:26. Показов 1742. Ответов 16
Метки нет (Все метки)
Всем привет!
У меня появилось несколько вопросов по C++, был бы рад, если бы Вы помогли бы мне хотя бы из одним из них. 1) Как узнать количество строк в файле; 2) Как узнать количество символов в файле; 3) Как узнать количество символов в отдельной строке файла; 4) Как считать каждую строку в отдельный массив символов (char); 5) Есть строка с N-ым количемством чисел, записаных через пробел. Нужно узнать их количество, создать массив с таким же количеством элементов и скопировать эти числа в получившийся массив; 6) Как узнать количесво цифр в числе; 7) Как узнать сумму цифр в числе. Заранее большое спасибо!
0
|
10.10.2011, 20:26 | |
Ответы с готовыми решениями:
16
Когда вопросы кончаются, сделать кнопку неактивной и вывести сообщение о том, что вопросы кончились Qt Вопросы Вопросы.. Вопросы по БД |
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
|
10.10.2011, 20:30 | 2 |
посчитать вхождения '\n'
переместится в конец файла, а потом посмотреть чему равен seekg считать символы до вхождения '\n' getline в помощь
1
|
13 / 8 / 1
Регистрация: 12.01.2010
Сообщений: 106
|
|
10.10.2011, 20:34 [ТС] | 3 |
Gepar, спасибо за помощь, с четвёртым разобрался, а можешь привести примеры кода с первого по третье?
0
|
11.10.2011, 00:21 | 4 | |||||
2
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
|
11.10.2011, 05:45 | 5 |
Сообщение было отмечено как решение
Решение
Сообщение от zago-vlad
Сообщение от xAtom
ftell() для текстовых потоков возвращает индикатор файловой позиции (какое-то число, которое равно чему-то)
3
|
13 / 8 / 1
Регистрация: 12.01.2010
Сообщений: 106
|
|
11.10.2011, 08:32 [ТС] | 6 |
Спасибо! С вопросами 1-4 разобрался!
А как быть с вопросами 5-7?
0
|
4866 / 3288 / 468
Регистрация: 10.12.2008
Сообщений: 10,570
|
||||||||||||||||
11.10.2011, 09:32 | 7 | |||||||||||||||
6)
Код
[guest@localhost tests]$ .ansi t.c -o t [guest@localhost tests]$ ./t 5 0 3 5 0 3 [guest@localhost tests]$ Добавлено через 10 минут 7)
Код
[guest@localhost tests]$ .ansi t.c -o t [guest@localhost tests]$ ./t 15 0 6 -15 0 -6 [guest@localhost tests]$ 5)
Код
[guest@localhost tests]$ .ansi t.c -o t [guest@localhost tests]$ ./t 4 1234 5678 91011 12 [guest@localhost tests]$
1
|
13 / 8 / 1
Регистрация: 12.01.2010
Сообщений: 106
|
|
11.10.2011, 10:22 [ТС] | 8 |
А как быть с пятым?
0
|
1186 / 542 / 78
Регистрация: 01.07.2009
Сообщений: 3,517
|
||||||
11.10.2011, 11:00 | 10 | |||||
Считывайте по символу и проверяйте является ли он цифрой, если точно знаете что они идут через пробел то проверяйте каждый второй символ.
Хотя это некрасивый вариант и можно схитрить: узнать количество символов в строке, разделить число на 2 и создать массив такого размера куда при первом проходе строки и помещать уже цифры
1
|
11.10.2011, 13:27 | 11 |
А как понимать это выражение в fscanf:
Звёздочка - понятно, прочтённый символ никуда не сохраняется. А что такое [^\n] ? Добавлено через 4 минуты Gepar, в числе-то может быть не одна цифра. + ещё floating-point, вроде 12.4 или 4e8
0
|
13 / 8 / 1
Регистрация: 12.01.2010
Сообщений: 106
|
|
11.10.2011, 18:40 [ТС] | 12 |
Сорри, просматривал тему когда ты еще не добавил решения пятого, а потом зашел обратно через полчаса и, не заметив то, что ты написал решение пятого, написал:
"А как быть с пятым?" Добавлено через 7 минут И еще один вопрос: как узнать самое большое число в массиве?
0
|
11.10.2011, 19:45 | 14 | ||||||||||
[^\n] - считать последовательность символов, пока не встретиться '\n', поскольку перед квадратными скобками звездочка, значит игнорировать эти символы. %c - считываем сам '\n'.
Все вместе:
Я обычно вместо gets() пишу такую конструкцию:
Не по теме: Хотя конечно это просто "чтоб запутать потенциального противника":D
2
|
11.10.2011, 19:55 | 17 |
Угу, оно, спасибо.
0
|
11.10.2011, 19:55 | |
11.10.2011, 19:55 | |
Помогаю со студенческими работами здесь
17
Вопросы Вопросы по с/с++ Вопросы :) Вопросы по C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |