|
Программирование >> Элементы языков с и с++
) while printf( %s\n ,m); getch(); 1 tmain Вызывающая программа (перенаправляет стандартный ввод/вывод) приведена в листинге 9.8. подсчет количества символов, слов и строк, введенных с клавиатуры*/ int с; int nc,nl,nw, in; nc=nl=nw=0; in=no; while((c=getchar())!= eof) EOF определен в библиотеке stdio.h как #define EOF -1 m[i]=c; i++; if(i<len) in[i] = \0; else break; if(c!=10) ПС++; if(c==\n) nl++; if(c== II c==\n 11 c==\t) in=no; находимся вне слова else if(in==no) /*попадаем в слово и засчитываем его*/ in=yes; nw++; {Листинг 9.8 -------------------------------------------------------------- 36.срр : Defines the entry point for the console application. ttinclude stdafx.h ttinclude <stdio.h> ttinclude <stdlib.h> systemO ttinclude <conio.h> getchO int tmain(int argc, char* argv[]) { system( C:\\35.EXE <C:WPROVERKA.TXT ); ввод из файла и вьшод на экран после 1-го шага свойство перенаправленности теряется и поэтому при следующем вьшолнении программы ввод будет с того устройства, которое для этого было предусмотрено в программе system( С:\\35.EXE > С:WPROVERKAl.ТХТ ); ввод с экрана и вывод в файл C:XWlN0OWS\syslem32\£md.exB 2222 продолжения нажмите любую клавишу № PROVCRKA-Блокнот; Файл [Правка Фордат Вид правка 1-я строка - это строка из входного файла PROVERKA Строка из двоек попала в выходной файл из-за перенаправления ввода Р PR0VIRKA1 Ьлокнот Файл Орлека Форнат Вил правка 2222 Рис. 9.6. Результат работы программы по перенаправлению ввода/вывода Функции стандартного ввода/вывода К этим функциям относятся следующие: О Функция getchar (). Формат: getchar () ;. Вводит с клавиатуры один символ и выдает его. Обращаться к этой функции можно так: char с; (ИЛИ int с; ) c=getchar () ; □ Функция putchar (). Формат: putchar(char с); Выводит значение переменной с (один символ) на стандартное выводное устройство. Обращение: putchar(с); □ Функция printf О. Формат: printf(Control,argl,arg2,...,argn); Функция форматного вывода. Выводит на экран содержимое argi,arg2, ... ,argn И возвращает количество выводимых байтов. Здесь Control - управляющая символьная строка, в которой находятся форматы вывода на экран для соответствующих аргументов argl,arg2, ... ,argn, Т. е. первый формат- для вывода argl, второй - для arg2 И Т. д. Все символы, находящиеся между форматами, выводятся один к одному (т. е. не форматируются), что дает возможность вывода дополнительного текста для улучшения читаемости результата вывода. Результат работы программы показан на рис. 9.6. После вывода на экран первой строки (mil) программа ждет ввода с клавиатуры, т. к. после первого выполнения вызываемой программы свойство перенаправленности теряется и ввод снова должен идти с клавиатуры (как и предусмотрено в вызываемой программе). Поэтому в ответ на ожидание ввода была набрана строка из дво-ек(22222). Признаком конца ввода строки является <Enter>.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |