在C语言中,可以使用`scanf`或`getchar`函数从键盘输入字符序列。以下是一个简单的示例程序,展示如何输入字符串"china",并将其转换为大写输出:
```c
include
int main() {
char input; // 足够存储"china"及其结束符'\0'
printf("Please input 'china': ");
fgets(input, sizeof(input), stdin); // 使用fgets读取整行输入
// 去除输入字符串末尾的换行符
input[strcspn(input, "\n")] = 0;
// 将每个字符转换为大写
for (int i = 0; input[i] != '\0'; i++) {
input[i] = toupper(input[i]);
}
// 输出转换后的字符串
printf("You entered: %s\n", input);
return 0;
}
```
解释
输入字符串
使用`fgets`函数从标准输入读取一行字符串,并将其存储在`input`数组中。`fgets`函数会读取包括换行符在内的整行内容。
去除换行符
使用`strcspn`函数找到输入字符串中第一个换行符的位置,并将其替换为字符串结束符`\0`。
转换为大写
使用`toupper`函数将每个字符转换为大写。
输出结果
使用`printf`函数输出转换后的大写字符串。
建议
确保输入的字符串包含在引号内,以防止`scanf`函数在遇到空格时停止读取。
如果需要处理更复杂的输入或错误检查,可以考虑使用`scanf`的格式化输入或逐个字符比较的方法。