Практические / Отчеты студентов 2011-2012 / ВТ-11 Лр / Галкин / Лабораторная работа N8
.docxМОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЛЕСА
Факультет электроники и системотехники.
Лабораторная работа № 8
по программированию на языке высшего уровня С
Тема: «Строки»
Выполнил студент: Галкин И.В. ВТ-11
Проверил: Ларионов Н.В.
Москва 2011
Что ж? под елкою высокой,
Видит, белочка при всех
Золотой грызет орех,
Изумрудец вынимает,
А скорлупку собирает,
Кучки равные кладет
И с присвисточкой поет
При честном при всем народе:
Во саду ли, в огороде.
Ввести текст с клавиатуры или инициализировать массив строк:
Написать программу в виде функций
1. Вывести текст на экран оформив его в красивый арнамент.
2. Подсчитать количество слов из одной буквы в тексте.
3. Подсчитать количество двоеточий в каждой строке.
4. Упорядочить текст по первой букве первого слова строки по убыванию
Решение:
1.2.3.задания
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<string.h>
int main()
{
const int n=9;
int j,i,k;
char c,s[40];
char mas[n][40]={" Chto g ? pod elkou visokoi,",
" Vidit,belochka pri vsex",
" Zolotoi grizet orex,",
" Izumrudec vinimaet,",
" A skorlupku sobiraet,",
" Kuchki ravnie kladet",
" I s prisvistochkoi poet",
" Pri chestnom pri vsem narode:",
" Vo sadu li, v ogorode."};
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");
k=0;
for (j=0;j<9;j++){
k=0;
for (i=0;i<40;i++)
s[i]=mas[j][i];
for (i=0;i<40;i++)
if(s[i]==' '&& s[i+2]==' ')
k++;
printf ("k=%i\n",k);}
for (j=0;j<9;j++){
while (mas[i][j]!='\0'){
if(mas[i][j]==':')k++;j++;}}
printf("K-vo dvoetochii= %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=9;
int j,i,k;
char c,*st;
char *mas[]={" Chto g ? pod elkou visokoi,",
" Vidit,belochka pri vsex",
" Zolotoi grizet orex,",
" Izumrudec vinimaet,",
" A skorlupku sobiraet,",
" Kuchki ravnie kladet",
" I s prisvistochkoi poet",
" Pri chestnom pri vsem narode:",
" Vo sadu li, v ogorode."};
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;
}