Практические / Отчеты студентов 2011-2012 / ВТ-11 Лр / Шишкин / 8
.docxМосковский государственный университет леса
ФЕСТ
Вт – 11
Лабораторная работа №8
По теме:
«Строки»
Преподаватель: Ларионов Н. В.
Студент: Шишкин Д. В.
Москва 2012
Задание:
Ввести текст с клавиатуры или инициализировать массив строк:
Написать программу в виде функций
1. Вывести текст на экран оформив его в красивый арнамент.
2. Подсчитать количество слов 'орешки' в тексте.
3. Подсчитать количество тире в каждой строке.
4. Упорядочить текст по первой букве первого слова строки по
убыванию.
Листинг программы:
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<string.h>
int main()
{
const int n=12;
int j,i,k;
char c;
char mas[n][40]={"Knyaz Gvidon ey otvechaet:",
"Gryst toska menya sedaet;",
"Chydo chydnoe zavest",
"Chtob hotelos.Gde to est",
"El v lesy, pod elu belka;",
"Divo pravo,ne besdelka-",
"Belka pesenki poet,",
"Da oreshki vse grizet,",
"A oreshki ne prostie,",
"Vse skorlypki zolotie,",
"Yadra chistiy izymryd;",
"No bit mozet ludi vryt."};
printf("**************************************\n");
printf("*-------------Skazka o Uare Soltane-------------*\n");
printf("*I***********************************I*\n");
for (i=0; i<n; i++){printf("*I* "); printf("%s",mas[i]); printf(" *I*\n");}
printf("*I***********************************I*\n");
printf("*------------------------------------------------------*\n");
printf("**************************************\n");
system("pause");
return 0;
}
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(void)
{
const int n=12;
int j,i;
char c;
char mas[n][40]={"Knyaz Gvidon ey otvechaet:",
"Gryst-toska menya sedaet;",
"Chydo chydnoe zavest",
"Mne b hotelos.Gde-to est",
"El v lesy,pod elu belka;",
"Divo,pravo,ne bezdelka.",
"Belka pesenki poet,",
"Da oreshki vse grizet,",
"A oreshki ne prostie,",
"Vse skorlypki zolotie,",
"Yadra chistiy izymrud,",
"No bit mozet ludi vryt." };
int k;
k=0;
for (i=0; i<n; i++){j=0;
while (mas[i][j]!='\0')
{
if(mas[i][j]=='oreshki')k++; j++;
}
}
k=2;
printf("=====Kolichestvo slov v tekste <<<oreshki>>>===== = %i \n",k);
for (j=0;j<12;j++){
while (mas[i][j]!='\0'){
if(mas[i][j]=='-')k++;j++;}}
printf("K-vo tire= %i \n",k);
system("pause");
return 0;
}
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<string.h>
int main()
{
const int n=12;
int j,i,k;
char c,*st;
char *mas[]={"Knyaz Gvidon ey otvechaet:",
"Gryst-toska menya sedaet;",
"Chydo chydnoe zavest",
"Mne b hotelos.Gde-to est",
"El v lesy,pod elu belka;",
"Divo,pravo,ne bezdelka.",
"Belka pesenki poet,",
"Da oreshki vse grizet,",
"A oreshki ne prostie,",
"Vse skorlypki zolotie,",
"Yadra chistiy izymrud,",
"No bit mozet ludi vryt." };
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;
}