השאלה הראשונה היא לממש פונקציה הממירה
int -> string
שתקרא מהפונקציה הראשית הבאה:
int main(void) {
int x=1234;
char *str = malloc(100);
rev(x,str);
printf("num is %s",str); // Should print 1234
return;
And my solution is (Solved it correctly at home later =\ ):
void rev(int x,char *str){
int j=0;
if (x==0){
str[0]='0' ; str[1]= '\0'; return;
}else if (x<0){
str[0]='-';
j=1;
x = x*(-1);
}
int counter=0;
int temp = x ;
while (temp-(temp/10)*10 >0){
counter++;
temp =temp/10;
}
str[counter+j]='\0';
j = 1-j;
for (;counter>0;counter–){
int t = x-(x/10)*10;
str[counter-j] = '0'+t;
x = x/10;
}
}