Записать в массив все гласные буквы из файла - C (СИ)
Формулировка задачи:
Помогите с заданием.
Написал код, но он почему-то не работает.
Код нужен именно на языке СИ
Срочно!!!
Заранее спасибо
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include <locale>
int main(){
setlocale(0, "Rus");
FILE *fp;
char ch[255];
char alf[] = "aeiouyAEIOUY";
char glas[] = "";
int t=0;
int y, r, m;
printf("\nИз строки текстового файла вывести все гласные буквы\n");
if ((fp = fopen ("1.txt","r"))!=NULL){ // если файл открыт
fgets(ch,255,fp);
y=strlen(ch);
r=strlen(alf);
m=strlen(glas);
for(int i = 0; i < y; i++){
for(int z = 0; z = r; z++){
if(ch[i] == alf[z]) glas[t] = alf[z]; t++;
}
}
}
fclose(fp);
printf("Все гласные буквы:\n");
for(int k = 0; k < m; k++){
printf("%s", glas[k]);
printf("\n");
}
getch();
}
мб кто ответит?
Поясню задание:
Дан файл, в котором содержится строка, например, BasIk thE best langUaGe. Необходимо из этой строки выбрать все гласные буквы и записать их в массив, а затем вывести всё на экран.
Помогите, плиз!!
Решение задачи: «Записать в массив все гласные буквы из файла»
textual
Листинг программы
if(ch[i] == alf[z]) glas[t] = alf[z]; t++;
Объяснение кода листинга программы
В данном коде выполняется сравнение символа 'ch[i]' с буквой 'alf[z]'. Если они равны, то в массив 'glas[t]' записывается значение 'alf[z]'. После этого переменная 't' увеличивается на единицу. Таким образом, в массив 'glas' будут записаны все гласные буквы из файла.