帮我敲段C语言代码,要求如下:·输入一行字符,分别统计出其中英文大写字母和小写字母的个数。(要求用函数实现) ·(提示:利用while语句,条件为输入的字符不为'\n')
时间: 2024-03-13 19:44:25 浏览: 148
好的,以下是符合您要求的C语言代码:
```c
#include <stdio.h>
void count(char str[]) {
int uppercase = 0, lowercase = 0;
int i = 0;
while(str[i] != '\0' && str[i] != '\n') {
if(str[i] >= 'A' && str[i] <= 'Z') {
uppercase++;
} else if(str[i] >= 'a' && str[i] <= 'z') {
lowercase++;
}
i++;
}
printf("大写字母个数:%d\n", uppercase);
printf("小写字母个数:%d\n", lowercase);
}
int main() {
char str[100];
printf("请输入一行字符:\n");
fgets(str, 100, stdin);
count(str);
return 0;
}
```
在上面的代码中,`count` 函数用于统计输入字符串中的大写字母和小写字母个数。 `main` 函数用于输入字符串并调用 `count` 函数。`fgets` 函数用于从标准输入中读取字符串。
相关问题
输入一行字符分别统计出其中英文大写字母和小写字母的个数,C语言
好的,以下是 C 语言代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int upper_count = 0, lower_count = 0, i = 0;
printf("请输入一行字符:");
fgets(str, 100, stdin); // 使用 fgets() 获取用户输入的字符串
while (str[i] != '\0') { // 遍历字符串
if (isupper(str[i])) {
upper_count++;
} else if (islower(str[i])) {
lower_count++;
}
i++;
}
printf("大写字母个数:%d\n", upper_count);
printf("小写字母个数:%d\n", lower_count);
return 0;
}
```
这段代码首先定义了一个字符数组 `str`,用于存放用户输入的字符串。然后使用 `fgets()` 函数获取用户输入的一行字符串。接着使用 `while` 循环遍历这个字符串中的每个字符,如果是大写字母则将 `upper_count` 计数器加 1,如果是小写字母则将 `lower_count` 计数器加 1。最后输出结果即可。需要注意的是,为了避免用户输入超过字符数组 `str` 的长度,应该设置合适的数组长度,并且使用 `fgets()` 函数获取字符串。
利用C语言输入一行字符分别统计出其中的大写字母、小写字母、数字和其他字符的个数
下面是利用C语言输入一行字符分别统计出其中的大写字母、小写字母、数字和其他字符的个数的代码:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
char c;
int upper = 0, lower = 0, digit = 0, other = 0;
printf("请输入一行字符:\n");
while ((c = getchar()) != '\n')
{
if (isupper(c))
upper++;
else if (islower(c))
lower++;
else if (isdigit(c))
digit++;
else
other++;
}
printf("大写字母:%d\n", upper);
printf("小写字母:%d\n", lower);
printf("数字:%d\n", digit);
printf("其他字符:%d\n", other);
return 0;
}
```
阅读全文