数字递归输出

一个朋友遇到一个不是很熟悉的问题,对于新手或许有些帮助,没有其他检验操作,只是递归.

详情

#include <stdio.h>  
#include <stdlib.h>  
#include <math.h>  

int fn(int n)  
{  
    
	int s=0;
	int y=0;
	s=n/10;
	y=n%10;
	if(s!=0)
	{
		fn(s);
		printf("-%d",y);
	}
	else
	{
		printf("%d",y);
	}
}


int main()  
{  
    int m=1234;  
	fn(m);
    return 0;  
}  
#include"iostream"
using namespace std;

void fn(char* s){
	char *p=s+1;
	if(*s!='\0'){
		fn(p);
		cout<<*s;
	}
	
}

int main(){
	char a[100];
	int i=0;
	cin>>a[i];
	char t;
	while(a[i]!='?')
	{
		cin>>a[++i];
	}
	a[i]='\0';
	char *p=a;
	fn(p);	
	return 0;
}