#Can someone comment the stuff this C code does?

2 messages · Page 1 of 1 (latest)

small heath
#

#include <stdio.h>

int main() {

char frase[100];
scanf("%[^\n]s",frase);

int i,contnum=0,contlet=0;
for(i=0;frase[i]!='\0';i++) {
    if(frase[i]=='@'){
        frase[i]='\0';
        break;
    }
    else if(frase[i]>=48 && frase[i]<=57){
        frase[i]='*';
        contnum++;
    }
    else if(frase[i]>=97 && frase[i]<=122){
        frase[i]='_';
        contlet++;
    }
}

printf("%s\n",frase);
printf("Total numericos substituidos: %d\n",contnum);
printf("Total alfabeticos substituidos: %d\n",contlet);

}

drifting harness
#
#include <stdio.h>


//replaces numbers in an input string with "*" and letters with "_", breaks when "@" is found.
//example:
//some1word234@1gn0re ->
//____*____***

int main() {
    //get string input
    char frase[100];
    scanf("%[^\n]s",frase);
    
    //initialize letter and number count
    int i,contnum=0,contlet=0;

    //loop the string
    for(i=0;frase[i]!='\0';i++) {
        //if the string contains an "@", stop
        if(frase[i]=='@'){
            frase[i]='\0';
            break;
        }
        //if the string contains a number, count the numbers to our total and replace it with a "*"
        else if(frase[i]>=48 && frase[i]<=57){
            frase[i]='*';
            contnum++;
        }
        //if the string contains a letter, count the letter to our total and replace it with a "_"
        else if(frase[i]>=97 && frase[i]<=122){
            frase[i]='_';
            contlet++;
        }
    }
    
    //print our input as _ and * characters
    printf("%s\n",frase);

    //print the total amount of letters and numbers in the string
    printf("Total numericos substituidos: %d\n",contnum);
    printf("Total alfabeticos substituidos: %d\n",contlet);
}