小编Jua*_*ini的帖子

创建DNA序列的互补序列并将其反转C ++

因此,我尝试创建序列TGAGACTTCAGGCTCCTGGGCAACGTGCTGGTCTGTGTGC的补码,但是我的输出未按预期工作。序列中每个字母的补码为
A-> T
G-> C
C-> G
T-> A

我从事Java编程已经有一年多了,所以我对C ++中的指针真的很生疏,我猜问题出在反向方法中,并且在每次调用函数时都改变了指针的方式

#include<stdio.h>
#include<iostream>
using namespace std;

void reverse(char s[]);

int main() {
    char s[40] = {'T','G','A','G','A','C','T','T','C','A','G','G','C','T','C','C','T','G','G','G','C','A','A','C','G','T','G','C','T','G','G','T','C','T','G','T','G','T','G'};

    cout << "DNA sequence: "<< endl << s << endl;

    reverse(s);

    cout << "Reverse Compliment: "<< endl << s << endl;



    system("pause");
}

void reverse(char s[])
{
    char c;
    char *p, *q;

    p = s;

    if (!p)
        return;

    q = p + 1;
    if (*q == '\0')
        return;

    c = *p;
    reverse(q);

    switch(c) { …
Run Code Online (Sandbox Code Playgroud)

c++ arrays pointers dna-sequence

4
推荐指数
1
解决办法
4109
查看次数

标签 统计

arrays ×1

c++ ×1

dna-sequence ×1

pointers ×1