Технический форум

Технический форум (http://www.tehnari.ru/)
-   C/C++/С# (http://www.tehnari.ru/f42/)
-   -   Обработка символьных строк (http://www.tehnari.ru/f42/t71347/)

неоспоримый 01.04.2012 13:20

Обработка символьных строк
 
помогите написать программу к задаче:
Упорядочить список городов согласно правилам игры в города (последняя буква названия города д.б. первой буквой следующего). Сформировать упорядоченный массив, исключив из него "неупорядоченные" названия. Название первого в игре города в вводить с клавиатуры.пробывал сам написать но вышел только целый букет косяков
Код:

#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
 
void vvod (char *str);
void goroda (char *str);
 
int _tmain(int argc, _TCHAR* argv[])
{
        setlocale(LC_ALL,"");
        char string[100];
        char *st;
        st=(char*)&string;
        vvod(st);
        goroda (st);
        return 0;
}
 
void vvod (char *str)
{
        cout<<"Введите название города\n";
        gets(str);
}
 
void goroda (char *str)
{
        int i=0,j=0,k,z=0,o=0,n=0;
        int l[100];
        k=strlen(str);
        char goroda[][20]={"London",
        "New-York",
        "Washington",
        "Kiev",
        "Voronezh",
        "Harkov"
        };
        char perehod[20][20];
        for (int g=0;g!=6;i++)
        {
                l[i]=strlen(goroda[i]);
                g++;
                n++;
        }
        if (islower(*(str+k)))
                        {
                                *(str+k)=toupper(*(str+k));
                        }
        i=0;
        j=l[i];
        for (;z<k;z++)
        {
        perehod[o][z]=*(str+z);
        }
        o++;
        z=i;
        for (;o<n+1;o++)
        {
        while (*(str+k)!=goroda[i][j])
        {
                j=l[i];
                i++;
        }
        for (;z<l[i];z++)
        {
        perehod[o][z]=goroda[i][z];
        }
        }
        i=0;
        j=0;
        cout<<"Упорядоченный массив \n";
        for(;i<n+1;i++)
        {
                cout<<"\n";
                for(;j<l[i];j++)
                {
                        cout<<perehod [i][j];
                }
        }
        getch();
}



Часовой пояс GMT +4, время: 09:16.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.