从键盘输入一串字符串,包括各种字符以回车结束,只保留该字符串中的大小写字母以及空格符,删除其他字符,并保存到out.txt文件中,用C语言
时间: 2023-10-10 20:07:38 浏览: 107
可以使用C语言的字符处理函数isalpha()和isspace()来判断是否为字母和空格符,从而实现字符串的过滤操作。具体代码如下:
```c
#include <stdio.h>
#include <ctype.h>
int main()
{
FILE *fp_in, *fp_out;
char c;
// 打开输入文件和输出文件
fp_in = fopen("in.txt", "r");
fp_out = fopen("out.txt", "w");
// 逐个读取字符并过滤
while ((c = fgetc(fp_in)) != EOF) {
if (isalpha(c) || isspace(c)) { // 判断是否为字母或空格符
fputc(c, fp_out); // 写入输出文件
}
}
// 关闭文件
fclose(fp_in);
fclose(fp_out);
return 0;
}
```
上述代码中,使用了fgetc()和fputc()函数逐个读取和写入字符,isalpha()和isspace()函数判断是否为字母或空格符。最终结果保存在out.txt文件中。
相关问题
从键盘输入一个字符串,直到回车结束,统计字符串中的大小写英文字母各有多少个。
当您从键盘输入一个字符串并遇到换行符(回车键)时,可以使用编程语言中的循环结构和条件判断来逐个检查每个字符,统计其中的大写字母、小写字母的数量。以下是一个基本的Python示例:
```python
def count_letters():
string = input("请输入字符串,按回车键结束:")
uppercase_count = 0
lowercase_count = 0
for char in string:
if char.isalpha(): # 检查是否为字母
if char.isupper(): # 如果是大写字母
uppercase_count += 1
elif char.islower(): # 如果是小写字母
lowercase_count += 1
print(f"大写字母有 {uppercase_count} 个,小写字母有 {lowercase_count} 个。")
count_letters()
```
在这个程序中,`isalpha()` 函数用于检测字符是否为字母,`isupper()` 和 `islower()` 分别检查字符是否为大写或小写。
从键盘输入一串字符 按回车结束 计算字符中大小写字母有多少个
你可以使用Python中的`input()`函数来获取用户输入的字符串,然后使用循环语句遍历字符串中的每个字符,判断它是否是大写或小写字母,最后分别统计大小写字母的个数。下面是一个示例代码:
```python
s = input("请输入一串字符:")
upper_count = 0
lower_count = 0
for c in s:
if c.isupper():
upper_count += 1
elif c.islower():
lower_count += 1
print("大写字母个数:", upper_count)
print("小写字母个数:", lower_count)
```
运行示例:
```
请输入一串字符:Hello World!
大写字母个数: 2
小写字母个数: 8
```
其中,`c.isupper()`表示判断字符`c`是否为大写字母,`c.islower()`表示判断字符`c`是否为小写字母,`upper_count`和`lower_count`分别为大写字母和小写字母的个数统计变量。
阅读全文