В масиве symbols хранится сколько раз встречается та или иная буква в строке. Например в symbols['a'] будут данные о том сколько раз встречается сивол 'a' в строке. i и l вспомогательные переменные i используется в цикле for, а в l хранится длина строки. max - это код символа который встречается чаще всего, а maxi его индекс в строке. Ничего сложного)))  #include <stdio.h> 
 #include <stdlib.h> 
 #include <string.h> 
 #include <conio.h> 
 int main(void) 
 { 
 int symbols[256]; 
 memset( symbols, 0, sizeof(int) * 256 ); 
 int i, l; 
 int max = 0, maxi = 0; 
 char string[256]; 
 printf( "Enter a string: " ); 
 scanf( "%s", string ); 
 l = strlen( string ); 
 for( i = 0; i < l; i++ ) 
 if( (symbols[string[i]]+=1) > max ) 
 { 
 max = symbols[string[i]]; 
 maxi = i; 
 } 
 printf( "Naibolee chasto vstrechaemyi symvol '%c'", string[maxi] ); 
 getch(); 
 return 0; 
 }