Форум программистов, компьютерный форум CyberForum.ru

Скопировать второе слово каждой строки в начало следующей строки - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ В двумерной матрице отсортировать столбцы методом вставок http://www.cyberforum.ru/cpp-beginners/thread109813.html
помогите с задачками:) задача №1 В двумерной матрице отсортировать столбцы методом вставок задача №2 Из массива символов размером 15 вывести на экран элементы с нечетным номером задача №3 В массиве символов размером 15х15 заполнить четные строки буквами А, а нечетные – буквами В. заранее благодарю:rose:
C++ создаю список для структуры Дана структура,которая вводится с клавы!вот,ввели информацию,нужно создать список,я создал,и чтобы в этот список записывалась информация о поездах,которые мы вводим с клавы,далее нужно добавь в список информацию о новом поезде и вывести на экран отсортированный список ,осуществить поиск в нашем списке,далее удалить любой поезд,помогите пожалуйста)))Заранее спасибо // First_program.cpp : Defines... http://www.cyberforum.ru/cpp-beginners/thread109804.html
C++ /*Введём текст с заканчивающийся точкой , вывести все слова у которых первая и последняя буквы одинаковы.*/h
Программа работает а результата нет, или я туплю... /*Введём текст с заканчивающийся точкой , вывести все слова у которых первая и последняя буквы одинаковы.*/ #include <iostream.h> #include <string.h> char main() { char a,k,x,y; int t,j,i=0; cin.get(a,200,'.'); while (a!='.')//пока не равно точке
сортировка слиянием C++
Ребят,помогите пожалуйста,нужно отсортировать массив,который вводим с клавиатуры методом слияния,вот я написал ,но сортировка не работает,в чем проблема?допишите и исправьте если можно #include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; void merge(int arr,int first,int mid,int last); const int MAX_SIZE = 10;// количество элементов временного массива;
C++ Динамические массивы... http://www.cyberforum.ru/cpp-beginners/thread109794.html
Помогите пожалуйста.... Дано матрицу размерностью N * М с произвольных многочисленных элементов. Найти элементы, которые по модулю меньше некоторого значения, введенного с клавиатуры.
C++ [c++] Перегрузка операторов Для заданных A = (A – a1, A, A + a2) и B = (B – b1, B, B + b2) Найти сумму A + B = (A + B – a1 – b1, A + B, A + B + a2 + b2); #include <conio.h> #include <iostream.h> struct FazzyNumber { double x; double x1,x2; подробнее

Показать сообщение отдельно
l123
1 / 1 / 0
Регистрация: 13.04.2010
Сообщений: 32
30.11.2010, 12:52     Скопировать второе слово каждой строки в начало следующей строки
Написал вот такой кусок, но не могу найти ошибку...

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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <conio.h>
#include <iostream.h>
char filename[80];     /* имя файла */
char bu1[81], bu2[81]; /* входной и выходной буферы */
 
int main(int an, char *av[]) {
 char *b1, *b2,*bv; /* текущие указатели в буферах */
 char os;       /* предыдущий символ */
 FILE *inf, *outf;  /* файловые переменные */
 
 int  nw,k=0,       /* количество слов */
      lmax     
 
  if (an<2) {
    printf("Call parameter wasn't be written(The name of input file)\n");
    exit(0);
    }
  strcpy(filename,av[1]);
  //открытие файлов
  if ((inf=fopen(filename,"r"))==NULL) {
    printf("Impossible to open file: %s\n",filename);
    exit(0);
    }
  if ((outf=fopen("1.txt","w"))==NULL) {
    printf("Impossible to create file: TMP\n");
    exit(0);
    }
  fgets(bu2,80,inf);
  b2=bu2;
  b2+=80;
  for (lmax=0; fgets(bu1,80,inf)!=NULL; lmax++) {
    if (lmax>0) for (i=1;i<=k;i++) *b2++=*bv++; //если считывается 2 строка, то первым словом записываем уже сохраненное 2-ое
 
    for (os=' ',nw=0,k=0,b1=bu1; *b1; os=*b1++) {
      switch(*b1)
      {
    case 0xA: break; //символ новой строки удаляется
    case ' ': if (os==' ') break; //2-й пробел подряд удаляется
    default:  if (os==' ') nw++; //счетчик слов
 
     if (nw==1)
       {
         *bv++=*b1; cout<<*b1;//если 2 слово, то запоминаем в bv
         k++;
       }
     if ((lmax>0)&&(nw>0)) *b2++=*b1;break; //остальные символы переписываются
       }
    }
      fprintf(outf," %s\n",bu2);
 
    }
  fclose(inf);
  fclose(outf);
 
  getch();
  return 0;
}
 
Текущее время: 14:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru