C语言双重循环,输入整数n,有n组数据,每组数据是一个字符串,计算每组字符串的数字和字母
时间: 2024-11-20 11:43:56 浏览: 11
在C语言中,要处理这种情况,你可以使用两个嵌套的`for`循环。首先遍历每一组数据(即n次),然后对于每组数据内部的每一个字符,判断它是数字还是字母并分别累加。这里可以借助`isdigit()`函数检查字符是否为数字,非数字则视为字母。以下是简单的示例代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
int n;
printf("请输入整数n:");
scanf("%d", &n);
for (int i = 0; i < n; i++) {
char str[100];
printf("请输入第 %d 组字符串:", i + 1);
fgets(str, sizeof(str), stdin); // 注意fgets处理换行符
int num_sum = 0;
int alpha_count = 0;
for (int j = 0; str[j] != '\0'; j++) { // 遍历字符串中的每个字符
if (isdigit(str[j])) {
num_sum += str[j] - '0'; // 将字符转换为数字并累加
} else {
alpha_count++; // 字母计数
}
}
printf("第 %d 组数据的数字总和为:%d,字母数量为:%d\n", i + 1, num_sum, alpha_count);
}
return 0;
}
```
阅读全文