Here is the reference solution for Problem Set 2, initials.c // A simple program to find the initial letters of each word in a name, // output the capitalized version of those letters. // This is "Initializing" from CS50x problem set 2. // // Author: david@newtongwc.org #include <stdio.h> #include <cs50.h> #include <string.h> #include <ctype.h> int main(void) { // This is allocated on the heap, must free it at the end to // avoid a memory leak. string name = GetString(); int num_chars = strlen(name); for (int i=0; i < num_chars; ++i) { if (i == 0 || (name[i] != ' ' && name[i-1] == ' ')) { printf("%c", toupper(name[i])); } } printf("\n"); free(name); return 0; } |