FASTQ文件是一种存储生物序列(通常称为核酸序列)以及相应质量评价的文本格式文件。整个文件包含多条生物序列,每条生物序列由四行信息组成:第1行为序列标识,以‘@’开头;第2行是具体的生物序列(即由A、T、G、C组成的核酸序列);第3行以‘+’开头,后面是序列的描述信息;第4行是质量信息,与第2行的列一一对应,每个序列均有一个质量评分,采用字符表示,该字符的ASCII码值即为量值,取值为33到126的ASCII码(即从字符‘!’到字符‘ ~') 。下面给出的是单条生物序列的一个示例(整个文件就是由多个这样的生物序列依次存放组成的)。
@SEQ_ID
GATTTGGGGTTCAAAGCATATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT
+Description
!“** = (((***+))%%%++)(%%%%).1***-+*”))**55CCF>>>>>>ccccccc65
请根据上面的描述,编写一c语言程序,检查某个文件是否是合法的FASTQ文件。该程序接收一个文件名参数,输出为检查结论。
提示:
(1)检查规则:以每四行为一个处理单元,在这四行中,第1行以‘@',第2行的列只包含A、T、G、C四种核酸(表示核酸的四个字符大小写均可,即小写a、t、g、c也是字符,并假定序列长度不超过2000);第3行以‘+’开头;第4行的长度与第2行相同,并且为合法的质量取值。建议分别将每个检查规则编写成独立的函数。
(2)采用命令行参数的形式接收文件名。
(3)为了简化处理逻辑,当检查到文件中有1处格式不合法后,程序即可终止,输出文件格式不合法的提示。只有当文件中所有的内容都合法,程停才输出文件格式合法的提示。
查看答案和解析【26考研辅导课程推荐】:26考研集训课程,VIP领学计划,26考研VIP全科定制套餐(公共课VIP+专业课1对1) , 这些课程中都会配有内部讲义以及辅导书和资料,同时会有教研教辅双师模式对大家进行教学以及督学,并配有24小时答疑和模拟测试等,可直接咨询在线客服老师领取大额优惠券。
启航教育热门私房课
MORE