序列截取程序

来源:百度知道 编辑:UC知道 时间:2024/05/08 02:50:54
有一段DNA序列,如acgtttgaccgaggggccg我要做的事情是把它按一定长度顺次截取例如长度为3 则为acg cgt gtt ttt 依次类推,也就是一个滑窗程序.希望哪个大虾帮我用C语言写以下,要求序列的长度可变,窗口长度也可变.多谢多谢
滑窗的输出要一直等于滑窗长度.比如是三就输出序列一直为三那么长,还有最后可以把截取的每个序列放在数组里么,因为我想用截取的序列继续调用其他的函数,麻烦帮我改一改.多谢多谢.

调试通过的程序代码如下:

#include <stdio.h>
void main()
{
  int i,j,n;
  char s[1024]="acgtttgaccgaggggccg";
  /*gets(s);*/
  printf("window size = ");scanf("%d",&n);
  i=0;
  while(s[i])
  {
    for (j=0;j<n;j++) if (s[i+j]) printf("%c", s[i+j]);
    printf(" ");
    i++;
  }
  printf("\n");
}

上面的程序运行结果如下:

window size = 3
acg cgt gtt ttt ttg tga gac acc ccg cga gag agg ggg ggg ggc gcc ccg cg g
window size = 4
acgt cgtt gttt tttg ttga tgac