从键盘输入一个字符串到字符数组a中,将其中的大写字符复制到另一个字符数组b中。用C语言
时间: 2023-11-27 10:50:17 浏览: 150
下面是一个简单的C语言程序,可实现输入一个字符串到字符数组a中,将其中的大写字符复制到另一个字符数组b中的功能:
```c
#include <stdio.h>
#include <ctype.h>
#define MAXLEN 100
int main()
{
char a[MAXLEN], b[MAXLEN];
int i, j = 0;
printf("请输入一个字符串:");
fgets(a, MAXLEN, stdin);
for (i = 0; a[i] != '\0'; i++) {
if (isupper(a[i])) {
b[j] = a[i];
j++;
}
}
b[j] = '\0';
printf("大写字符复制到b中的结果为:%s\n", b);
return 0;
}
```
这个程序中,我们使用了C标准库中的`ctype.h`头文件中的`isupper()`函数来判断字符是否为大写字符。`fgets()`函数用于从标准输入(即键盘)读取用户输入的字符串,`MAXLEN`定义了数组a和数组b的最大长度。最后,我们使用了一个循环来遍历数组a中的所有字符,如果该字符是大写字符,则将其复制到数组b中,并将计数器j加1。最后,我们在数组b的末尾加上一个空字符('\0'),以便将其作为字符串输出。
相关问题
c语言 编写一个函数fun,从键盘上输入一个字符串,放在数组中,要求将字符串中的大写字母转换成小写字母,小写字母转换成大写字母,非字母字符不变
以下是使用 C 语言编写的函数 `fun`,它可以实现将输入的字符串中的大小写字母进行转换,并保留非字母字符不变:
```c
#include <stdio.h>
#include <ctype.h>
void fun() {
char s[100];
int i = 0;
// 从键盘上输入字符串
printf("请输入一个字符串:");
scanf("%s", s);
// 将字符串中的大小写字母进行转换
while (s[i] != '\0') {
if (islower(s[i])) {
s[i] = toupper(s[i]);
} else if (isupper(s[i])) {
s[i] = tolower(s[i]);
}
i++;
}
// 输出转换后的字符串
printf("转换后的字符串为:%s\n", s);
}
```
使用示例:
```
fun();
请输入一个字符串:Hello World!
转换后的字符串为:hELLO wORLD!
```
C语言从键盘上输入一个字符串,放在数组中,要求将字符串中的大写字母转换成小写字母,小写字母转换成大写字母,非字母字符不变,并输出结果
以下是一个简单的 C 代码实现:
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_LEN 100
int main() {
char str[MAX_LEN];
int i = 0;
printf("请输入字符串:");
fgets(str, MAX_LEN, stdin);
while (str[i] != '\0') {
if (isupper(str[i])) {
str[i] = tolower(str[i]);
} else if (islower(str[i])) {
str[i] = toupper(str[i]);
}
i++;
}
printf("转换后的字符串为:%s", str);
return 0;
}
```
通过 `fgets()` 函数从键盘输入字符串,并将其存储在 `str` 数组中。然后,使用 `while` 循环遍历字符串中的每个字符,如果字符是大写字母,则将其转换为小写字母;如果字符是小写字母,则将其转换为大写字母。最后,输出转换后的字符串。注意,我们使用了 `<ctype.h>` 头文件中的 `isupper()`、`tolower()`、`islower()` 和 `toupper()` 函数来判断和转换字符的大小写状态。
阅读全文