C语言实现将字符串中每个单词首字母大写的程序
#include <ctype.h> // 包含ctype.h头文件,提供字符分类和转换函数 #include <string.h> // 包含string.h头文件,提供字符串操作函数 #include <stdio.h> // 包含stdio.h头文件,提供标准输入输出函数
void upfst(char *p) { // 定义一个名为upfst的函数,用于将字符串中每个单词的首字母变为大写 int k = 1; // 定义一个变量k,用于标记是否为单词的第一个字母 while (*p) { // 循环遍历字符串的每个字符,直到遇到字符串结尾标志'\0' if (k) { // 如果是单词的第一个字母 if (*p != ' ') { // 如果不是空格 *p = toupper(*p); // 将字符转换为大写 k = 0; // 标记为非单词的第一个字母 } } else if (*p == ' ') { // 如果是单词中间的空格 k = 1; // 标记为单词的第一个字母 } p++; // 指针移动到下一个字符 } }
int main() { // 主函数 char chrstr[81]; // 定义一个字符数组,用于存储输入的字符串 printf("\nPlease enter an English text line: "); // 提示用户输入一个英文文本行 fgets(chrstr, 81, stdin); // 从标准输入中读取用户输入的字符串
printf("\n\nBefore changing:\n%s", chrstr); // 打印修改前的字符串 upfst(chrstr); // 调用upfst函数,将字符串中每个单词的首字母变为大写 printf("After changing:\n%s\n", chrstr); // 打印修改后的字符串
return 0; // 返回0,表示程序正常结束 }
原文地址: https://www.cveoy.top/t/topic/pyCO 著作权归作者所有。请勿转载和采集!