Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.12.2023, 19:18   #1
Darina777
Новичок
Джуниор
 
Регистрация: 02.12.2023
Сообщений: 2
Восклицание удалить первое слово с пробелом(язык си)

хотелось бы дорешать задачу с моим кодом. Он удаляет только первую букву.



Код:
#include<stdio.h>
int main(){
	char s[200]="hello world iot";

	int len=0;
	int index=0;
	for(int i=0;s[i]!='\0';i++){
		len++;
	}
	for(int i=0;i<len;i++){
		if ((s[i]==' ') && ( s[i+1]!=' ')){
			index=i;
			for(int j=i;j<index;j++){
				s[j]=s[j+1];
			}
			i--;
			break;
		}
	}
	printf("  %i\n", index);
	puts(s);
}

Последний раз редактировалось BDA; 02.12.2023 в 19:28.
Darina777 вне форума Ответить с цитированием
Старый 02.12.2023, 19:30   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Цитата:
Сообщение от Darina777 Посмотреть сообщение
Он удаляет только первую букву.
Если судить по коду, то не должен удалять ни одной, т.к. тело цикла "переноса" не выполняется ни разу.

Код:
#include <stdio.h>

int main()
{
    char s[200] = "hello world iot";

    int index = 0;
    // skip first word
    while (s[index] != '\0' && s[index] != ' ')
        index++;
    // skip spaces
    while (s[index] != '\0' && s[index] == ' ')
        index++;

    printf("%i\n", index);

    int i = 0;
    while (s[index] != '\0')
    {
        s[i] = s[index];
        i++;
        index++;
    }
    s[i] = s[index];

    puts(s);
}
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 02.12.2023, 19:33   #3
Darina777
Новичок
Джуниор
 
Регистрация: 02.12.2023
Сообщений: 2
По умолчанию

BDA, спасибо большое!!!!
Darina777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывести слово минимальной длины. Если таких слов несколько,вывести первое введенное слово mkolmi Помощь студентам 0 11.03.2019 22:39
Дана строка,удалить 1-ое слово(Язык Си) Otar4ik Помощь студентам 16 14.09.2014 19:10
поменять местами первое слово со вторым.. 3 и 4 5 и 6 7 и 8 kiruka4 Qt и кроссплатформенное программирование С/С++ 1 03.01.2012 13:26
Найти первое слово в строке Delphinchik Помощь студентам 10 24.08.2010 11:02
извлечь из ячейки первое слово до пробела KNatalia Microsoft Office Excel 4 06.08.2010 16:11