Void main(void)

{ int a[3][4];

int i,j;

int s=0;

clrscr();

for (i=0; i<=2; i++)

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

{cout<<"a["<<i<<"]["<<j<<"]=";

cin>>a[i][j];

if ((a[i][j]%3)==0) s++;}

cout<<s;

getche(); }

Лабораторная работа 4. Строки

1. Задан массив строк, содержащих фамилию, имя и отчество через пробел. Создать три массива, содержащих отдельно фамилию, имя и отчество.

2. Задана строка. Определить, каких букв больше, гласных или согласных.

3. Заданы массив строк, содержащих фамилии студентов, и массив полученных ими оценок. Определить, какие студенты имеют оценку больше среднего балла, и сколько их.

4. Заданы массив строк, содержащих фамилии студентов, и массив полученных ими оценок. Отсортировать студентов от самого успевающего к самому неуспевающему.

5. Определить, является ли слово палиндромом (читается ли оно слева направо и справа налево одинаково. Например, слово "шалаш" – палиндром).

6. Задан массив строк. Записать каждую строку наоборот.

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

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

Пример

Задана строка, состоящая из символов латинского алфавита. Определить частоту вхождения разных букв.

# include <iostream.h>

# include <conio.h>

# include <string.h>

# include <stdio.h>

Void main(void)

{ char str[80], lat[]="qwertyuiopasdfghjklzxcvbnm";

int i, j, s[26];

for (i=0; i<=25; i++)

s[i]=0;

clrscr();

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

gets(str);

for (i=0; i<=25; i++)

for (j=0; j<=strlen(str)-1; j++)

if (lat[i]==str[j]) s[i]++;

for (i=0; i<=25; i++)

cout<<lat[i]<<": "<<float (s[i])/strlen(str)<<"\n";

getche(); }

Лабораторная работа 5. Указатели

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

Пример

Задана строка, состоящая из символов латинского алфавита. Определить частоту вхождения разных букв.

# include <iostream.h>

# include <conio.h>

# include <string.h>

# include <stdio.h>

Void main(void)

{ char *str, lat[]="qwertyuiopasdfghjklzxcvbnm", *str1;

int i, s[26];

for (i=0; i<=25; i++)

s[i]=0;

clrscr();

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

gets(str);

str1=str;

for (i=0; i<=25; i++)

{while (*str1)

{if (lat[i]==*str1) s[i]++;

str1++;}

str1=str;}

for (i=0; i<=25; i++)

cout<<lat[i]<<": "<<float (s[i])/strlen(str)<<"\n";

getche(); }


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: