Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Visual C++:чтение символьной строки в массив 
:(
    Опции темы
pharrell
Дата 22.11.2006, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 27.6.2006

Репутация: нет
Всего: нет



Собственно надо:чтение символьной строки из цифр в массив и вывод этого массива в обратной последовательности.
Код

#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
#include<math.h>
#include<string.h>
#define maxlen 400
 void main(void)
 {
        char  s[maxlen], ch, *p=s;
        int    ar[maxlen],i,b=0;
        do{
    ch=getchar();
                    if(ch>='0' && ch<='9') 
    {
             ar[p-s]=(ch-'0');
             *(p++)=ch;
    b++;
             }
          }
        while(ch>='0' && ch<='9');
        *p=0;
        printf("%d\n",strlen(s));
    for(i=b;i>=0;i--)
    {
    printf("%d",ar[i]);
                        
                }
                
}
 
При выводе после числа в обратном порядке выдает еще --858993460.Помогите сделать чтобы все было правильно.
Заранее спасибо

Это сообщение отредактировал(а) pharrell - 22.11.2006, 17:33
PM MAIL   Вверх
Romikgy
Дата 22.11.2006, 17:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Любитель-программер
****


Профиль
Группа: Участник Клуба
Сообщений: 7326
Регистрация: 11.5.2005
Где: Porto Franco Odes sa

Репутация: 8
Всего: 146



Цитата(pharrell @  22.11.2006,  16:33 Найти цитируемый пост)
 for(i=b;i>=0;i--)

Код

 for(i=b-1;i>=0;i--)



--------------------
Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. 
smile

PM   Вверх
pharrell
Дата 23.11.2006, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 101
Регистрация: 27.6.2006

Репутация: нет
Всего: нет



а если сделать функцию,что бы можно было считывать несколько строк.Посмотрите может лучше как-то по другому,собственно это не работает??
Код

include<conio.h>
#include<stdlib.h>
#include<stdio.h>
#include<math.h>
#include<string.h>
#define maxlen 400


int read_num(char ch,int ar[])
{
        char  s[maxlen],/* ch,*/ *p=s;
        int        /*ar[maxlen],i,*/b=0;
        do{
          ch=getchar();
          if(ch>='0' && ch<='9') 
    Х
             ar[p-s]=(ch-'0');
             *(p++)=ch;
     b++;
             }
          }

        while(ch>='0' && ch<='9');
        *p=0;
        printf("%d\n",strlen(s));
        return b;
}


 void main(void)
 {
     int i,b;
     char str_first;
     int num_first[maxlen+2];
     int read_num(str_first,num_first[]);

     for(i=b;i>=0;i--)
    {
    printf("%d",num_first[i]);
    }
    printf("\n");
            
}


 
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0479 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.