Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.73/48: Рейтинг темы: голосов - 48, средняя оценка - 4.73
9 / 9 / 2
Регистрация: 23.09.2012
Сообщений: 150
1

Строка символов. Поменять местами первое и последнее слово в строке

22.11.2012, 01:57. Показов 8663. Ответов 8
Метки нет (Все метки)

Есть задание: Дана строка символов. Поменять местами первое и последнее слово в строке.
На сколько я понимаю, то должен быть массив символов. И менять слова как только дойдет до пробела. а вот как это все записать я не знаю
0
Заказывайте контрольные, курсовые и дипломы здесь.
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.11.2012, 01:57
Ответы с готовыми решениями:

Поменять местами первое и последнее слово в строке без использования указателей
Как я понял нужно использовать пробел как разделитель слов, но как это реализовать я не знаю.

Определить в K-ой строке файла fin.txt первое и последнее слово, поменять их местами
Дано: в текстовом файле fin.txt находится текст на русском языке. С клавиатуры вводится число K....

В каждой строке исходного файла поменять местами первое и последнее слово, и записать в выходной файл
Написать программу, выполняющую чтение текстового файла “input.in” и выполняющую его преобразование...

Дана строка символов Х. Поменять местами первое и последнее слово
Помогите ,очень прошу:cry:Заранее спасибо):)(Только через Паскаль)

8
8 / 8 / 4
Регистрация: 20.06.2012
Сообщений: 225
22.11.2012, 02:24 2
strtok разбивает на лексемы (если взять за символ разбиения пробел то получатся слова)... поменять местами можно копируя в новую строку.. или поиграться с этой
0
9 / 9 / 2
Регистрация: 23.09.2012
Сообщений: 150
22.11.2012, 19:01  [ТС] 3
и каааак это все в кодом записать?

Добавлено через 3 часа 0 минут
мужикииииииииии
0
5 / 5 / 3
Регистрация: 25.09.2012
Сообщений: 23
22.11.2012, 20:25 4
программа написана для замены слов. номера слов вводит пользователь. по колдуй дальше сам
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
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
 
int main(int argc, char *argv[])
{
    char str[101];  
    printf("Vvedite predlogenie: \n"); 
    gets(str);
    int s=1;
    for (int i=0;str[i]!=0;i++)
        if (str[i]==' ')
            s++;
    char *ptr=strtok(str,"\t ");
    char arr[s][16];
    for (int i=0;ptr!=NULL;i++)
    {
        strcpy(arr[i],ptr);
        ptr=strtok(NULL,"\t ");
    }
    int i,j;
    printf("Vvedite kakie slova nado pomenyat': \n");
    scanf ("%d %d",&i,&j);
    i--;
    j--;
    if ((i>s)||(j>s))
    {
        printf("Error!!Netu stol'ko slov v predlojenii\n");
        return 0;
    }
    char c[16];
    strcpy(c,arr[i]);
    strcpy(arr[i],arr[j]);
    strcpy(arr[j],c);
    printf("Rezul'tat: \n");
    for(int k=0;k<s;k++)
        printf("%s ",arr[k]);
    printf("\n");
 
 
 
 
    return 0;
}
1
7 / 7 / 3
Регистрация: 29.01.2012
Сообщений: 25
25.11.2012, 20:26 5
ваш код, переведенный на С )
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
#include<stdio.h>
#include<stdlib.h>
#include<ctype.h>
#include<string.h>
int main()
{
    char* psz=(char*)malloc(256);
    printf("Enter a string: "); 
    gets(psz);
    int i = 0; char str1[256];
    while (!isspace(*psz) && *psz != '\0') 
        str1[i++] = *psz++; str1[i] = '\0';
    int n = strlen(psz)-1;
    int k = 0; char str2[256]; 
    char* temp = psz; temp+=strlen(psz)-1;
    while (!isspace(*temp) && *temp != '\0') *temp--;
    while (*temp != '\0') str2[k++] = *temp++;
    while (!isspace(psz[n]) && n >= 0) n--;
    str2[k] = '\0'; psz[n] = '\0';
    sprintf(str2,"%s%s %s",str2,psz,str1);
    printf("%s\n",str2);
    free(psz);
    getchar();
    return 0;
}
1
9 / 9 / 2
Регистрация: 23.09.2012
Сообщений: 150
25.11.2012, 20:36  [ТС] 6
а можете написать что значит каждая строчка?
0
7 / 7 / 3
Регистрация: 29.01.2012
Сообщений: 25
25.11.2012, 20:57 7
Цитата Сообщение от level9626 Посмотреть сообщение
а можете написать что значит каждая строчка?

да тут сочинение придется целое писать
0
0 / 0 / 0
Регистрация: 13.11.2013
Сообщений: 3
16.02.2014, 14:01 8
Цитата Сообщение от snr Посмотреть сообщение
да тут сочинение придется целое писать
А можете всё же пояснить, как работает программа и что делает каждая строчка?
0
0 / 0 / 0
Регистрация: 29.11.2014
Сообщений: 2
21.12.2014, 16:35 9
А можно эту же задачу решить без использования string.h?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.12.2014, 16:35

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Строка: Поменять местами первое и последнее слово предложения.
Дано предложение. Поменять местами его первое и последнее слово.

Поменять местами в строке первое и последнее слово
Дана строка. Словом текста считается любая последовательность цифр; между соседними словами - не...

Поменять местами первое и последнее слово в строке
Мне нужна помощь. Помогите сделать это задание Создать файл, в который записываются исходные...

Поменять местами в строке первое и последнее слово
Ребят,помогите пожалуйста,с решением задачки,если не трудно...Собственно,задачка: Словом текста...


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

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

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