crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Начал изучать Си. Первые трудности.
micro-chipset
  опции профиля:
сообщение 29.1.2011, 10:54
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 7
Регистрация: 27.1.2011
Пользователь №: 2371

Спасибо сказали: 0 раз(а)




Репутация:   0  


Возникла проблема со следующей задачей. Задача из из книги Б. Керниган, Д. Ритчи "Язык программирования Си" Глава 1.6 упражнение 1.13 Книгу онлайн можно найти тут

Сама задача
Програма должна выводить гистограмму длин слов во входном потоке. т.е. надо чтобы выводился массив допустим длинной 15 первый элемент слово из нуля букв второй символ слово из одной буквы третий символ из 2 букв ну и так далее.


набросок программы

#include <stdio.h>

/*Программа вывода гистограммы длин слов во входном потоке*/

main ()
{
    int i, c, j;
    int length[15];
    
    j = 0;
    
    for (i = 0; i < 15; i++)
        length[i] = 0;
    while ((c = getchar()) != EOF)
        if (c != ' ' || c != '\t' || c != '\n'){
            ++j;
            ++length[c-j];
        }
    printf("Длинна слов =");
    for (i = 0; i < 15; i++)
        printf(" %d", length[i]);
}

Программа компилируется, но выдает не верные результаты. Наверное не верно заполняю массив, как поправить. Зарание спасибо за помощь.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
DEADHUNT
  опции профиля:
сообщение 30.1.2011, 11:27
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 430
Регистрация: 15.4.2009
Пользователь №: 686

Спасибо сказали: 26 раз(а)




Репутация:   2  


файл utf8, а ты его как ASCII читаешь.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
micro-chipset
  опции профиля:
сообщение 30.1.2011, 11:34
Сообщение #3


Новичок


Группа: Новичок
Сообщений: 7
Регистрация: 27.1.2011
Пользователь №: 2371

Спасибо сказали: 0 раз(а)




Репутация:   0  


Цитата(DEADHUNT @ 30.1.2011, 11:27) *
файл utf8, а ты его как ASCII читаешь.

А как поправить?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме
- micro-chipset   Начал изучать Си. Первые трудности.   29.1.2011, 10:54
- - Алексей1153   а почему именно C, а не C++ ? Или тебе для микроко...   29.1.2011, 12:51
- - micro-chipset   1) С форматированием согласен еще не вошло в привы...   29.1.2011, 14:43
|- - Martein   Цитата(micro-chipset @ 29.1.2011, 14...   3.7.2014, 11:18
|- - Iron Bug   Цитата(Martein @ 3.7.2014, 14:18) Слушайт...   4.7.2014, 7:49
|- - Анна   Цитата(Iron Bug @ 4.7.2014, 8:49) Цитата(...   30.7.2014, 13:42
- - Алексей1153   Цитата(micro-chipset @ 29.1.2011, 16...   29.1.2011, 16:17
- - Litkevich Yuriy   Цитата(Алексей1153 @ 29.1.2011, 18:17) пр...   29.1.2011, 20:16
- - DEADHUNT   Цитата(Алексей1153 @ 29.1.2011, 16:17) Ци...   29.1.2011, 20:22
- - Rocky   Кстати, а в ANSI C есть операторы "++" и...   29.1.2011, 21:01
|- - BRE   Цитата(Rocky @ 29.1.2011, 21:01) Кстати, ...   29.1.2011, 21:09
- - Rocky   Буду знать, пасиб)   29.1.2011, 22:10
- - micro-chipset   Программа компилируется и работает. Но выдает не в...   30.1.2011, 10:55
- - DEADHUNT   файл utf8, а ты его как ASCII читаешь.   30.1.2011, 11:27
|- - micro-chipset   Цитата(DEADHUNT @ 30.1.2011, 11:27) файл ...   30.1.2011, 11:34
- - Алексей1153   Цитата(Litkevich Yuriy @ 29.1.2011, 22:16...   30.1.2011, 15:00
- - micro-chipset   А все же что с решением задачки. Работает она не в...   30.1.2011, 15:59
- - Алексей1153   micro-chipset, покажи алгоритм на обычном русском ...   30.1.2011, 16:49
- - DEADHUNT   Цитата(micro-chipset @ 30.1.2011, 11...   30.1.2011, 17:12
|- - micro-chipset   Цитата(DEADHUNT @ 30.1.2011, 17:12) Цитат...   30.1.2011, 17:37
- - Алексей1153   micro-chipset, это ты уже почти программу пытаешьс...   30.1.2011, 17:58
|- - micro-chipset   Цитата(Алексей1153 @ 30.1.2011, 17:58) mi...   30.1.2011, 18:06
- - Алексей1153   строку можно тоже представить потоком, а новые стр...   30.1.2011, 18:54
- - Iron Bug   Цитата(micro-chipset @ 29.1.2011, 16...   31.1.2011, 19:08
- - Алексей1153   ну, запятую я случайно оставил, да. Цитата(Iron ...   31.1.2011, 19:18
- - Iron Bug   Цитата(Алексей1153 @ 31.1.2011, 21:18) а ...   31.1.2011, 19:44
- - Алексей1153   Iron Bug, так я же не спорю, что если в середине п...   31.1.2011, 20:02
- - DEADHUNT   Цитата(Iron Bug @ 31.1.2011, 19:44) это о...   31.1.2011, 20:43
- - Алексей1153   Цитата(DEADHUNT @ 31.1.2011, 22:43) enum ...   31.1.2011, 21:08
- - Iron Bug   Цитата(DEADHUNT @ 31.1.2011, 22:43) вообщ...   31.1.2011, 21:41
- - Litkevich Yuriy   DEADHUNT, нет ли у тебя в закромах ссылки на текст...   31.1.2011, 22:02
- - Rocky   У меня был где-то... если нужен поищу.. дай мыло с...   31.1.2011, 22:05
- - DEADHUNT   Цитата(Iron Bug @ 31.1.2011, 21:41) а, на...   31.1.2011, 23:02
- - Iron Bug   Цитата(DEADHUNT @ 1.2.2011, 1:02) нету та...   1.2.2011, 14:05
- - DEADHUNT   Цитата(Iron Bug @ 1.2.2011, 14:05) как ми...   1.2.2011, 15:48
- - igor_bogomolov   У меня компилируется. Но значения не сдвигаются gc...   1.2.2011, 16:48
- - Jason-GTK   как-то так ... сам недавно начал . #include ...   9.5.2014, 1:16
- - Jason-GTK   Может на этом форуме и нет живых , но для случайны...   11.5.2014, 5:02
- - lanz   Студию Express можно поставить русскоязычную. Я с ...   3.7.2014, 20:23


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 29.3.2024, 4:32