Дан текст на английском языке. В нём все гласные, согласные заменить на прописные - C (СИ)
Формулировка задачи:
Кто знает подскажите что не так:
#include <stdio.h> #include <iostream> #include <stdlib.h> #include <string.h> void rm(char *s, int i); int main() { char s[50]; char *str = s; printf("Напишите текст на английском языке\n"); scanf("%s",&s); std::cin>>s; char m[12] = {'a','e','y','u','o','i','A','E','Y','U','I','O'}; for int (i = 0;(unsigned int)i<strlen(s);i++) { for int(j =0;(unsigned int)j<sizeof(m);j++) { } if(s[i] == m[j]) { rm(s,i); break; } } s[i] = tolower(s[i]); } printf("%s\n",s); } void rm(char* s, int i) { for(i;i<strlen(s);i++) { s[i]=s[i+1]; } } getch (); return 0: }
Решение задачи: «Дан текст на английском языке. В нём все гласные, согласные заменить на прописные»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> int main() { const char CChars[] = "aeyuoi"; char text[256] = {'\0'}; char* pstr; printf("source: "); fgets(text, sizeof(text) - 1, stdin); for (pstr = text; *pstr; ++pstr) { if (strchr(CChars, tolower(*pstr)) == NULL) { *pstr = tolower(*pstr); } } printf("result: %s", text); system("pause"); return 0; }