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

Московский Государственный Университет Леса

ФЭСТ ВТ-11

Лабораторная работа №8.

Программирование на языках высокого уровня

Тема: “Строки”

Выполнил: студент Музалёв Д.В.

Проверил : Ларионов Н.В.

Москва 2012.

Вариант 12

Я в чёрных книгах отыскал,

Что за восточными горами

На тихих моря берегах,

В глухом подвале под замками

Храниться меч – и что же? Страх!

Ввести текст с клавиатуры или инициализировать массив строк:

Написать программу в виде функций

1. Вывести текст на экран оформив его в красивый арнамент.

2. Подсчитать количество слов в каждой строке в тексте.

3. Подсчитать количество знаков препинания в тексте.

4. Упорядочить текст по первой букве первого слова строки по

убыванию.

1)Листинг программы:

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

#include<string.h>

int main()

{

const int n=5;

int j,i;

char c;

char mas[n][40]={" Y v chernih knigah otiskal, ",

" Chto za vostochnimi gorami ",

" Na tihih mory beregah, ",

" V gluhom podvale pod zamkami ",

" Hranitsa mech - i chtoge? Strah! "

};

printf(" ************************************************\n");

printf(" ************************************************\n");

printf(" ************************************************\n");

for (i=0; i<n; i++){printf("### "); printf("%s",mas[i]); printf(" ###\n");}

printf(" ************************************************\n");

printf(" ************************************************\n");

printf(" ************************************************\n");

system("pause");

return 0;

}

2)Листинг программы:

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

int main()

{

const int n=5;

int j,i,k,m[n];

char c;

char mas[n][40]={"Y v chernih knigah otiskal,",

"Chto za vostochnimi gorami",

"Na tihih mory beregah,",

"V gluhom podvale pod zamkami",

"Hranitsa mech - i chto ge? Strah!" };

char st[40];

for(i=0;i<n;i++){j=0;

while(mas[i][j]!='\0')

{

st[j]=mas[i][j];j++;}

j=0;k=0;

while( st[j]!='\0'){

if(st[j]==' ')k++;j++;}

m[i]=k;}

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

printf("%i ",m[i]+1);

system("pause");

return 0;

}

3)Листинг программы:

#include<stdio.h>

#include<string.h>

#include<stdlib.h>z

int main()

{

const int n=5;

int j,i,k;

char c;

char mas[n][40]={"Y v chernih knigah otiskal,",

"Chto za vostochnimi gorami",

"Na tihih mory beregah,",

"V gluhom podvale pod zamkami",

"Hranitsa mech - i chto ge? Strah!" };

k=0;

for (i=0; i<n; i++){j=0;

while (mas[i][j]!='\0'){

if(mas[i][j]==','||mas[i][j]=='.'||mas[i][j]=='!'||mas[i][j]=='?')k++; j++;}}

printf("K-vo znakov prepinania = %i \n",k);

system("pause");

return 0;

}

4) Листинг программы:

#include<stdio.h>

#include<string.h>

#include<stdlib.h>

#include<string.h>

int main()

{

const int n=5;

int j,i,k;

char c,*st;

char *mas[]={"Y v chernih knigah otiskal,",

"Chto za vostochnimi gorami",

"Na tihih mory beregah,",

"V gluhom podvale pod zamkami",

"Hranitsa mech - i chto ge? Strah!" };

for (i=0; i<n-1; i++)

for(j=0;j<n-1; j++)

if(strcmp(mas[j],mas[j+1])<0)

{

st=mas[j];

mas[j]=mas[j+1];

mas[j+1]=st;}

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

puts(mas[i]);

system("pause");

return 0;

}