Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
44
Добавлен:
16.02.2016
Размер:
1.2 Mб
Скачать

Int main ()

{

char myString[4];

cout « "Введите строку: " « '\n';

cin.getline(myString, 4);

cout « "Вы ввели: " « myString;

return 0;

}

Объявленная в начале программы строка myString может принять только три значащих символа и будет завершена нуль-терминатором. Все последующие символы, вводимые в этот строковый массив, будут отброшены. Как видно из примера, при использовании функции getline () вторым параметром следует указывать число, меньше или равное размеру вводимой символьной строки.

Большинство функций работы со строками содержится в библиотеке string.h.

Литература

  1. Глушаков С.В. , Коваль А.В., Черепнин С.А. Язык программирования С++, учебный курс: Харьков: «Фолио Аст», 2001-500 с.

  2. Харви Дейтел, Пол Дейтел, Как программировать на С++: Третье издание. Пер. с англ.-М.: ЗАО «Издательство БИНОМ», 2001 г. -1152 с.: ил.

  3. Либерти, Джесс. Освой самостоятельно С++: Пер. с англ.-М.: ЗАО «Издательство Бином», 2001г,-1152 с.

Упражнения для самопроверки

  1. Элементы массива связаны тем, что они имеют одно и то же ______ и ________ .

  2. Число, используемое для обращения к отдельному элементу массива , называется ________.

  3. Массив использующий два индекса, называется _______.

  4. Укажите истинность или ложность следующих утверждений:

  1. массив может хранить много различных типов данных;

  2. индексы массива должны иметь тип float;

  3. если список инициализации содержит начальных значений больше, чем элементов массива, то это – ошибка;

  1. Напишите следующие операторы для массива fract.

a)определите именованную константу arS с начальным значением 10;

b)объявите массив с числом элементов arS типа double, имеющими нулевые начальные значения;

c)назовите четвертый элемент от начала массива;

d)обратитесь к элементу массива 4;

e)присвойте значение 3.333 элементу массива 9;

f)присвойте значение 45.234 седьмому элементу массива;

g)выведите все элементы массива на экран, используя оператор цикла for. Определите целую переменную I в качестве управляющего параметра цикла.

6)скопируйте массив s, объявленный как double s[11];, в первую часть массива f, объявленного как double f[34];.

7)укажите в каком порядке будут обнуляться элементы двумерного массива klo размером 3 на 5 следующим фрагментом программы:

for(rw=0;rw<3;rw++)

for(col=0;col<5;col++)

klo[rw][col]=0;

8) Указатель-это переменная, которая содержит в качестве своего значения _______ другой переменной;

9)единственным целым, которое может быть присвоено указателю, является ______;

10)найдите ошибку в каждом из следующих фрагментов программ, полагая, что zPtr будет ссылаться на массив z:

int *zPtr;

int *aPtr=NULL;

void *sPtr=NULL;

int num,I;

int z[5]={1,2,3,4,5};

sPtr=z;

  1. ++zPtr;

  2. num=zPtr;

  3. num=*zPtr[2];

  4. for(i=0;i<5;i++)

cout<<zPtr[i]<< endl;

  1. num=*sPtr;

  2. ++z;

  3. char s[10];

cout<< strncpy(s,”Hello”,5)<< endl;

  1. char s[12];

strcpy(s,”Welcome Home”);

  1. if(strcmp(string1,string2))

cout <<”Строки равны”<< endl;

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

Соседние файлы в папке ЛекцииКарасева