Скажите пожалуйста, как в Си можно определить является ли буква прописной или нет?
Для латинских символов: isupper(ch), для других кодировок придется делать самой...
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#include <conio.h>
int Count(char *str)
{
int i, count = 0;
for (i = 0;i < strlen(str); i++)
if (isupper(str[i]))
count+=1;
return count;
}
void main()
{
char str[20]; int i = -1;
printf ("vvedite stroky\n");
do
i++;
while ((str[i] = getchar())!='.');
printf("%d",Count(str));
}
Марина, пробегись отладчиком по программе и сразу станет ясно, где заморочка.
У меня тоже заработало, как следует. Но только в том случае, если символы вводить в одной строке, а точку в следующей.