I am writing a program to count words as practice but I am running into a problem where it is incorrectly counting no matter which option I choose.

```
#include <stdio.h>
#include <stdbool.h>
#include <string.h>

int main(int argc, char **argv){
    int totalcount = 0; //hold overall count
    for(int i = 2; i < argc; i++){
        int count = 0; //hold count for each file
        int c; //temporarily hold char from file 
        FILE *file = fopen(argv[i], "r");

            if (strcmp("-c",argv[1])){
                while((c = fgetc(file)) != EOF){
                    count++;
                }
            }
            else if(strcmp("-w",argv[1])){
                bool toggle = false; //keeps track whether the next space or     line indicates a word
                while((c = fgetc(file)) != EOF){
                    if(!toggle && ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z'))){
                        toggle = true;
                    }
                    if(toggle && ((c == '\n') || (c == ' '))){
                        count++;
                        toggle = false; 
                    }
                }
            }
            else{
                while((c = fgetc(file)) != EOF){
                    if(c == '\n'){
                        count++;
                }
            }
        }
        printf("%d %s", count, argv[i]);
        fclose(file);
        totalcount += count;
    }
    if (argc > 3){
        printf("%d total", totalcount);
    }

    return 0;
}

```

I don't know why my logic for char count doesn't work. I have ran through my logic when writing each section and it doesnt make sense to me why it would not me working. Any help would be greatly appreciated.