c语言 输入格式: 在一行中输入一个字符串。字符串长度不超过80。 输出格式: 第一行按输入顺序输出这个字符串中所有大写字母。 第二行输出这些大写字母的个数。
时间: 2024-02-27 17:56:08 浏览: 132
c语言将字符串中的小写字母转换成大写字母
5星 · 资源好评率100%
这是一道C语言基础题,主要考察对字符串的基本操作和循环的掌握。以下是代码实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[81];
int len, i, count = 0;
fgets(str, 81, stdin); // 读入字符串
len = strlen(str);
printf("大写字母为:");
for (i = 0; i < len; i++) {
if (str[i] >= 'A' && str[i] <= 'Z') {
printf("%c", str[i]); // 输出大写字母
count++; // 统计大写字母个数
}
}
printf("\n大写字母个数为:%d\n", count);
return 0;
}
```
输入一个字符串后,我们使用`fgets()`函数读入这个字符串,最多读入80个字符。然后使用`strlen()`函数获取字符串的长度。接着用循环遍历字符串的每一个字符,如果发现是大写字母,则输出该字母并统计大写字母的个数。最后输出大写字母个数即可。
需要注意的是,这里使用`fgets()`函数读入字符串,是为了防止输入的字符串长度超过80,以避免发生缓冲区溢出的问题。同时,输出大写字母的时候,因为题目要求按输入顺序输出,所以直接在循环中输出即可。
阅读全文