用c语言编写程序:输入最多10个大小写字符,以回车符结束输入,输出其中的大写字母。 比如:输入 abcDeF 则输出 DF
时间: 2024-06-12 10:04:06 浏览: 6
```c
#include <stdio.h>
int main() {
char str[11]; // 定义一个字符数组,最多存储10个字符
int i, count = 0; // i用于循环计数,count用于记录大写字母个数
printf("请输入最多10个大小写字符,以回车符结束:\n");
scanf("%s", str); // 读取输入的字符
printf("其中大写字母有:");
for (i = 0; str[i] != '\0' && i < 10; i++) {
if (str[i] >= 'A' && str[i] <= 'Z') { // 判断是否为大写字母
printf("%c", str[i]); // 输出大写字母
count++; // 大写字母个数加1
}
}
if (count == 0) { // 如果没有大写字母
printf("无");
}
printf("\n");
return 0;
}
```
注意:
1. 使用字符数组存储输入的字符,可以通过循环遍历来判断是否为大写字母。
2. 由于字符数组中的每个元素都是字符类型,所以在读取输入时使用%s而非%c。
3. 在循环遍历字符数组时,需要注意数组下标不能超过数组长度,否则会出现数组访问越界的错误。因此可以使用str[i] != '\0'来判断是否到达字符数组的末尾。
相关问题
输入最多10个大小写字符,以回车符结束输入,输出其中的大写字母。 比如:输入 abcDeF 则输出 DF
```python
s = input()
for c in s:
if c.isupper():
print(c, end='')
```
或者使用列表推导式:
```python
s = input()
print(''.join([c for c in s if c.isupper()]))
```
接收用户输入的字符串,将其中的字符进行排序,并以逆序输出,例如:acdefb-abcdef-fedcba
好的,您的问题是如何对字符串中的字符进行排序,并以逆序输出?
可以使用以下步骤:
1. 将字符串转换为列表。
2. 对该列表进行排序。
3. 将排序后的列表转换为字符串。
4. 将字符串反转输出。
下面是一个示例代码实现:
```python
s = input("请输入字符串:")
lst = list(s)
lst.sort()
s = "".join(lst)
res = s[::-1]
print(res)
```
输入示例:
```
请输入字符串:acdefb
```
输出示例:
```
fedcba
```