Войти
Регистрация
Спроси ai-bota
В
Все
У
Українська література
Г
Геометрия
Д
Другие предметы
Э
Экономика
Г
География
О
ОБЖ
М
Математика
М
МХК
Х
Химия
Қ
Қазақ тiлi
Л
Литература
У
Українська мова
О
Обществознание
Ф
Физика
А
Английский язык
А
Алгебра
И
История
Б
Беларуская мова
Б
Биология
М
Музыка
П
Право
И
Информатика
П
Психология
В
Видео-ответы
Н
Немецкий язык
Ф
Французский язык
О
Окружающий мир
Р
Русский язык
Показать больше
Показать меньше
avaitekhovich
10.02.2020 21:47 •
Информатика
Подсчитать количество строк и определить строку максимальной длины и вывести на экран количество строк в файле, самую длинную строку и ее длину. на си.
Ответ:
135Солнышко135
03.10.2020 19:27
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>
//имя файла
#define FileName "file.txt"
//Максимально возможная длина строки (выделение памяти)
#define l_str 255
int main() {
setlocale(LC_ALL, "rus");
FILE *t = fopen(FileName, "r");
if (t == NULL) {
printf("Файл не найден\n");
}
else {
//Текущая строка
char *s = (char*) malloc(sizeof(char) * l_str);
//Максимальная строка
char *s_max = (char*)malloc(sizeof(char) * l_str);
//Кол-во строк
int k_str = 0;
//Максимальная длина строки
int l_max = 0;
while (!feof(t)) {
fgets(s, l_str, t);
//Длина текущей строки
int l = strlen(s);
if (l > l_max)
{ l_max = l;
strcpy(s_max, s);
} k_str++;
}
//Вывод результата:
printf("Строк в файле: %d\n", k_str);
printf("Максимальная строка, длинной %d:\n", l_max-1);
puts(s_max);
}
fclose(t);
printf("\n");
system("pause");
return 0;
}
0,0
(0 оценок)
Популярные вопросы: Информатика
nastyaignatova3
24.07.2020 22:24
1. Каждая новая книга в Excel по умолчанию обычно содержит ... рабочих листа(ов). Всего она может иметь до ... листов. 2. Для чего главным образом в Excel используются команды...
891447819danilDanil
13.07.2021 08:40
Всемье 4 брата- вася игорь дима толя. вася выше игоря но ниже димы. толя ниже игоря . кто самый высокий и кто самый маленький по росту представь в виде диаграммы роста вписать...
danyabro1
15.05.2020 01:14
Как мне найти 12% от 300 узнать ответ...
originalMontague
15.05.2020 01:14
Put the verbs in brackets into the correct tense. Use the past simple, past continuous or past perfect. 0 The dog bit (bite) the little girl and she started to cry. 1 When I...
nikzyryanov02
08.12.2021 06:49
Контрольные задания выполняйте по пяти данным ниже предложениям 1.Мама с получал ли я сегодня отметки. 2.«Сегодня холодно,» - задумчиво заметил Борис. 3.Он сказал: «Моя печаль...
RoseIce
08.12.2021 06:49
Какая передача применяется, если мяч летит высоко, и как нужно приземляться после передачи в прыжке в волейболе?...
ПОМОГИТЕ1111121
29.05.2021 12:19
1 Первичноводные(виды,у которых все предки жили в воде) 2 вторичноводные(виды, имеющие сухопутных предков. рак,звезда,дельфин,крокодил ...
Igarexaaa1
29.05.2021 12:19
Решите уравнение: х 2 + 12 х = - 35....
jurakos9
08.12.2021 06:49
Почему главный герой новеллы улыбка --ребёнок...
noname955
25.04.2021 20:16
5. Вставьте пропущенное слово. Вулкан – это ... , в верхней части которой есть углубление - ... . Самый крупный вулкан нашей страны и Евразии называется ... . Ученые, которые...
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку
О НАС
О нас
Блог
Карьера
Условия пользования
Авторское право
Политика конфиденциальности
Политика использования файлов cookie
Предпочтения cookie-файлов
СООБЩЕСТВО
Сообщество
Для школ
Родителям
Кодекс чести
Правила сообщества
Insights
Стань помощником
ПОМОЩЬ
Зарегистрируйся
Центр помощи
Центр безопасности
Договор о конфиденциальности полученной информации
App
Начни делиться знаниями
Вход
Регистрация
Что ты хочешь узнать?
#include <stdlib.h>
#include <locale.h>
#include <string.h>
//имя файла
#define FileName "file.txt"
//Максимально возможная длина строки (выделение памяти)
#define l_str 255
int main() {
setlocale(LC_ALL, "rus");
FILE *t = fopen(FileName, "r");
if (t == NULL) {
printf("Файл не найден\n");
}
else {
//Текущая строка
char *s = (char*) malloc(sizeof(char) * l_str);
//Максимальная строка
char *s_max = (char*)malloc(sizeof(char) * l_str);
//Кол-во строк
int k_str = 0;
//Максимальная длина строки
int l_max = 0;
while (!feof(t)) {
fgets(s, l_str, t);
//Длина текущей строки
int l = strlen(s);
if (l > l_max)
{ l_max = l;
strcpy(s_max, s);
} k_str++;
}
//Вывод результата:
printf("Строк в файле: %d\n", k_str);
printf("Максимальная строка, длинной %d:\n", l_max-1);
puts(s_max);
}
fclose(t);
printf("\n");
system("pause");
return 0;
}