如何仅将字母字符扫描到 C 中的数组中?
Posted
技术标签:
【中文标题】如何仅将字母字符扫描到 C 中的数组中?【英文标题】:How do I scan only alphabetic characters into an array in C? 【发布时间】:2018-06-27 21:11:17 【问题描述】:我有一个文本文件,它是一个带有引号、逗号、句点和空格的段落。我希望我的 C 程序仅将字母扫描到一个数组中,同时在此过程中将它们全部设为小写。所以如果一个文本文件说“你好。”,那么数组就会有:你好
【问题讨论】:
读取字符。只取“正确”的那些。如果需要,转换为小写。 向switch
声明问好。
@tadman 为什么是switch
? isalpha
+ tolower
。完成。
@EugeneSh。句号和空格?不确定这些是否有特殊含义。
您的程序将包含以下元素:getchar()
、if()
、isalpha()
、tolower()
和 array[i++]
。我留给你适当地组合这些元素。 :-)
【参考方案1】:
有多种解决方案。其中两个更“常见”是
将所有内容读入内存,然后只将需要的字符复制到主数组,同时转换为小写。
逐个字符读取,只保存要保存的字符,同时转换为小写。
这两种方案基本相同,只是在实际的文件读取部分不同。
【讨论】:
以上是关于如何仅将字母字符扫描到 C 中的数组中?的主要内容,如果未能解决你的问题,请参考以下文章