![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Andreyka |
![]()
Сообщение
#1
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 57 Регистрация: 16.9.2007 Город: Омск Учебное заведение: ф Вы: студент ![]() |
Здраствуйте. помогите пожалуйста. вот задание(программа на С)
Здраствуйте, помогите пожалуйстаЮ мне некуда больше обратиться. вот задание: Дан текст. Если первый символ текста не является малой Латинской буквой, то оставить его без изменения. Если же это малая латинская буква, но за начальной группой малых латинских букв не следует цифра, то так же оставить без изменения. Иначе каждую цифру, принадлежащую группе цифр, следующей за начальной группой малых латинских букв, заменить * Вот моя программа: сначала ввожу текст, потом работаю с ним(там где начинаются ошибки закомментировал) #include <stdio.h> #include <math.h> int i,j,K,M; char z,s; char lat[]="abcdefghijklmnoprstuvwxyz"; char cifra[]="1234567890"; void main() { printf("Napishite predlojenie s tochkoi v konce \n"); for (z=s=' ';z!='.';s=z) { scanf("%c",&z); printf("%c",z); } /* вот здесь начинаются ощибки */ /* {K=0; for (i=0; i<=27; i++) if (z[0]==lat[i]) { for (i=0;i<=K;i++) for (j=0;j<=27;j++) { if (text[i]==lat[j]) {K=K+1;} } for (i=0;i<=10;i++) if (text[K+1]==cifra[i]) { for (i=K+1;i<=M;i++) for (j=0;j<=10;j++) if (text[i]==cifra[j]) {M=M+1;} for (i=K;i<=M;i++) text[i]='*'; for (i=0;i<=15;i++) printf("%c",text[i]); } } for (i=0;i<=15;i++) printf("%c",&text[i]); } */ |
creer |
![]()
Сообщение
#2
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Запутано то как все :-). А строка куда вводится? ;-) "z" это же просто char, один символ. Надеюсь, никто не будет обижаться, если я напишу пример, а то исправить ошибки сложнее. :-)
Код #include <stdio.h> char lat[]="abcdefghijklmnoprstuvwxyz"; char cifra[]="1234567890"; char st[255]; int pos; int main() { printf("Write string\n"); gets(st); if (strcspn(st,lat)==0) { pos = strcspn(st,cifra); while (strcspn(st,cifra)!=strlen(st)) { st[strcspn(st,cifra)]='*'; } } printf(st); return 0; } |
Nefrit |
![]()
Сообщение
#3
|
Школьник ![]() Группа: Продвинутые Сообщений: 41 Регистрация: 12.1.2008 Из: Днепропетровск Город: Украина Днепропетровск Учебное заведение: НГУ Вы: студент ![]() |
эээээ.......зачем так сложно? (IMG:style_emoticons/default/umnik.gif) в языке Си++ есть функции, которые определяют, является ли, к примеру, переменная h, буквой isalpha(h), цыфрой isdigit(h), строчной буквой islower(h), прописной буквой isupper(h). (IMG:style_emoticons/default/beer.gif)
|
creer |
![]()
Сообщение
#4
|
Студент ![]() ![]() Группа: Продвинутые Сообщений: 121 Регистрация: 28.10.2007 Город: Екатеринбург Учебное заведение: УГТУ-УПИ Вы: студент ![]() |
Просто у автора темы было сделано примерно так же, как у меня (IMG:style_emoticons/default/smile.gif). Не стал разрушать идею (IMG:style_emoticons/default/wink.gif)
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 25.5.2025, 21:22 |
Зеркало сайта Решебник.Ру - reshebnik.org.ru