#include <stdlib.h> void ft_putnbr_base_v2(int nbr, char *base, char *nbrf); int lenght_nbr(int nbr, char *base, int lenght); int checkerror(char *str) { int i; int j; i = 0; if (str[0] == '\0' || str[1] == '\0') return (0); while (str[i] != '\0') { if ((str[i] >= 9 && str[i] <= 13) || str[i] == 32 || str[i] == 43 || str[i] == 45) return (0); j = i + 1; while (str[j] != '\0') { if (str[i] == str[j]) return (0); j++; } i++; } return (i); } int nb_base(char str, char *base) { int nb; nb = 0; while (base[nb] != '\0') { if (str == base[nb]) return (nb); nb++; } return (-1); } int whitespaces(char *str, int *ptr_i) { int count; int i; i = 0; count = 1; while ((str[i] >= 9 && str[i] <= 13) || str[i] == 32) i++; while ((str[i] != '\0') && (str[i] == 43 || str[i] == 45)) { if (str[i] == 45) count *= -1; i++; } *ptr_i = i; return (count); } int ft_atoi_base(char *str, char *base) { int i; int count; int nb; int nb2; int base_lenght; nb = 0; i = 0; base_lenght = checkerror(base); if (base_lenght >= 2) { count = whitespaces(str, &i); nb2 = nb_base(str[i], base); while (nb2 != -1) { nb = (nb * base_lenght) + nb2; i++; nb2 = nb_base(str[i], base); } return (nb *= count); } return (0); } char *ft_convert_base(char *nbr, char *base_from, char *base_to) { char *finalnbr; int mednbr; int lenght_nbrf; char *d; if (checkerror(base_to) == 0 || checkerror(base_from) == 0) return (0); mednbr = ft_atoi_base(nbr, base_from); lenght_nbrf = lenght_nbr(mednbr, base_to, 0); d = (finalnbr = (char *)malloc(sizeof(char) * (lenght_nbrf + 1))); if (!d) return (0); ft_putnbr_base_v2(mednbr, base_to, finalnbr); finalnbr[lenght_nbrf] = '\0'; return (finalnbr); } #include <stdio.h> int main (int ac, char **av) { (void)ac; printf("%s", ft_convert_base(av[1], av[2], av[3])); }
Write, Run & Share C Language code online using OneCompiler's C online compiler for free. It's one of the robust, feature-rich online compilers for C language, running the latest C version which is C18. Getting started with the OneCompiler's C editor is really simple and pretty fast. The editor shows sample boilerplate code when you choose language as 'C' and start coding!
OneCompiler's C online editor supports stdin and users can give inputs to programs using the STDIN textbox under the I/O tab. Following is a sample C program which takes name as input and print your name with hello.
#include <stdio.h>
int main()
{
char name[50];
printf("Enter name:");
scanf("%s", name);
printf("Hello %s \n" , name );
return 0;
}
C language is one of the most popular general-purpose programming language developed by Dennis Ritchie at Bell laboratories for UNIX operating system. The initial release of C Language was in the year 1972. Most of the desktop operating systems are written in C Language.
When ever you want to perform a set of operations based on a condition if-else
is used.
if(conditional-expression) {
// code
} else {
// code
}
You can also use if-else for nested Ifs and if-else-if ladder when multiple conditions are to be performed on a single variable.
Switch is an alternative to if-else-if ladder.
switch(conditional-expression) {
case value1:
// code
break; // optional
case value2:
// code
break; // optional
...
default:
// code to be executed when all the above cases are not matched;
}
For loop is used to iterate a set of statements based on a condition.
for(Initialization; Condition; Increment/decrement){
// code
}
While is also used to iterate a set of statements based on a condition. Usually while is preferred when number of iterations are not known in advance.
while(condition) {
// code
}
Do-while is also used to iterate a set of statements based on a condition. It is mostly used when you need to execute the statements atleast once.
do {
// code
} while (condition);
Array is a collection of similar data which is stored in continuous memory addresses. Array values can be fetched using index. Index starts from 0 to size-1.
data-type array-name[size];
data-type array-name[size][size];
Function is a sub-routine which contains set of statements. Usually functions are written when multiple calls are required to same set of statements which increases re-usuability and modularity.
Two types of functions are present in C
Library functions are the in-built functions which are declared in header files like printf(),scanf(),puts(),gets() etc.,
User defined functions are the ones which are written by the programmer based on the requirement.
return_type function_name(parameters);
function_name (parameters)
return_type function_name(parameters) {
//code
}