c++ - Can someone help me debug this program -


here code far, think doing job right , believe problem arrays.

#include <iostream> #include <cctype> #include <fstream>  using namespace std;  const char filename[] = "text.txt";  int main() {     string line;     ifstream inmystream(filename);     int c;     int uppercasecount[26] = { 0 };     int lowercasecount[26] = { 0 };     char oneletter;      if (inmystream.is_open())         {             while (getline(inmystream, line))             {                 c += line.length();             }              (unsigned n = 0; n < line.length(); ++n)             {                 oneletter = char(line[n]);                 if (oneletter >= 'a' && oneletter <= 'z')                  {                     uppercasecount[int(oneletter) - 'a']++;                 }                 else if (oneletter >= 'a' && oneletter <= 'z')                 {                     lowercasecount[int(oneletter) - 'a']++;                 }             }         }         inmystream.close();          cout << "uppercase characters: " << uppercasecount << endl;         cout << "lowercase characters: " << lowercasecount <<endl;         cout << "digits: " << c << endl;      return 0; } 

here's output i'm getting--->

c:\users\house\desktop\lab11>test

uppercase characters: 0x28fcf4

lowercase characters: 0x28fd5c

digits: 1959532772

c:\users\house\desktop\lab11>

here working example counting uppercases lowercases , numbers

#include <iostream> #include <cctype> #include <fstream>  using namespace std;  const char filename[] = "text.txt";  int main() {     string line;     ifstream inmystream(filename);     int c=0;//counts digits     int uppercount=0;//counts uppercases     int lowercount=0;//counts lowercases     char oneletter;      if (inmystream.is_open())         {             while (getline(inmystream, line))             {                  (unsigned n = 0; n < line.length(); ++n)                 {                     oneletter = line[n];                     if (oneletter >= 'a' && oneletter <= 'z')                      {                         uppercount++;                     }                     else if (oneletter >= 'a' && oneletter <= 'z')                     {                         lowercount++;                     }                     else if (oneletter >= '0' && oneletter <= '9'){                         c++;                     }                 }             }          }          inmystream.close();          cout << "uppercase characters: " << uppercount << endl;         cout << "lowercase characters: " << lowercount <<endl;         cout << "digits: " << c << endl;      return 0; } 

hope helped ;)


Comments

Popular posts from this blog

apache - Remove .php and add trailing slash in url using htaccess not loading css -

javascript - jQuery show full size image on click -