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

Простая задача с "if" - C++

Восстановить пароль Регистрация
 
Molker
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 5
19.04.2012, 22:14     Простая задача с "if" #1
Всем привет. Программировать начал недавно, начал с прочтения книги Бьярне Страуструпа "Программирование принципы и практика использования С++". И вот там есть задание, которое у меня не получается решить. Вот задание:
"Предложите пользователь ввести имя другого приятеля и сохрание его в переменной friend_name. Добавьте в ваше письмо следующую строку: "Видел ли ты friend_name недавно?".
Обьявите переменную типа char с именем friend_sex и инициализируйте его нулем. Предложите пользователю ввести значение m, если ваш друг - мужчина, и f - если женщина. Присвойте ппеременной friend_sex введенное значение. Затем с помощью двух инструкций if запишите следующее.
Если друг - мужчина, то напишите строку: Если ты увидишь friend_name, пожалуйста попроси его позвонить мне.
Если друг - женщина, то напишите строку: Если ты увидишь friend_name, пожалуйста попроси ее позвонить мне." Если вам не трудно, помогите пожалуйста задачу решить.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
soirkar
0 / 0 / 0
Регистрация: 22.06.2011
Сообщений: 20
19.04.2012, 22:54     Простая задача с "if" #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include "stdafx.h"
int main()
{
    char friend_name[10];
    char friend_sex[2];
 
    printf ("Please, type your friend's name in: ");
    scanf ("%s", friend_name);
    printf ("Please, type your friend's sex in( m/f ): ");
    scanf ("%s", friend_sex);
    if (friend_sex[0] == 'm')
    {printf("If you'll see "); printf(friend_name); printf (", please ask him to call me.\n");}
    else if (friend_sex[0] == 'f')
        {printf("If you'll see "); printf(friend_name); printf (", please ask her to call me.\n");} 
    return 0;
}
Molker
0 / 0 / 0
Регистрация: 19.04.2012
Сообщений: 5
19.04.2012, 22:59  [ТС]     Простая задача с "if" #3
Спасибо большое.
Heretiqu3
10 / 10 / 2
Регистрация: 19.04.2012
Сообщений: 20
19.04.2012, 23:17     Простая задача с "if" #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int main()
{
 
    char friend_name[10];
    char friend_sex;
 
    printf("Please, type your friend's name in: ");
    scanf("%s", &friend_name);
    printf("Please, type your friend's sex in( m/f ): ");
    scanf("%s", &friend_sex);
 
    printf("If you'll see %s, please ask %s to call me.\n", friend_name, ((friend_sex == 'm') ? "him" : "her"));
 
    return 0;
}
scanf принимает адрес переменной, куда писать. Код soirkar вызовет RTE при попытке сохранить имя в переменную.
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
19.04.2012, 23:51     Простая задача с "if" #5
Цитата Сообщение от Heretiqu3 Посмотреть сообщение
scanf принимает адрес переменной, куда писать. Код soirkar вызовет RTE при попытке сохранить имя в переменную.
Код soirkar'а корректно отработает, будте более внимательны.
Heretiqu3
10 / 10 / 2
Регистрация: 19.04.2012
Сообщений: 20
20.04.2012, 00:29     Простая задача с "if" #6
Цитата Сообщение от kazak Посмотреть сообщение
Код soirkar'а корректно отработает, будте более внимательны.
Да, действительно, не заметил, что используются зачем-то массив из трех char'ов, чтобы хранить 1 char.
Yandex
Объявления
20.04.2012, 00:29     Простая задача с "if"
Ответ Создать тему
Опции темы

Текущее время: 10:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru