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

Дана строка, содержащая полное имя файла. Выделить из этой строки название первого каталога

29.02.2016, 23:20. Просмотров 1091. Ответов 1
Метки нет (Все метки)

Дана строка, содержащая полное имя файла. Выделить из этой строки название первого каталога (без символа ""). Если файл содержится в корневом каталоге, то вывести символ "". на Си. Спасибо!
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.02.2016, 23:20
Ответы с готовыми решениями:

Выделить из строки, содержащей полное имя файла, название последнего каталога (без символов "\")
Дана строка, содержащая полное имя файла. Выделить из строки название...

Выделить из строки название первого каталога
Дана строка, содержащая полное имя файла, то есть имя диска, список каталогов...

Выделить из строки название последнего каталога
Разработать программу. Максимальная длина строк не менее 80 символов. При...

Выделить из строки название последнего каталога
Дана строка, содержащая полное имя файла. Выделить из строки название...

Дана строка символов до точки. Записать слова этой строки в обратном порядке
Дана строка символов до точки. Записать слова этой строки в обратном порядке...

1
LFC
730 / 535 / 416
Регистрация: 17.09.2015
Сообщений: 1,598
01.03.2016, 09:53 2
Лучший ответ Сообщение было отмечено anton64209 как решение

Решение

anton64209,
Если "первый каталог"-это каталог в котором непосредственно находится файл,
и вот эту фразу из задания
Цитата Сообщение от anton64209 Посмотреть сообщение
Если файл содержится в корневом каталоге, то вывести символ ""
я понял как "вывести название корневого каталога в кавычках",если так,то вот решение:
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
#include <stdio.h>
 
int main()
{
    int k, n = 0, i = 0;
    char s[80];
    printf("Type a file address:");
    gets(s);
    while(s[i]){
        if(s[i] == '\\')
            ++n;
        ++i;
    }
    k = n;
    i = 0;
    n = 0;
    if(k == 1){
        printf(""");
        while(s[i]){
        if(s[i] == '\\' && n == k - 1)break;
        printf("%c", s[i]);
        ++i;
        }
        printf(""");
        return 1;
    }
 
    while(s[i]){
        if(s[i] == '\\' && n == k - 1)break;
        if(n == k - 1)
            printf("%c", s[i]);
        if(s[i] == '\\')
            ++n;
        ++i;
        }
    return 0;
}
Добавлено через 15 минут
почему-то в строках 18 и 24 не пропечатался обратный слэш
должно быть:
printf(""");
и там и там

Добавлено через 9 минут
опять не печатается)))
в общем,в скобках,после первого значка кавычек должен стоять \ , а после него еще два значка кавычек, т.е. \ " внутри кавычек(без пробела))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.03.2016, 09:53

Выделить из строки с полным путем к файлу только имя файла
Дана строка, содержащая полное имя файла, то есть имя диска, список каталогов...

Дана строка, содержащая число в десятичной
Дана строка, содержащая число в десятичной системе исчисления. Преобразовать...

Дана строка, содержащая пробелы. Найдите, сколько в ней слов
Дана строка, содержащая пробелы. Найдите, сколько в ней слов (слово – это...


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

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

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