给定一个字符串名,我们必须找到名称的首字母
null
例如:
Input : prabhat kumar singhOutput : P K SWe take the first letter of allwords and print in capital letter.Input : Jude LawOutput : J LInput : abhishek kumar singhOutput : A K S
1) 用大写字母打印第一个字符。 2) 遍历字符串的其余部分,用大写字母打印空格后的每个字符。
C++
// C++ program to print initials of a name #include <bits/stdc++.h> using namespace std; void printInitials( const string& name) { if (name.length() == 0) return ; // Since toupper() returns int, we do typecasting cout << ( char ) toupper (name[0]); // Traverse rest of the string and print the // characters after spaces. for ( int i = 1; i < name.length() - 1; i++) if (name[i] == ' ' ) cout << " " << ( char ) toupper (name[i + 1]); } // Driver code int main() { string name = "prabhat kumar singh" ; printInitials(name); return 0; } |
JAVA
// Java program to print initials of a name class initials { static void printInitials(String name) { if (name.length() == 0 ) return ; // Since toupper() returns int, // we do typecasting System.out.print(Character.toUpperCase( name.charAt( 0 ))); // Traverse rest of the string and // print the characters after spaces. for ( int i = 1 ; i < name.length() - 1 ; i++) if (name.charAt(i) == ' ' ) System.out.print( " " + Character.toUpperCase( name.charAt(i + 1 ))); } // Driver code public static void main(String args[]) { String name = "prabhat kumar singh" ; printInitials(name); } } // This code is contributed by Danish Kaleem |
python
# Python program to print # initials of a name # user define function def printInitials(name): if ( len (name) = = 0 ): return print (name[ 0 ].upper()), for i in range ( 1 , len (name) - 1 ): if (name[i] = = ' ' ): print (name[i + 1 ].upper()), def main(): name = "Prabhat Kumar Singh" printInitials(name) if __name__ = = "__main__" : main() # This code is contributed # by prabhat kumar singh |
C#
// C# program to print initials of a name using System; class initials { static void printInitials(String name) { if (name.Length == 0) return ; // Since toupper() returns int, // we do typecasting Console.Write(Char.ToUpper(name[0])); // Traverse rest of the string and // print the characters after spaces. for ( int i = 1; i < name.Length - 1; i++) if (name[i] == ' ' ) Console.Write( " " + Char.ToUpper(name[i + 1])); } // Driver code public static void Main() { String name = "prabhat kumar singh" ; printInitials(name); } } // This code is contributed by nitin mittal. |
PHP
<?php // php program to print initials of a name function printInitials( $name ) { if ( strlen ( $name ) == 0) return ; // Since toupper() returns int, we do typecasting echo strtoupper ( $name [0]); // Traverse rest of the string and print the // characters after spaces. for ( $i = 1; $i < strlen ( $name ) - 1; $i ++) if ( $name [ $i ] == ' ' ) echo " " . strtoupper ( $name [ $i + 1]); } // Driver code $name = "prabhat kumar singh" ; printInitials( $name ); // This code is contributed by Sam007 ?> |
Javascript
<script> // Javascript program to print initials of a name function printInitials(name) { if (name.length == 0) return ; // Since toupper() returns int, // we do typecasting document.write(name[0].toUpperCase()); // Traverse rest of the string and // print the characters after spaces. for (let i = 1; i < name.length - 1; i++) if (name[i] == ' ' ) document.write( " " + name[i + 1].toUpperCase()); } let name = "prabhat kumar singh" ; printInitials(name); </script> |
输出:
P K S
另一种可能的解决方案如下:
C++
// C++ program to solve the above approach #include <bits/stdc++.h> using namespace std; void printInitials(string name) { if (name.length() == 0) return ; // split the string using 'space' // and print the first character of every word stringstream X(name); // X is an object of stringstream // that references the S string // use while loop to check the getline() function // condition while (getline(X, name, ' ' )) { /* X represents to read the string from stringstream, T use for store the token string and, ' ' whitespace represents to split the string where whitespace is found. */ cout << ( char ) toupper (name[0])<< " " ; // print split string } } // Driver code int main() { string name = "prabhat kumar singh" ; printInitials(name); return 0; } // This code is contributed by gauravrajput1 |
JAVA
// Java program to print initials of a name class initials { static void printInitials(String name) { if (name.length() == 0 ) return ; //split the string using 'space' //and print the first character of every word String words[] = name.split( " " ); for (String word : words) { System.out.print(Character.toUpperCase(word.charAt( 0 )) + " " ); } } // Driver code public static void main(String args[]) { String name = "prabhat kumar singh" ; printInitials(name); } } |
Python3
# Python3 program to print initials of a name def printInitials(name): if ( len (name) = = 0 ): return # Split the string using 'space' # and print the first character of # every word words = name.split( " " ) for word in words: print (word[ 0 ].upper(), end = " " ) # Driver code if __name__ = = '__main__' : name = "prabhat kumar singh" printInitials(name) # This code is contributed by mohit kumar 29 |
C#
// C# program to print initials of a name using System; public class initials { static void printInitials(String name) { if (name.Length == 0) return ; //split the string using 'space' //and print the first character of every word String []words = name.Split( ' ' ); foreach (String word in words) { Console.Write( char .ToUpper(word[0]) + " " ); } } // Driver code public static void Main(String []args) { String name = "prabhat kumar singh" ; printInitials(name); } } // This code is contributed by gauravrajput1 |
Javascript
<script> // javascript program to print initials of a name function printInitials( name) { if (name.length == 0) return ; // split the string using 'space' // and print the first character of every word var words = name.split( " " ); words.forEach(myFunction); } function myFunction(item) { document.write((item[0].toUpperCase()) + " " ); } // Driver code var name = "prabhat kumar singh" ; printInitials(name); // This code is contributed by gauravrajput1 </script> |
输出:
P K S
这段代码的复杂度将小于O(w),其中w是句子中的单词数,这可能比字符串中的字符数好一点。 此代码由Anuj Khasgiwala提供 我们也可以使用 C/C中的strtok()函数++ 为了实现这一点。
本文由 普拉巴特·库马尔·辛格 .如果你喜欢GeekSforgek,并想贡献自己的力量,你也可以使用 写极客。组织 或者把你的文章寄到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。 如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写下评论。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END