feat: added project files
This commit is contained in:
parent
40786acfa7
commit
a102d36b1c
5
CMakeLists.txt
Normal file
5
CMakeLists.txt
Normal file
@ -0,0 +1,5 @@
|
||||
cmake_minimum_required(VERSION 3.5)
|
||||
|
||||
project(test LANGUAGES C)
|
||||
|
||||
add_executable(test main.c)
|
100
main.c
Normal file
100
main.c
Normal file
@ -0,0 +1,100 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int get_user_input(){
|
||||
int x = -1;
|
||||
int ok = -1;
|
||||
while( ok != 1){
|
||||
/* as array values will only be >0, unsigned int is fine */
|
||||
ok = scanf("%u", &x);
|
||||
if(ok == EOF){
|
||||
printf("\ncaught Ctrl+D...\n");
|
||||
ok = 1;
|
||||
x = 2;
|
||||
break;
|
||||
}
|
||||
if(ok == 0){
|
||||
while (fgetc(stdin) != '\n'){
|
||||
}
|
||||
printf("[*] give me a correct value\n");
|
||||
break;
|
||||
}
|
||||
}
|
||||
return x;
|
||||
}
|
||||
|
||||
int lemmego(){
|
||||
printf("[*] you wished to go, quitting...\n");
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
||||
void print_banner(){
|
||||
printf("+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n"
|
||||
"|u|l|t|i|m|a|t|e|_|a|r|r|a|y|_|h|a|n|d|l|e|r|\n"
|
||||
"+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+\n");
|
||||
}
|
||||
|
||||
void do_magic(uint arr_len){
|
||||
printf("[i] arr_len = %u\n", arr_len);
|
||||
int *noice_arr = malloc(arr_len*sizeof(int));
|
||||
|
||||
printf("noice_arr: [ ");
|
||||
for (int i = 0; i < arr_len; i++){
|
||||
noice_arr[i] = i;
|
||||
printf("%d ", noice_arr[i]);
|
||||
}
|
||||
printf("]\n");
|
||||
|
||||
printf("[*] transposing array\n");
|
||||
|
||||
int *ugly_arr = malloc(arr_len*sizeof(int));
|
||||
uint helper = arr_len-1;
|
||||
printf("ugly_arr: [ ");
|
||||
for (int i = 0; i < arr_len; i++, helper--){
|
||||
ugly_arr[i] = noice_arr[helper];
|
||||
printf("%d ", ugly_arr[i]);
|
||||
}
|
||||
printf("]\n");
|
||||
|
||||
free(noice_arr);
|
||||
free(ugly_arr);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
int selection, arr_len=0;
|
||||
|
||||
print_banner();
|
||||
|
||||
while ( selection != -1 ) {
|
||||
printf("\npick a choice\n");
|
||||
printf("9000 - do magic\n"
|
||||
"1 - quit\n"
|
||||
"~> ");
|
||||
|
||||
selection = get_user_input();
|
||||
|
||||
switch ( selection ) {
|
||||
case 9000:
|
||||
printf("[*] please gimme a natural number:\n"
|
||||
"--> ");
|
||||
arr_len = get_user_input();
|
||||
if (arr_len == 0) {
|
||||
printf("[!] array cannot have zero size, mate...\n");
|
||||
break;
|
||||
}
|
||||
printf("[*] doing evil stuff\n");
|
||||
do_magic(arr_len);
|
||||
break;
|
||||
case 1:
|
||||
lemmego();
|
||||
return 9000;
|
||||
default:
|
||||
printf("[x] invalid option\n");
|
||||
selection = 0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
3
testin
Normal file
3
testin
Normal file
@ -0,0 +1,3 @@
|
||||
9000
|
||||
20
|
||||
1
|
Reference in New Issue
Block a user