将一个字符串中的大写字母和数字复制到另一个字符串中,然后分别输出两个字符串 【输入形式】一个字符串 【输出形式】两个字符串,分行输出 用c语言程序输出代码
时间: 2024-11-22 17:42:04 浏览: 0
在C语言中,你可以使用标准库函数来实现这个需求。下面是一个简单的示例程序,它接受一个字符串作为输入,然后创建两个新字符串,一个包含大写字母,一个包含数字,并分别打印这两个字符串。
```c
#include <stdio.h>
#include <ctype.h> // 包含ctype.h头文件用于处理字符属性
void copy_and_output(char *input) {
int uppercase_count = 0;
int digit_count = 0;
char uppercase[100] = ""; // 存储大写字母
char digits[100] = ""; // 存储数字
for (int i = 0; input[i]; ++i) { // 遍历输入字符串
if (isupper(input[i])) { // 检查是否为大写字母
uppercase[uppercase_count++] = input[i];
} else if (isdigit(input[i])) { // 检查是否为数字
digits[digit_count++] = input[i];
}
}
uppercase[uppercase_count] = '\0'; // 结束字符串并添加空终止符
digits[digit_count] = '\0';
printf("大写字母串: %s\n", uppercase);
printf("数字串: %s\n", digits);
}
int main() {
char input[100]; // 输入字符串
printf("请输入字符串: ");
fgets(input, sizeof(input), stdin); // 获取用户输入
input[strcspn(input, "\n")] = '\0'; // 去除换行符
copy_and_output(input);
return 0;
}
```
运行这个程序,它会提示你输入一个字符串,然后输出其中的大写字母和数字分别组成的新字符串。注意,这里假设输入的字符串长度不会超过`100`个字符,如果需要处理任意长度的字符串,你需要使用动态内存分配。
阅读全文