Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Рассмотрим пример кода программы, выводящей в текстовом режиме диалог регистрации пользователя




//--- --листинг программы----------------------------------------

#include <stdio.h> // библиотека стандартного ввода вывода

#include <conio.h> // библиотека консольного ввода вывода

 

//--- --главная функция программы--------------------------------

int main(int argc, char* argv[])

{// main

//--- --объявление локальых переменных---------------------------

int left=21; // расстояние от левой границы экрана

// до левого верхнего угла окна

int top=5; // расстояние от верхней границы экрана

// до левого верхнего угла окна

int width=40; // ширина окна

int height=17; // высота окна

char str[100]=

"Registration"; // текст заголовка

 

//----- рисуем шапку окна ----------------------------------------

textbackground(BLUE); // определяем цвет заливки фона

gotoxy(left,top); // переводим курсор

 

for(int i=0;i<width;i++) // заполняем заливкой

cprintf(" "); // область заголовка

 

gotoxy(left,top+1); // переводим курсор

 

for(int i=0;i<width;i++) // заполняем заливкой

cprintf(" "); // область заголовка

 

//----- выводим имя окна -----------------------------------------

gotoxy(left+1,top+1); // переводим курсор

textcolor(WHITE); // определяем цвет текста

textbackground(BLUE); // определяем цвет заливки фона

cprintf("%s",str); // выводим заголовок окна

 

//----- рисуем верхнюю рамку -------------------------------------

gotoxy(left,top+2); // переводим курсор

textcolor(BLUE); // определяем цвет текста

textbackground(WHITE); // определяем цвет заливки фона

cprintf("%c",201); // выводим левый верхний уголок

 

for(int i=0;i<width-2;i++)// прорисовываем верхний контур окна

cprintf("%c",205); // двойной линией

 

cprintf("%c",187); // выводим верхний правый уголок окна

 

//----- рисуем среднюю часть окна --------------------------------

for(int i=0;i<height-5;i++) // прорисовываем окно по всей высоте

{// for

gotoxy(left,top+3+i); // переводим курсор

cprintf("%c",186); // выводим две вертикальные черты для

// формирования левой вертикальной

// границы окна

 

for(int i=0;i<width-2;i++)// заполняем область окна

cprintf(" "); // фоновой заливкой

 

cprintf("%c",186); // выводим две вертикальные черты для

// формирования правой вертикальной

// границы окна

}// end for

 

//----- рисуем нижнюю рамку --------------------------------------

gotoxy(left,top+height-2);// переводим курсор

textcolor(BLUE); // определяем цвет текста

textbackground(WHITE); // определяем цвет заливки фона

cprintf("%c",200); // выводим левый нижний уголок окна

 

for(int i=0;i<width-2;i++)// прорисовываем по нижнюю границу окна

cprintf("%c",205); // двойной линией

 

cprintf("%c",188); // выводим правый нижний уголок окна

 

gotoxy(left,top+height-1);// переводим курсор

 

for(int i=0;i<width;i++) // прорисовываем область

cprintf(" "); // уведомления

 

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

textcolor(BLACK); // определяем цвет текста

textbackground(WHITE); // определяем цвет заливки фона

 

gotoxy(left+6,top+5); // переводим курсор

cprintf("Name:"); // выводим текстовую строку

 

gotoxy(left+6,top+7); // переводим курсор

cprintf("Patronimic:"); // выводим текстовую строку

 

gotoxy(left+6,top+9); // переводим курсор

cprintf("Surname:"); // выводим текстовую строку

 

gotoxy(left+6,top+11); // переводим курсор

cprintf("Password:"); // выводим текстовую строку

 

//----- прорисовка полей для ввода -------------------------------

textcolor(BLACK); // определяем цвет текста

textbackground(BLACK); // определяем цвет заливки фона

 

gotoxy(left+18,top+5); // переводим курсор

cprintf(" ");// визуализируем область ввода

 

gotoxy(left+18,top+7); // переводим курсор

cprintf(" ");// визуализируем область ввода

 

gotoxy(left+18,top+9); // переводим курсор

cprintf(" ");// визуализируем область ввода

gotoxy(left+18,top+11); // переводим курсор

cprintf(" ");// визуализируем область ввода

 

//----- ждем заполнения полей ------------------------------------

gotoxy(left+18,top+5); // переводим курсор в первое

// заполняемое поле

 

getch(); // задержка завершения работы приложения

return 0;

}// end main

//--------------------------------------------------------------

 

В начале текста программы подключаются заголовочные файлы библиотек для осуществления доступа к описанным в них функциям форматированного ввода вывода. Затем объявляется главная функция main, в которой и описываются основные действия, выполняемые программой. В самом начале блока операторов функции main объявляются константы, значения которых будут определять параметры выводимого окна. Затем посимвольно “прорисовывается” диалоговое окно. Для “рисования” окна применены подходящие символы. В конце программы курсор переведен в первую область ввода. Далее в текст данной программы можно включить процедуры обработки вводимых данных.

В результате выполнения программы на экране будет отображен диалог регистрации пользователя.

 
 

 

Результат выполнения программы

 

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

 

//--- --листинг программы----------------------------------------

#include <stdio.h>

#include <conio.h>

 

int main(int argc, char* argv[])

{// main

int i; // код символа

int j=0;// количеств символов в строке

 

for(i=0;i<256;i++) // цикл вывода 256 символов

{// for

printf("%c=%3d ",i,i);// вывод символа

// и соответствующего ему кода

if(++j>=10) // формирование строк по 10 символов

{// if

j=0; // сбрасываем счетчик символов в строке

putchar('\n'); // переводим курсор на новую строку

}// end if

}// end for

 

getchar();

}// end main

 
 

//--------------------------------------------------------------

 

Результат выполнения программы

Задание

Используя представленные функции ввода вывода реализовать диалог пользователя для программы, выполненной в пред идущей работе.

 

Содержание отчета

 

1. Титульный лист

2. Наименование лабораторной работы

3. Цели и задания к выполнению лабораторной работы

4. Краткие теоретические сведения

5. Листинг разработанной программы с подробными комментариями

6. Вывод по теме выполненной работы

 





Поделиться с друзьями:


Дата добавления: 2016-09-03; Мы поможем в написании ваших работ!; просмотров: 347 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Свобода ничего не стоит, если она не включает в себя свободу ошибаться. © Махатма Ганди
==> читать все изречения...

2307 - | 2069 -


© 2015-2024 lektsii.org - Контакты - Последнее добавление

Ген: 0.008 с.