Open DaidalosCheung opened 4 years ago
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> char * follow_seq( char * lead_seq ); int main(void) { char lead_seq[99], new_seq[99]; char * nt; unsigned int k; srand(time(0)); // Set a random seed, otherwise rand() will generate the same value when it be called. for (int i = 0; i < 99; i++ ) { k = rand() % 4; // % mod function can only run on INT datatype if (k == 0) lead_seq[i] = 'A'; else if (k == 1) lead_seq[i] = 'T'; else if (k == 2) lead_seq[i] = 'G'; else lead_seq[i] = 'C'; printf("%c", lead_seq[i]); } printf("\n"); nt = follow_seq( lead_seq ); for (int i = 0; i < 99; i++){ new_seq[i] = *nt; printf("%c", new_seq[i]); nt ++; } printf("\n"); return 0; } char * follow_seq( char * lead_seq ) { char new_seq[99]; unsigned int i = 0; while ( i < 99 ) { if (lead_seq[i] == 'A'){ new_seq[i] = 'T'; i++; } else if (lead_seq[i] == 'T'){ new_seq[i] = 'A'; i++; } else if (lead_seq[i] == 'G'){ new_seq[i] = 'C'; i++; } else if (lead_seq[i] == 'C'){ new_seq[i] = 'G'; i++; } printf("synthesis %d", i); } printf("\n"); return new_seq; }