使用c语言编程字符数组实现:假设数组有30长度,输入一串字符,计算其中空格的个数。提示:需要使用strlen()函数。
时间: 2024-03-02 22:48:37 浏览: 19
好的,可以使用下面的代码来实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[30];
int len, count = 0;
printf("请输入一串字符:");
fgets(str, 30, stdin);
len = strlen(str);
for (int i = 0; i < len; i++) {
if (str[i] == ' ') {
count++;
}
}
printf("空格的个数为:%d\n", count);
return 0;
}
```
代码中,先定义了一个长度为30的字符数组`str`,然后使用`fgets()`函数从标准输入中读取一串字符,存入该数组中。接着使用`strlen()`函数获取该字符串的长度,然后使用`for`循环遍历每个字符,如果是空格则计数器`count`加1。最后输出计数器的值即可。
相关问题
用c语言编程实现输入一个字符串,输出其中非英文字符的个数
好的,我能够回答您的问题。以下是用C语言编程实现输入一个字符串,输出其中非英文字符的个数的代码:
```
#include <stdio.h>
#include <ctype.h>
#include <string.h>
int main() {
char str[100];
int non_english_chars = 0;
printf("请输入一个字符串:");
fgets(str, sizeof(str), stdin);
for (int i = 0; i < strlen(str); i++) {
if (!isalpha(str[i]) && str[i] != ' ') {
non_english_chars++;
}
}
printf("非英文字符的个数为:%d\n", non_english_chars);
return 0;
}
```
这个程序会提示用户输入一个字符串,并且使用fgets函数将输入读入变量str中。然后,程序使用循环遍历字符串中的每个字符,如果字符不是字母和空格,就将non_english_chars变量加1。最后,程序输出non_english_chars的值,就是非英文字符的个数。
希望这个回答能够帮到您,如有问题请随时与我交流。
C语言题目描述 输入一行字符,分别统计并依次输出其中英文字母,空格,数字和其它字符的个数要求用字符数组
以下是C语言的代码,用于输入一行字符,分别统计并依次输出其中英文字母、空格、数字和其他字符的个数,要求用字符数组:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int ch = 0, s = 0, d = 0, o = 0;
printf("请输入一行字符:");
fgets(str, 100, stdin);
for (int i = 0; i < strlen(str); i++)
{
if ((str[i] >= 'a' && str[i] <= 'z') || (str[i] >= 'A' && str[i] <= 'Z'))
ch++;
else if (str[i] == ' ')
s++; else if (str[i] >= '0' && str[i] <= '9')
d++;
else
o++;
}
printf("char=%d space=%d digit=%d others=%d\n", ch, s, d, o);
return 0;
}
```