利用 c 语言编写程序,统计从键盘输入的字符串中大写字母的个数。输入的字符串可能包含空格。
时间: 2024-02-09 16:09:44 浏览: 71
好的,以下是利用 C 语言编写的程序,可以统计从键盘输入的字符串中大写字母的个数,包括空格:
```
#include <stdio.h>
int main() {
char str[100];
int count = 0, i = 0;
printf("请输入字符串:\n");
fgets(str, sizeof(str), stdin); // 从键盘读入字符串
while (str[i] != '\0') { // 遍历字符串
if (str[i] >= 'A' && str[i] <= 'Z') { // 判断是否为大写字母
count++;
}
i++;
}
printf("大写字母的个数为:%d\n", count);
return 0;
}
```
输入一个字符串后,程序会逐个字符遍历字符串,判断是否为大写字母,并统计个数,最后输出结果。
相关问题
统计从键盘输入的字符串中大写字母的个数,输入的字符串可能包含空格
下面是 Python 代码实现:
```python
s = input("请输入一个字符串:")
count = 0
for c in s:
if c.isupper():
count += 1
print("大写字母的个数为:", count)
```
代码解释:
1. 首先通过 `input()` 函数从键盘输入一个字符串,并将其赋值给变量 `s`。
2. 然后定义一个变量 `count`,用于统计大写字母的个数,初始化为 0。
3. 接下来使用 `for` 循环遍历字符串 `s` 中的每个字符。
4. 在循环中,使用字符串的 `isupper()` 方法判断当前字符是否为大写字母,如果是,则将 `count` 的值加 1。
5. 最后输出统计结果。
需要注意的是,这个方法对于字符串中的空格也会进行判断,但不会统计空格的个数。如果需要统计空格个数,可以在循环中加入一个判断条件,例如:
```python
s = input("请输入一个字符串:")
count_upper = 0
count_space = 0
for c in s:
if c.isupper():
count_upper += 1
elif c.isspace():
count_space += 1
print("大写字母的个数为:", count_upper)
print("空格的个数为:", count_space)
```
这个代码和前面的代码类似,只是在循环中增加了一个 `elif` 条件,用于判断空格。如果当前字符是空格,则将 `count_space` 的值加 1。最后输出大写字母个数和空格个数的统计结果。
编写程序,求一个字符串中大写字母的个数并输出。 输入格式: 在一行内输入一个字符串(不包含空格、制表符、回车符号等)。 输出格式: 输出这个字符串中大写字母的个数。用c语言写
在C语言中,编写一个程序来计算字符串中的大写字母个数,可以使用`ctype.h`库提供的`isupper()`函数来判断字符是否为大写字母。下面是一个简单的C语言函数来完成此任务:
```c
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int count_uppercase_chars(char str[]) {
int count = 0;
for (int i = 0; str[i] != '\0'; i++) { // 遍历字符串直到遇到结束符'\0'
if (isupper(str[i])) { // 判断字符是否为大写字母
count++;
}
}
return count;
}
int main() {
char input[100]; // 假设最大输入长度不超过99个字符
printf("请输入一个字符串: ");
fgets(input, sizeof(input), stdin); // 从标准输入获取字符串,忽略行尾的换行符
input[strcspn(input, "\n")] = '\0'; // 清除fgets带来的换行符
int result = count_uppercase_chars(input);
printf("字符串中大写字母的个数是: %d\n", result);
return 0;
}
阅读全文