用C语言编程,定义一个80个元素的字符数组,输入一串字符存放其中,统计每个数字字符的个数按数字字符的顺序存放在数组中。并输出结果。
时间: 2023-06-02 15:04:30 浏览: 52
好的,这是一个关于C语言的问题,我可以回答。下面是示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[80];
int nums[10] = {0}; // 初始化数字计数数组
printf("请输入一串字符:\n");
fgets(str, 80, stdin); // 获取输入的字符串,最多80个字符
for (int i = 0; i < strlen(str); i++) {
if (str[i] >= '0' && str[i] <= '9') {
// 如果是数字字符,则对应计数数组元素加1
nums[str[i] - '0']++;
}
}
printf("每个数字字符的个数为:\n");
for (int i = 0; i < 10; i++) {
printf("%d: %d\n", i, nums[i]);
}
return 0;
}
```
以上代码定义了一个80个元素的字符数组,并使用`fgets`函数获取用户输入的字符串,接着遍历字符串中的每个字符,如果是数字则在对应的计数数组元素上加1,最后输出每个数字字符的个数。
相关问题
用c语言编程:定义一个80个元素的字符数组,输入一串字符存放其中,统计每个数字字符的个数按数字字符的顺序存放在 int c[10]的数组中。并输出结果。
好的,这是一个关于C语言编程的问题。
以下是代码实现:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str[80];
int len, i, j;
int c[10] = {0};
printf("请输入字符串:\n");
scanf("%s", str);
len = strlen(str);
for (i = 0; i < len; i++)
{
if (str[i] >= '0' && str[i] <= '9')
{
c[str[i] - '0']++;
}
}
printf("每个数字字符出现的次数如下:\n");
for (j = 0; j < 10; j++)
{
printf("%d: %d\n", j, c[j]);
}
return 0;
}
```
注释:程序先定义了一个80个元素的字符数组,接着通过输入一串字符将其存放在其中。然后,程序使用 for 循环遍历这个字符数组,如果该字符数组中的当前字符为数字字符,则将其出现的次数加1,最后按顺序输出每个数字字符出现的次数。
希望能够对您有所帮助。
用c语言定义一个80个元素的字符数组,输入一串字符存放其中,统计每个数字字符的个数按数字字符的顺序存放在 int c[10]的数组中。并输出结果。
好的,这是一个关于编程的问题。以下是实现方法:
```c
#include <stdio.h>
int main() {
char str[80]; //定义一个80个元素的字符数组
int c[10] = {0}; //初始化一个10个元素的整型数组,并全部赋值为0
int i, count;
printf("请输入一串字符:\n");
gets(str); //输入一串字符
for(i = 0; str[i] != '\0'; i++) {
if(str[i] >= '0' && str[i] <= '9') { //判断当前字符是否为数字字符
count = str[i] - '0'; //将字符转换为整型
c[count]++; //统计每个数字字符的个数
}
}
printf("数字字符的统计结果:\n");
for(i = 0; i < 10; i++) {
printf("%d: %d\n", i, c[i]); //按数字字符的顺序输出每个数字字符的个数
}
return 0;
}
```
这段代码可以实现输入一串字符,并统计其中每个数字字符的个数,最终按数字字符的顺序输出结果。
希望能对您有所帮助。