C程序 查找姓名首字母
在这里,我们将看到如何用C语言程序查找一个名字的首字母。下面是一些例子。
输入: Geeks for Geeks
输出: G F G
我们把所有的第一个字母
字,并以大写字母打印。
输入: Jude Law
输出: J L
步骤:
1.打印大写字母中的第一个字符。
2.遍历字符串的其余部分,用大写字母打印空格后的每个字符。
下面是打印姓名首字母的C语言程序。
// C program to print initials
// of a name
# include <stdio.h>
# include <string.h>
# include <ctype.h>
// Function declaration
void getInitials(char* name);
// Driver code
int main(void)
{
// Declare an character array for
// entering names assuming the
// name doesn't exceed 31 characters
char name[50] = "Geeks for Geeks";
printf("Your initials are: ");
// getInitials function prints
// the initials of the given name
getInitials(name);
}
void getInitials(char* name)
{
int i = 0;
if(strlen(name) > 0 &&
isalpha(name[0]))
printf("%c ", toupper(name[0]));
while(name[i] != '\0')
{
if(isspace(name[i]) != 0)
{
while(isspace(name[i]) &&
i <= strlen(name))
{
i++ ;
}
printf("%c ", toupper(name[i]));
}
i++;
}
printf("\n");
}
输出
Your initials are: G F G
时间复杂度: O(n),其中n是字符串的长度。
辅助空间: O(1),因为使用了恒定的额外空间。