用c语言编写一个程序,在程序中输入字符串str2,将其中所有小写字母复制到字符串组str1中
时间: 2024-03-19 18:46:21 浏览: 53
C语言程序设计-编写一个程序,将字符数组s2中的全部字符拷贝到字符数组s1中,不能使用strcpy函数。拷贝时,
5星 · 资源好评率100%
好的,下面是用 C 语言编写的程序,可以将输入的字符串 `str2` 中的所有小写字母复制到字符串数组 `str1` 中:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main(void) {
char str1[100] = {0};
char str2[100];
// 读取字符串
printf("请输入一个字符串:");
fgets(str2, 100, stdin);
// 复制小写字母到 str1
int j = 0;
for (int i = 0; str2[i] != '\0'; i++) {
if (islower(str2[i])) {
str1[j] = str2[i];
j++;
}
}
// 输出结果
printf("复制的小写字母为:%s\n", str1);
return 0;
}
```
程序中先定义了两个字符数组 `str1` 和 `str2`,其中 `str1` 初始化为全 0。然后使用 `fgets()` 函数读取用户输入的字符串 `str2`,遍历字符串中的每个字符,并使用 `islower()` 函数判断字符是否为小写字母,如果是就将该字符复制到 `str1` 中,并将下标 `j` 加 1。最后通过 `printf()` 函数输出复制的小写字母即可。
需要注意的是,由于 `fgets()` 函数会将用户输入的换行符也读取进来,因此在遍历 `str2` 字符串时,需要判断字符是否为字符串结尾的空字符 `\0` 而不是换行符 `\n`。
阅读全文