利用c语言一维字符数组编写简单程序:输入一个逻辑表达式,统计运算符(假设表达式中仅使用了关系运算符、逻辑运算符)分隔开的运算数的数量。例如:ch>=’a’&&ch<=’z’||ch>=’A’&&ch<=’Z’,运算数有ch、‘a’、ch、‘z’、ch、’A’、ch、’Z’共8个运算数。
时间: 2023-07-10 13:10:49 浏览: 66
字符数组的输入和输出-零基础学C语言第八章PPT。
好的,以下是利用C语言一维字符数组编写的程序:
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_LEN 100 // 定义表达式的最大长度
int main() {
char expr[MAX_LEN]; // 存储输入的表达式
int num_operands = 0; // 记录运算数的数量
int i = 0;
printf("请输入一个逻辑表达式:\n");
fgets(expr, MAX_LEN, stdin); // 从标准输入获取表达式
while (expr[i] != '\0') { // 遍历表达式中的每一个字符
if (isalnum(expr[i])) { // 如果当前字符是字母或数字,则表示是一个运算数
num_operands++;
while (isalnum(expr[i])) { // 继续读取该运算数的所有字符
i++;
}
} else { // 如果当前字符是运算符,则跳过
i++;
}
}
printf("运算数的数量为:%d\n", num_operands);
return 0;
}
```
程序的思路是:先读取输入的逻辑表达式,然后遍历表达式中的每一个字符,如果当前字符是字母或数字,则表示是一个运算数,统计数量并继续读取该运算数的所有字符;如果当前字符是运算符,则跳过。最后输出运算数的数量。
阅读全文