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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.05.2012, 13:48   #1
boyfromsun
Пользователь
 
Регистрация: 06.04.2012
Сообщений: 12
Восклицание Язык С.Вставка строки в строку!Отблагодарю.

Всем оказавшим мне хоть какую-то помощь в решении данной задачи. Отблагодарю нажатием на весы и написав положительный отзыв.Будьте так любезны не проходите мимо Сижу уже с 11 часов делаю сее чудо... Первый вариант вообще делал 3 недели, а эту сдать завтра, после завтра потолок...

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


Сказали что нужно её решить способом в несколько раз легче и короче моего. При помощи библиотеки <string.h>, сказала функциями этой библиотеки выйдет и короче и проще.. Знает кто нить как это бысто сделать ? Буду благодарен , Спасибо.


Моё решение первым способом:

PHP код:
# include <stdio.h>                            /*Подключение стандартной библиотеки ввода-вывода*/
# include <stdlib.h>                        /*Подключение библиотеки для функции srand, rand*/
# include <time.h>                            /*Подключение библиотеки для обработки time*/

int podprogr(int a);                        /*Предопределинеие пользовательской функции.
                            Входные параметры - переменная типа int. Возвращаемое значение типа int.*/
int main (void)                                /*Вход в программму*/
{
int a,n,i,j;                                /*Инициализация переменных*/
printf ("Vvedite razmernoct matrici n:=");    /*Вывод сообщения на экран*/
scanf ("%d",&n);                            /*Запись символа с клавиатуры типа d в переменную n*/
int mat[n][n];                                /*Инициализация матрицы*/
srand(time(NULL));                            /*Функция, аргумент которой определяет генерация слу-*/
                                            /*чайных чисел. Определяется системным временем прошедшим*/
                                            /*от начала отсчета времени (около 1970 года)*/
for (i=0;i<n;i++)                            /*Цикл заполнения матрицы*//*Цикл перебора по столбцам*/
    
{
    for (
j=0;j<n;j++)                        /*Цикл перебора по строкам*/
        
{
        
mat[i][j]=(rand()%101)-50;            /*Присваивание значения элементу матрицы*/
        
printf ("%d    ",mat[i][j]);            /*Вывод элемента на экран*/
        
}
    
printf ("\n");                            /*Вывод элемента на экран*/
    
}
printf ("\n");                                /*вывод символа на экран*/
for (i=0;i<n;i++)                            /*Цикл изменения матрицы*//*Цикл перебора по столбцам*/
    
{
    for (
j=0;j<n;j++)                        /*Цикл перебора по строкам*/
        
{
        
a=mat[i][j];                        /*Присваивание значение переменной*/
        
mat[i][j]=podprogr(a);                /*Присваивание элементу значения, возвращаемого*/
                                            /*пользовательской фунцией*/
        
printf ("%d    ",mat[i][j]);            /*Вывод элемента на экран*/
        
}
    
printf ("\n");                            /*вывод символа на экран*/
    
}
return 
0;
}

int podprogr(int a)                            /*Функция пользователя - инвертирование знака числа*/
{
int b;                                        /*Инициализация данных*/
if(a>=0)                                    /*Условие обработки числа*//*Обработка положительных*/
    
{                                        /*чисел*/
    
b=a*(-1);                                /*Умножение на минул единицу*/
    
}
else                                        
/*Обработка отрицательных*/
    
{
    
b=abs(a);                                /*Изъятие модуля числа*/
    
}
return 
b;                                    /*Возвращение переменной в вызвавшую функцию*/

Сказали что нужно её решить способом в несколько раз легче и короче моего. При помощи библиотеки <string.h>, сказала функциями этой библиотеки выйдет и короче и проще.. Знает кто нить как это бысто сделать ? Буду благодарен , Спасибо.

Последний раз редактировалось boyfromsun; 16.05.2012 в 17:54.
boyfromsun вне форума Ответить с цитированием
Старый 16.05.2012, 15:06   #2
boyfromsun
Пользователь
 
Регистрация: 06.04.2012
Сообщений: 12
По умолчанию

Помогите пожалуйста. На решение дали день. Спасибо.

Сказали что нужно её решить способом в несколько раз легче и короче моего. При помощи библиотеки <string.h>, сказала функциями этой библиотеки выйдет и короче и проще.. Знает кто нить как это бысто сделать ? Буду благодарен , Спасибо.
boyfromsun вне форума Ответить с цитированием
Старый 16.05.2012, 17:22   #3
boyfromsun
Пользователь
 
Регистрация: 06.04.2012
Сообщений: 12
По умолчанию

Нашёл немного для решения, но сделать не получается...
PHP код:
char str[37] = "sergey"s[100]="monk";
strcat(str,s); //Ответ: sergeymonk

Функция добавляет в строку str1 строку str2Т.ена место нуль-терминатора в строке str1вставляется строка str2
И ещё есть :
PHP код:
s.insert(i,str– вставка подстроки str в s начиная с позиции i 
Жду помощи.
boyfromsun вне форума Ответить с цитированием
Старый 16.05.2012, 21:26   #4
boyfromsun
Пользователь
 
Регистрация: 06.04.2012
Сообщений: 12
По умолчанию

ЗДЕЛАНО !!! ВСЕМ СПАСИБО КТО ПЫТАЛСЯ !!!
boyfromsun вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа со строками (язык С) aspiredp Общие вопросы C/C++ 1 27.12.2010 00:13
Odesk, как упростить поиск работы? hellios Фриланс 1 27.05.2010 15:45
Работа со строками (язык C) Иван_Секретарев Помощь студентам 6 28.11.2009 13:31
Работа со строками.Язык С Bella Помощь студентам 2 16.11.2009 18:01
Работа со строками (язык Си) Darh Помощь студентам 6 10.11.2009 19:07