Главная страница
Навигация по странице:

  • Российский государственный социальный университет Рубежный контроль №1

  • ФИО студента Аксенов Константин Максимович Направление подготовки

  • Группа ИНБ-Б-0-Д-2022-1 Москва 2022 Цель работы

  • РК1_Программирование. РК1_Прога_Аксенов. Функции вводавывода


    Скачать 39.51 Kb.
    НазваниеФункции вводавывода
    АнкорРК1_Программирование
    Дата10.01.2023
    Размер39.51 Kb.
    Формат файлаdocx
    Имя файлаРК1_Прога_Аксенов.docx
    ТипДокументы
    #880046






    Российский государственный социальный

    университет





    Рубежный контроль №1

    по дисциплине «Программирование»
    ФУНКЦИИ ВВОДА-ВЫВОДА

    Функции ввода-вывода
    1 вариант


    ФИО студента

    Аксенов Константин Максимович

    Направление подготовки

    Информационная безопасность

    Группа

    ИНБ-Б-0-Д-2022-1


    Москва 2022

    Цель работы: изучение функций ввода-вывода и получение навыков организации простейшего ввода-вывода данных.

    Представленная в примере программа осуществляет ввод и вывод переменных в различных форматах.

    Исходными данными для вычисления является значение переменных ch, name[20], firstname[20], ip, io, fp, fo, number. Значения этих переменных выводятся с клавиатуры.
    //Лабараторная работа №2

    //вариант 1

    //выполнил студент группы ИНБ-Б-0-Д-2022-1

    //АксеновК.М.

    #include

    #include // для использования функции strlen()

    int main(void)

    {

    //объявление переменной для символа

    char ch;

    //приглашения для ввода символа

    printf("Введите символ: ");

    //ввод символа

    scanf("%c",&ch);

    //вывод в символьном виде и в виде кода (формат %с);

    printf("Вывод в символьном виде %c\n",ch);

    //объявление переменной строки

    char name[20], firstname[20];

    //приглашения для ввода строки

    printf("Введите ваше имя и фамилию: ");

    //вводстроки

    scanf("%s %s",name,firstname);

    //вычислениедлиныстроки

    int length = strlen(name) + strlen(firstname);

    //выводстрокииеёдлины

    printf("Менязовут %s %s. Длинастроки %d\n",name,firstname,length);

    //переменные для целых чисел

    int ip, io;

    //приглашение для ввода

    printf("Введите два целых числа (положительное и отрицательное): ");

    //ввод целых чисел

    scanf("%d%d",&ip,&io);

    //Вывод чисел в десятичном формате

    printf("Вывод в десятичном формате чисел со сдвигом вправо и фиксированной длиной вывода.\n%-5d->\n%5d",ip,io);

    //Вывод чисел в шестнадцатеричном формате

    printf("\nВывод в шестнадцатеричном формате чисел %x и %x\n",ip,io);

    //переменные для чисел с плавающей точкой

    float fp, fo;

    //приглашение для ввода

    printf("Введите два числа с плавающей точкой (положительное и отрицательное): ");

    //ввод целых чисел

    scanf("%f%f",&fp,&fo);

    //Вывод чисел в десятичном формате

    printf("Вывод в десятичном формате чисел с заданной точностью.\n%0.3f и %0.3f",fp,fo);

    //Вывод чисел в экспоненциальном формате

    printf("\nВывод в экспоненциальном формате чисел %e и %e\n",fp,fo);

    //переменная для целого беззнакового числа

    unsigned int number;

    //приглашение для ввода

    printf("Введите целое беззнаковое число: ");

    //ввод числа

    scanf("%d",&number);

    //вывод в виде десятичного целого без знака

    printf("Вывод в виде десятичного целого без знака: %u\n",number);

    //вывод в виде восьмеричного целого без знака

    printf("Вывод в виде восьмеричного целого без знака: %o\n",number);

    //вывод в виде шестнадцатеричного целого без знака

    printf("Вывод в виде шестнадцатеричного целого без знака: %x\n",number);;

    }

    Первые четыре строки программы представляют собой комментарий, в котором указывается номер лабораторной работы и сведения о ее исполнителях.

    Затем следуют две строки, указывающие на необходимость включения в данный файл двух заголовочных файлов (*.h), находящихся в системной директории и содержащих внешние декларации (прототипы) библиотечных функций printf(), scanf(), strlen(). Библиотеки, содержащие данные функции, также находятся в стандартной директории.

    Следующая строка является декларацией функции main() с указанием имени функции и типа возвращаемого значения (void – никакое значение функцией не возвращается). Каждая программа обязательно должна иметь одну функцию со стандартным именем main().

    Далее в фигурных скобках описывается тело функции. Назначение отдельных операторов программы указывается в виде комментариев.

    Диалог с пользователем ведется на экране, который после выполнения данной программы будет содержать следующую информацию:

    Введите символ: A

    Вывод в символьном виде A

    Введите ваше имя и фамилию: Kostya Aksenov

    Меня зовут Kostya Aksenov. Длина строки 13

    Введите два целых числа (положительное и отрицательное): 315 -27

    Вывод в десятичном формате чисел со сдвигом вправо и фиксированной длиной вывода.

    315 ->

    -27

    Вывод в шестнадцатеричном формате чисел 13b и ffffffe5

    Введите два числа с плавающей точкой (положительное и отрицательное): 127.361 -574.953

    Вывод в десятичном формате чисел с заданной точностью.

    127.361 и -574.953

    Вывод в экспоненциальном формате чисел 1.273610e+02 и -5.749530e+02

    Введите целое беззнаковое число: 2124

    Вывод в виде десятичного целого без знака: 2124

    Вывод в виде восьмеричного целого без знака: 4114

    Вывод в виде шестнадцатеричного целого без знака: 84c

    Числовое значение переменныхвводятся с клавиатуры после специального приглашения. После ввода значения переменных нажимается клавиша Enter. Затем происходит вывод введённых переменных в определённом формате. Этот алгоритм повторяется несколько раз с различными типами переменных.

    Программа завершит свою работу после нажатия на любую клавишу на клавиатуре.

    Контрольные вопросы.

    1. Спецификатор определяет тип переменной и способ её вывода.

    2. В Си имеется четыре базовых арифметических (число­вых) типа данных. Из них два целочисленных — char, int — и два плавающих (вещественных) — float и double. Кроме того, в программах можно использовать некоторые модификации этих ти­пов, описываемых с помощью служебных слов — модификаторов. Существуют два модификатора размера — short (короткий) и long (длинный) — и два модификатора знаков — signed (знако­вый) и unsigned (беззнаковый). Знаковые модификаторы при­меняются только к целым типам.

    3. В Си нет четкого закрепления количества памяти за определёнными типами. Это отдано на реализацию конкретного компилятора под конкретную платформу. Правда, все стремятся к универсализации, как представлено в таблице ниже.

      Тип

      Размер в
      байтах (битах)


      Интервал изменения

      char

      1 (8)

      -128 .. 127

      unsigned char

      1 (8)

      0 .. 255

      signed char

      1 (8)

      -128 .. 127

      int

      2 (16)

      -32768 .. 32767

      unsigned int

      2 (16)

      0 .. 65535

      signed int

      2 (16)

      -32768 .. 32767

      short int

      2 (16)

      -32768 .. 32767

      unsigned short int

      2 (16)

      0 .. 65535

      signed short int

      2 (16)

      -32768 .. 32767

      long int

      4 (32)

      -2147483648 .. 2147483647

      unsigned long int

      4 (32)

      0 .. 4294967295

      signed long int

      4 (32)

      -2147483648 .. 2147483647

      float

      4 (32)

      3.4Е-38 .. 3.4Е+38

      double

      4 (32)

      3.4Е-38 .. 3.4Е+38

      long double

      10 (80)

      3.4Е-4932 .. 3.4Е+4932

    4. Функция printf() предназначена для форматированного вывода. Она переводит данные в символьное представление и выводит полученные изображения символов на экран. Форматы нужны для того, чтобы указывать вид, в котором информация будет выведена на экран. Отличительной чертой формата является наличие символа процент ‘%’ перед ним. Строка форматов содержит форматы для вывода значений. После строки форматов через запятую указываются имена переменных, которые необходимо вывести. Количество символов % в строке формата должно совпадать с количеством переменных для вывода. Тип каждого формата должен совпадать с типом переменной, которая будет выводиться на это место. Замещение форматов вывода значениями переменных происходит в порядке их следования. Функция форматированного ввода данных с клавиатуры scanf() выполняет чтение данных, вводимых с клавиатуры, преобразует их во внутренний формат и передает вызывающей функции. При этом программист задает правила интерпретации входных данных с помощью спецификаций форматной строки. Строка форматов аналогична функции printf(). Строка форматов и список аргументов для функции обязательны.

    5. Функция scanf() принимает несколько параметров. Первым параметром является форматная строка, в которой указывается, какой тип данных будет введён. Ввод может осуществляться в несколько переменных, соответственно в форматной строке указывается форматы для всех переменных. Далее, после первого аргумента, функции scanf() задаются переменные, в которые осуществляется ввод. Их должно быть столько, сколько форматов указано в форматной строке. Например: scanf(“%d %f”,number,count).

    6. Функция printf() аналогична функции scanf(). Если в управляющей строке функции есть форматы, после управляющей строки нужно передать переменные, которые будут выводится в строке. Их должно быть столько, сколько указано в форматной строке.

    7. Управляющие символы – символы, которые используют в строках для управления вывода. Например, перенос строки \n, или знак табуляции \t.


    написать администратору сайта