int main(int argc, char **argv) { /* test_reverse(); test_strip(); test_add(); */ int num_test_cases; scanf("%d", &num_test_cases); for(int i = 0; i < num_test_cases; i++) { char num_1[100], num_2[100]; scanf("%s %s", num_1, num_2); inplace_reverse(num_1); inplace_reverse(num_2); char *res = add(num_1, num_2); inplace_reverse(res); res = strip_zeros(res); printf("%s\n", res); } return 0; }
int main(int argc, char** argv) { char c[] = "hello"; // note: NOT char* c = "hello"; -> UB printf( "%s\n", c); reverse1( c); printf( "%s\n", c); inplace_reverse( c); printf( "%s\n", c); return 0; }
char* convertToTitle(int n) { memset(result,0,sizeof(result)); int resultLen=0; int dvd=n; while (dvd) { result[resultLen++]=(dvd - 1) % 26 + 'A'; dvd = (dvd - 1) / 26; } inplace_reverse(result); return result; }
int main(){ char url[] = "D:\\in.txt"; char* frase = (char*)calloc(MAX, sizeof(char)); int numTestes; FILE *arq; int i, j; arq = fopen(url, "r"); //arq = stdin; if (arq == NULL) printf("Erro, nao foi possivel abrir o arquivo\n"); else{ fscanf(arq, "%d\n", &numTestes); for (i = 0; i < numTestes; i++) { while (fgets(frase, MAX, arq)) { strtok(frase, "\n"); //primeira condicao //letras minúsculas e maiúsculas devem ser deslocadas 3 posições para a direita for (i = 0; i < strlen(frase); i++) { if (isalpha(frase[i])) { frase[i] += 3; } } //segunda condicao //inverte string inplace_reverse(frase); //terceira condicao //da metade em diante(truncada) devem ser deslocados uma posição para a esquerda na tabela ASCII for (i = strlen(frase) / 2; i < strlen(frase); i++) { frase[i] -= 1; } printf("%s\n", frase); numTestes--; } } } free(frase); fclose(arq); return 0; }
void test_reverse() { char test[] = "ABC"; inplace_reverse(test); assert(strcmp(test, "CBA") == 0); }