Задача: Сделать большими все буквы в тех словах, в которых есть по крайней мере одна пара подряд идущих гласных букв.
#include <stdio.h>
#include <locale.h>
int main()
{
char glas[]="ауоыиэяюёе";
char text[]="пркн ооокпс аунос";
int start_i=0,
size=14,
n=0,
pg=0;
setlocale( LC_ALL, "rus" );
for(int i=0;i<size;++i)>==glas[j])
{
n++;
i++;
j=0;
}
}
printf("N is %d %d %d\n",n,i,start_i);
if(n==2)
{
puts("A2");
for(int z=start_i;z<size;z++)>==' ')
for(;i<size;++i)>!=' ')
break;
start_i=i;
}
n=0;
}
printf("%s\n",text);
}
Помогите пожалуйста что там не правильно
Другие языки программирования и технологии
задачка на языке СИ что то не делает по условию задачи
#include <stdio.h>
#include <conio.h>
#include <locale.h>
#define BUF 80
enum msg { INPUT, OUTPUT, EMPTY };
void labuda(char *);
void ru1251toupper(char *, size_t, size_t);
void ui(unsigned short);
int main() {
char text[BUF];
ui(INPUT);
fgets(text, BUF, stdin);
labuda(text);
if (text[1]) {
ui(OUTPUT);
puts(text);
} else ui(EMPTY);
_getch();
}
void labuda(char * _str) {
size_t n = 0, m, k, beg = 0, end = 0;
int begword = 0, pair = 0;
char letters[] = {-96,-91,-15,-88,-82,-29,-21,-19,-18,-17};
while (_str[n] != 0) {
if (!begword && _str[n] != 32) {
begword = 1;
end = beg = n;
} else if (_str[n] != 32) ++end;
if (_str[n] == 32) {
begword = 0;
end = n - 1;
if (pair) {
ru1251toupper(_str, beg, end);
pair = 0;
}
}
if (!pair && _str[n] != 32) {
for (m = 0; m < 10; m++) {
if (letters[m] == _str[n]) {
for (k = 0; k < 10; k++) {
if (letters[k] == _str[n + 1]) {
pair = 1;
break;
}
}
if (pair) break;
}
}
}
++n;
}
if (pair) ru1251toupper(_str, beg, --end);
}
void ru1251toupper(char * _str, size_t _beg, size_t _end) {
for (_beg; _beg <= _end; _beg++)
if (_str[_beg] == -15) --_str[_beg];
else if (_str[_beg] < -16 && _str[_beg] > -33) _str[_beg] -= 80;
else if (_str[_beg] < -80 && _str[_beg] > -97) _str[_beg] -= 32;
else if (_str[_beg] < 123 && _str[_beg] > 96) _str[_beg] -= 32;
}
void ui(unsigned short _command) {
setlocale(LC_CTYPE, "Russian_Russia.1251");
switch (_command) {
case INPUT: printf("Введите строку: \n"); break;
case OUTPUT: printf("Строка преобразована: \n"); break;
case EMPTY: printf("\aСтрока пуста! \n"); break;
}
setlocale(LC_CTYPE, "English_United States.866");
}
#include <conio.h>
#include <locale.h>
#define BUF 80
enum msg { INPUT, OUTPUT, EMPTY };
void labuda(char *);
void ru1251toupper(char *, size_t, size_t);
void ui(unsigned short);
int main() {
char text[BUF];
ui(INPUT);
fgets(text, BUF, stdin);
labuda(text);
if (text[1]) {
ui(OUTPUT);
puts(text);
} else ui(EMPTY);
_getch();
}
void labuda(char * _str) {
size_t n = 0, m, k, beg = 0, end = 0;
int begword = 0, pair = 0;
char letters[] = {-96,-91,-15,-88,-82,-29,-21,-19,-18,-17};
while (_str[n] != 0) {
if (!begword && _str[n] != 32) {
begword = 1;
end = beg = n;
} else if (_str[n] != 32) ++end;
if (_str[n] == 32) {
begword = 0;
end = n - 1;
if (pair) {
ru1251toupper(_str, beg, end);
pair = 0;
}
}
if (!pair && _str[n] != 32) {
for (m = 0; m < 10; m++) {
if (letters[m] == _str[n]) {
for (k = 0; k < 10; k++) {
if (letters[k] == _str[n + 1]) {
pair = 1;
break;
}
}
if (pair) break;
}
}
}
++n;
}
if (pair) ru1251toupper(_str, beg, --end);
}
void ru1251toupper(char * _str, size_t _beg, size_t _end) {
for (_beg; _beg <= _end; _beg++)
if (_str[_beg] == -15) --_str[_beg];
else if (_str[_beg] < -16 && _str[_beg] > -33) _str[_beg] -= 80;
else if (_str[_beg] < -80 && _str[_beg] > -97) _str[_beg] -= 32;
else if (_str[_beg] < 123 && _str[_beg] > 96) _str[_beg] -= 32;
}
void ui(unsigned short _command) {
setlocale(LC_CTYPE, "Russian_Russia.1251");
switch (_command) {
case INPUT: printf("Введите строку: \n"); break;
case OUTPUT: printf("Строка преобразована: \n"); break;
case EMPTY: printf("\aСтрока пуста! \n"); break;
}
setlocale(LC_CTYPE, "English_United States.866");
}
заглавные может нужно описать
Похожие вопросы
- Нужна помощь)) Есть условие задачи для создания программы на СИ++
- язык си. задача по языку Си. Задаются коэффициенты системы из трёх линейных уравнений. Найти корни.
- while(!((str[i]>='0'&&str[i]<='9')||str[i]=='\0')) как перевести на человеческий язык это условие? - Язык си
- Почему язык СИ такой сложный?
- помогите....не представляю что делать с этой задачей....язык си....
- Задачка по нахождению суммы цифр числа на языке Си... Не могу разобраться с функциями Div и Fmod...
- Условие при котором отбираются слова 5 или более символов. Язык Си.
- Программирование на языке СИ с использованием подпрограммы-функции
- Задачка сложная по Си. 8 королев. Вопрос внутри.
- Задача по языку Си