Задать алфавит автоматически, не прописывая каждую букву в коде - C (СИ)
Формулировка задачи:
Что нужно сделать, что бы алфавит в задаче задавался автоматически?
#include<math.h> #include<conio.h> #include<stdio.h> #include<string.h> main(){ char g[80], alf[26]={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'}; int r,j,i,z[26]; printf("Vvedite stroky:"); gets(g); for(j=0;j<26;j++) z[i]=0; for(i=0;i<80;i++) if(g[i]=='.') r=i; for(j=0;j<26;j++) for(i=0;i<r;i++){ if(g[i]==alf[j]){ z[i]=z[j]+1;} for(j=0;j<26;j++) if(z[j]!=0) printf("%c=%d\n",'a'+i,z[j]); getch();}}
Решение задачи: «Задать алфавит автоматически, не прописывая каждую букву в коде»
textual
Листинг программы
char alf[26]; char letter; for (letter = 'a'; letter < ('z' + 1); letter++) { alf[letter - 'a'] = letter; }
Объяснение кода листинга программы
В данном коде происходит следующее:
- Создается массив alf размером 26 символов, предназначенный для хранения алфавита.
- В каждой ячейке массива alf[i] присваивается значение соответствующей букве алфавита, начиная с буквы 'a' и заканчивая буквой 'z'.
- Для перехода к следующей букве алфавита используется оператор for, который выполняет цикл от 'a' до ('z' + 1), т.е. до '{' (поскольку 'z' + 1 = '{' по ASCII кодировке).
- В каждой итерации цикла значение переменной letter принимает следующее значение из алфавита, а затем используется для обращения к соответствующей ячейке массива alf по индексу letter - 'a'.
- Значение переменной letter сохраняется в ячейке массива alf.
- После завершения цикла все ячейки массива alf содержат буквы алфавита в порядке их следования.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д