<stdio.h>
<string.h>
<ctype.h>
a rijec je definisana samo kao niz velikih ili malih slova bez cifara
Treba mi odgovor sto prije
evo koda
Code:
#include <stdio.h>
#include <string.h>
#include<ctype.h>
#define MAX 300
int broj_rijeci(char s[]);
int broj_recenica(char s[]);
void zbijanje(char s[]);
main()
{
unsigned rijec=0,recenica=0;
char s[MAX];
printf("\n\n\t\tUnesite string:\n\n\t\tstring=");
gets(s);
printf("\n\n\t\t");
zbijanje(s);
puts(s);
rijec=broj_rijeci(s);
recenica=broj_recenica(s);
printf("\n\n\t\tBroj rijeci je %d",rijec);
printf("\n\n\t\tBroj recenica je %d\n\n\t\t",recenica);
puts(s);
}
int broj_rijeci(char *s)
{
int br=0,i,j,k;
j=0;
k=strlen(s);
for (i=0;i<k;i+=j+1)
{
j=i;
if (isupper(s[j])==0&&islower(s[j])==0)break;
while (1)
{
while (isupper(s[j])!=0||islower(s[j])!=0)j++;
break;
}
br++;
}
return br+1;
}
int broj_recenica(char *s)
{
int br=0,i,j,k;
k=strlen(s);
for (i=0;i<k;i++)if ((s[i]=='.'||s[i]=='?'||s[i]=='!')&&(isupper(s[i+1])||s[i+1]=='\0'))br++;/*ovo issupper pita da li je veliko slovo*/
return br;
}
void zbijanje(char *s)
{
int i=0,j;
while (s[i]!='\0')
{
while (s[i]!=' '&&s[i]!='\0')i++;
if (s[i]!='\0')
{
if (s[i+1]!=' ')i++;
else
{
j=i;
while (s[j]!='\0')s[j]=s[j+1],j++;
}
}
}
}
#include <stdio.h>
#include <string.h>
#include<ctype.h>
#define MAX 300
int broj_rijeci(char s[]);
int broj_recenica(char s[]);
void zbijanje(char s[]);
main()
{
unsigned rijec=0,recenica=0;
char s[MAX];
printf("\n\n\t\tUnesite string:\n\n\t\tstring=");
gets(s);
printf("\n\n\t\t");
zbijanje(s);
puts(s);
rijec=broj_rijeci(s);
recenica=broj_recenica(s);
printf("\n\n\t\tBroj rijeci je %d",rijec);
printf("\n\n\t\tBroj recenica je %d\n\n\t\t",recenica);
puts(s);
}
int broj_rijeci(char *s)
{
int br=0,i,j,k;
j=0;
k=strlen(s);
for (i=0;i<k;i+=j+1)
{
j=i;
if (isupper(s[j])==0&&islower(s[j])==0)break;
while (1)
{
while (isupper(s[j])!=0||islower(s[j])!=0)j++;
break;
}
br++;
}
return br+1;
}
int broj_recenica(char *s)
{
int br=0,i,j,k;
k=strlen(s);
for (i=0;i<k;i++)if ((s[i]=='.'||s[i]=='?'||s[i]=='!')&&(isupper(s[i+1])||s[i+1]=='\0'))br++;/*ovo issupper pita da li je veliko slovo*/
return br;
}
void zbijanje(char *s)
{
int i=0,j;
while (s[i]!='\0')
{
while (s[i]!=' '&&s[i]!='\0')i++;
if (s[i]!='\0')
{
if (s[i+1]!=' ')i++;
else
{
j=i;
while (s[j]!='\0')s[j]=s[j+1],j++;
}
}
}
}
[Ovu poruku je menjao arandjel88 dana 10.05.2008. u 21:56 GMT+1]
[Ovu poruku je menjao X Files dana 16.09.2008. u 13:56 GMT+1]