#include <stdio.h> #include <stdint.h> void to_lowercase(char *str) { uint8_t i = 0; while (str[i]) { if (str[i] >= 'A' && str[i] <= 'Z') { str[i] = str[i] + 32; } i++; } } int main() { char str[101]; fgets(str, sizeof(str), stdin); // Remove newline uint8_t i = 0; while (str[i]) { if (str[i] == '\n') { str[i] = '\0'; break; } i++; } to_lowercase(str); printf("%s", str); return 0; }
🪜 Step-by-Step Algorithm
i = 0
str[i] == '\0'
str[i]
'A'
'Z'
str[i] = str[i] + 32
i
🧠 Why +32 Works
+32
In ASCII:
'a'
'A' + 32 = 'a'
'B' + 32 = 'b'
Test Cases
Test Results
Input
Hello Embedded
Expected Output
hello embedded