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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2017, 22:33   #11
Daniela Daniela
Пользователь
 
Регистрация: 24.11.2017
Сообщений: 11
По умолчанию

Задание:
Напишите программу, которая запрашивает у пользователя его имя и затем выводит инициалы в верхнем регистре без пробелов или точек с переводом строки (\ n) и ничего больше . Считайте, что ввод пользователя будет состоять только из букв (верхнего и / или нижнего регистров) с пробелами. Люди с именами Joseph Gordon-Levitt, Conan O'Brien, и Davenport J. Miln точно не будут использовать вашу программу. Однако, введение пользователя может быть несколько кривым, в случае чего есть вероятность присутствия одного или более пробелов в начале и/или конце ввода или даже много-много пробелов подряд.

Написание кода вроде не вызвало каких-то трудностей и вывод результатов соответствует требованиям. Но при проверке (опять же компьютером) выдает такую ошибку постоянно, что бы я ни меняла.
Возможно у меня какая-то ошибка с выходом за рамки масива (s[i+1]). Но я, как натуральный "чайник", не знаю как описать, что мне нужна только буква следующая за пробелом.

Код:
#include <stdio.h>
#include <ctype.h>
#include <string.h>

int main (void)
{
    // получить ФИО пользователя
    string s = get_string();

    if (s!=NULL)
    {
        if (isalpha(s[0]))
            {
                printf("%c", toupper(s[0]));
            }
        for (int i=0, n=strlen(s); i<n-1 ; i++)
        {
            if (isspace(s[i]) && s[i+1]!=' ')
            {
                printf("%c", toupper(s[i+1]));
            }
        }
    printf("\n");
    }
}
Проверка вывода:
~/workspace/pset2/ $ ./initials
robert thomas bowden
RTB
Daniela Daniela вне форума Ответить с цитированием
Старый 26.11.2017, 22:39   #12
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Попробуйте убрать русский комментарий
Если не поможет, приведите точный ответ сервера, как в прошлый раз
Black Fregat вне форума Ответить с цитированием
Старый 26.11.2017, 23:29   #13
Daniela Daniela
Пользователь
 
Регистрация: 24.11.2017
Сообщений: 11
По умолчанию

Это жесть! Таки да! Тест приняли...
Но я тогда не понимаю одного - четко говорилось, что комментарии и стиль записи никак не влияют на результат! Где же справедливость?
Из-за таких мелочей заставила людей вникать в свои коды. Если возникнут очередные вопросы, а они возникнут... (вернее уже возникли , но я пока сама пытаюсь ходить по граблям), то мне даже стыдно будет обращаться за помощью.

Как бы там ни было, всем ОГРОМНОЕ СПАСИБО за помощь и поддержку.
Daniela Daniela вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Шифр Цезаря Ти6ка C# (си шарп) 7 21.02.2017 22:19
[C++]: шифр Гронсфельда. Помогите найти ошибку в коде krasy Помощь студентам 1 02.10.2016 00:37
Шифр цезаря noutiluss C# (си шарп) 0 17.03.2016 17:35
Шифр Цезаря.(Зашиф-ка,расшиф-ка,взлом...Вообщем полный набор.Пожалуйста помогите) Александр96 Помощь студентам 0 03.12.2013 18:36
Шифр Цезаря Goracio Помощь студентам 1 19.04.2010 14:53