How to convert part of a string between two indexes to uppercase in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>
#include <ctype.h>
  
void convert_part_to_uppercase(char s[], int idx_from, int idx_to) { 
    if (idx_from < 0 || idx_to > strlen(s)) return;
            
    for (int i = 0; i < strlen(s); i++) {
         if ((i >= idx_from && i <= idx_to) && (s[i] >= 'a' && s[i] <= 'z')) {
             s[i] = toupper(s[i]);
         }
    }
}
int main() 
{                       
    char s[] = "c programming"; 
     
    convert_part_to_uppercase(s, 3, 5);
    puts(s);
     
    convert_part_to_uppercase(s, 8, 9);
    puts(s);
      
    return 0; 
} 
   
   
   
/*
run:
   
c pROGramming
c pROGraMMing
   
*/

 



answered Nov 12, 2019 by avibootz
edited Nov 16, 2019 by avibootz

Related questions

...