Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет “Львівська політехніка”
Кафедра інформаційних систем та мереж
Лабораторна робота №8
на тему
Засоби мови Cі для роботи з рядками символів
Львів 2008
Мета роботи: Здобуття практичних навичок опрацювання текстових
даних за допомогою бібліотечних функцій мови Сі.
1. Ввести речення. Подвоїти кожне входження заданого слова. Для розділення
слів використати пропуски.
2. Дані про автомобілі записано в N рядках символів, кожен з яких має таку
структуру: марка авто, номер, колір, прізвище власника, адреса власника,
відмітка про техогляд. Поля даних розділено хоча б одним символом, який
не використовується для запису вказаних даних. Підрахувати кількість
автомобілів заданої марки, які мають сріблястий колір.
Тексти програм:
1)
#include<stdio.h>
#include<conio.h>
#define n 200
void main()
{
char i,j,k,l,s[n];
puts("vvedit\' re4ennia(<100 sumvoliv)");
gets(s);
l=strlen(s);
for(i=0,j=0;i<l*2+2;i++)
{
if(*(s+i)==' '||*(s+i)=='.'||*(s+i)=='\0')
{
i++;
for(k=strlen(s);k>=i;k--)
*(s+k+i-j)=*(s+k);
k=i-j;
for(;j<i;j++)
*(s+j+k)=*(s+j);
s[i-1]=' ';
i+=k-1;
j+=k;
}
}
puts(s);
getch();
}
2)
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#define n 2
#define m 100
int posh(char *a,int e,char *z);//a-baza;nm - riadok;
//e- element dlia zposh(1..5);z- zrazok;
void main()
{
char a[n][m+1],z[20];
int e,i,j,s=n;
clrscr();
puts(" vvedit' dani v takomy formati\n");
puts("--------------------------------------------------------------------------------");
puts(" Marka:Nomer:Kolir:Vlasnuk:Adresa vl:Vidmitku pro tehohliad");
puts("--------------------------------------------------------------------------------");
for(i=0;i<n;i++)
{
gets(a[i]);
a[i][m]=1;
}
a1:clrscr();
printf("vvedit\' zrazok>>>>>>");
gets(z);
clrscr();
puts(" poshyk\n");
puts("1-Marka");
puts("2-Nomer");
puts("3-Kolir");
puts("4-Vlasnuk");
puts("5-Adresa vl.");
puts("6-Vidmitku pro tehohliad\n");
printf(" vuberit\' po 4omy shykatu >>>>");
scanf("%d",&e);
for(i=0;i<n;i++)
if(a[i][m]&&!posh(a[i],e,z))
{
a[i][m]=0;
s--;
}
clrscr();
printf(" znajdeno-%d\nshsykatu dali - 1, vuvestu - 2\n>>>>>>",s);
scanf("%d",&e);
getchar();
if(e==1)goto a1;
clrscr();
puts("-------------------------------------znajdeno-----------------------------------\n");
for(i=0;i<n;i++)
if(a[i][m]==1)
puts(a[i]);
getch();
}
int posh(char *a,int e,char *z)
{
int i,j;
for(i=0;i<m;i++)
{
if(a[i]==':')
e--;
if(e==1)
{
if(i>0)i++;
for(j=0;j<strlen(z);j++,i++)
if(a[i]!=z[j])
return 0;
return 1;
}
}
}
Відлагодження програм:
1)
2)
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!