题目12-2:从键盘输入一个字符串到字符数组 a 中,将其中的大写字符复制到另一个字符数组 b 中。用C语音
时间: 2023-11-27 11:49:23 浏览: 44
以下是示例代码:
```c
#include <stdio.h>
int main() {
char a[100], b[100];
int i, j = 0;
printf("请输入一个字符串:");
scanf("%s", a);
for (i = 0; a[i] != '\0'; i++) {
if (a[i] >= 'A' && a[i] <= 'Z') {
b[j] = a[i];
j++;
}
}
b[j] = '\0';
printf("大写字符复制到另一个数组:%s\n", b);
return 0;
}
```
以上代码中,首先定义了两个字符数组 a 和 b,分别用于存储输入的字符串和复制出的大写字符。然后通过 scanf 函数从键盘读入一个字符串到数组 a 中。
接下来通过循环遍历数组 a 中的每个字符,如果该字符是大写字符,则将其复制到数组 b 中,并且在 b 数组中的位置 j 加 1。最后在 b 数组末尾添加一个字符串结束符号 '\0'。
最后通过 printf 函数输出复制出来的大写字符数组 b。
相关问题
从键盘输入一个字符串到字符数组a中,将其中的大写字符复制到另一个字符数组b中。用C语言
下面是一个简单的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'),以便将其作为字符串输出。
从键盘输入一个字符串到字符数组 a 中,将其中的大写字符复制到另一个字符数组 b 中,并输出。用C语音
下面是代码实现:
```c
#include <stdio.h>
int main() {
char a[100], b[100];
int i, j = 0;
printf("请输入字符串:");
scanf("%s", a);
for (i = 0; a[i] != '\0'; i++) {
if (a[i] >= 'A' && a[i] <= 'Z') {
b[j] = a[i];
j++;
}
}
b[j] = '\0'; // 字符串以 \0 结尾
printf("大写字母为:%s\n", b);
return 0;
}
```
运行效果如下:
```
请输入字符串:HelloWorld
大写字母为:HW
```