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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2014, 22:10   #11
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
Сообщение от Wysler Посмотреть сообщение
Возник вопрос по поводу функции strcpy и двумерного массива. Т.е. могу ли я написать:
Код:
strcpy(str2[i],str2[i+1]);
И надеяться, что программа скопирует содержимое, скажем ,2 строки двумерного символьного массива в 1?
То же самое по поводу функции strlen:
Код:
if(strlen(str2[i+1])<strlen(str2[i]))
Сравнится ли здесь длина двух строк двумерного массива или это делается по другому?
вот и поэтому тоже я с детства люблю паскаль!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 13.11.2014, 22:27   #12
Wysler
Пользователь
 
Регистрация: 30.10.2014
Сообщений: 14
По умолчанию

Вопрос не актуален, все сделал:
Код:
#include <stdlib.h>
#include <string.h>
	const int N=100;//Максимальная длина строки
	char str2[N][N]={0};
int length(int a)
{
	int len=0;
	for(int i=0;i<N;i++)
		if(str2[a][i]=='\0')
			return len;
		else len++;
}
int main(void)
{
    setlocale(LC_ALL, "Russian");
	char str1[N];
	int i,word,index;
	printf("Введите строку не более %d символов: ",N);gets(str1);
	word=index=0;
	for(i=0;i<N;i++,index++)
	{
		if(str1[i]==' ')
		{
			
			str2[word][index]='\0';
			index=-1;
			word++;
		}
		else str2[word][index]=str1[i];
	}
	char stak[N];
	for(int j=0;j<word;j++)
	{
		for(i=0;i<word;i++)
			if(length(i)>length(i+1))
			{
				strcpy(stak,str2[i]);
				strcpy(str2[i],str2[i+1]);
				strcpy(str2[i+1],stak);
			}
	}
	for(i=0;i<word+1;i++)
		printf("%s ",str2[i]);
	system("pause");

}
Всем еще раз огромное спасибо за помощь.
Wysler вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан массив. Вывести вначале все четные числа в порядке возрастания их индексов, затем - все нечетные в порядке убывания.( Delphi ) simonte Помощь студентам 9 07.12.2013 06:54
Вывести слова предложения в таком порядке, чтобы последняя буква каждого слова совпадала с первой буквой следующего слова ( java ) huhu Помощь студентам 0 06.04.2012 19:42
Вывести в порядке возрастания кодов все буквы латинского алфавита. Zzoyberg Помощь студентам 0 28.12.2011 03:10
Вывести в порядке возрастания кодов все буквы латинского алфавита. Zzoyberg Паскаль, Turbo Pascal, PascalABC.NET 3 07.12.2011 16:10
На печать выдать новую строку в которой все слова расположены в порядке возрастание длин слов Siluet Паскаль, Turbo Pascal, PascalABC.NET 1 13.12.2008 00:12