當前位置:首頁 » 編程語言 » c語言通過遞歸實現數字倒數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言通過遞歸實現數字倒數

發布時間: 2022-08-26 02:58:07

『壹』 c語言你編程:用遞歸方法實現對一個整數 的 逆序輸出

#include <stdio.h>

void printData(int data)
{
if (data==0)
{
return;
}
printf("%d",data%10);
printData(data/10);
}
int main()
{
int data;
printf("Enter a number:");
scanf("%d",&data);
printData(data);
printf("\n");
return 0;
}
程序如上,可以運行。

『貳』 C語言遞歸法把字元倒序輸出

#include <stdio.h>

#include <string.h>

#define N 1//這里的1可以改,改成10同時可以玩10個串串


void printfmm(char *s,int len){

if(len==0){printf("%c ",s[len-1]);return;}

else {printf("%c",s[len-1]);printfmm(s,len-1);}

}


void main() {

char str[N][30],t;

int i,s[52]={0},j;

printf("上串串:");

for(i=0;i<N;i++)

gets(str[i]);

for(i=0;i<N;i++)

printfmm(str[i],strlen(str[i]));


}

『叄』 c語言輸入一個整數,用遞歸演算法將整數倒序輸出.

#include<stdio.h>

voidorder_print(intn)

if(n<10)

printf("%d",n);

return;

order_print(n/10);

printf("%5d",n%10);

void reverse_print(intn)

if(n<10)

printf("%-5d",n);

return;

printf("%-5d",n%10);

reverse_print(n/10);

int main(void)

int n;

printf("Inputainteger:");

scanf("%d",&n);

printf("Orderprint:");

order_print(n);

printf("\n");

printf("Reverseprint:");

reverse_print(n);

return0;

運行效果:

(3)c語言通過遞歸實現數字倒數擴展閱讀:

return的用法:

return的作用是結束正在運行的函數,並返回函數值。return後面可以跟一個常量,變數,或是表達式。函數的定義一般是這樣的,例如:

inta(inti)//第一個int是函數的返回值的類型,也就是return後面跟的值的類型,a是函數的名稱,括弧里的是傳遞給函數的參數,int是參數的類型,i是參數的名字

...//省略函數體內容

returnb;//b必須與函數頭的返回值一致(此處為int型)

簡單函數舉例:

intaddOne(intb)

returnb+1;

該函數的作用是取得一個數,將這個數加上1,再將結果返回

調用時這樣:

intresult=addOne(2);//此時result的值為3

函數括弧里的參數也可以為變數或能算出值的表達式

以上就是一個基本的函數,一般的函數都有返回值,也就是return後面跟的值,返回值可以為各種數據類型,如:int,float,double,char,a[](數組),*a(指針),結構或類(c++)

但不是所有函數都有返回值,如果某個函數無返回值,那麼返回值的位置則為「void」關鍵字,此時函數體中無返回值,即無return的值。但是函數中也可出現return,即一個空的return句子,其作用是使函數立即結束,如voidprint()//括弧中為空表示無傳遞參數、

printf("a");

printf("b");

return;//函數執行到此處結束

printf("c");

}//該函數只執行到return語句處,即屏幕上輸出的為"ab"

『肆』 c語言用遞歸法將五個字元倒序輸出

很簡單的程序

供參考

只能輸入最多5個字元

超過會出錯

要輸入更多 修改buffer大小


#include<stdio.h>
voidprint(char*s)
{
if(*s)
{
print(s+1);
printf("%c",*s);
}
}
intmain()
{
charbuffer[6]={0};
gets(buffer);
print(buffer);
return0;
}

『伍』 c語言中如何實現輸入一個整數實現倒序輸出

1、新建一個工程和.c文件,輸入頭文件和主函數

『陸』 C語言:求一個數倒序輸出,用遞歸怎麼做

你要的是輸入一個123,輸出就是321嘛?

void fun(int t)/*t是輸入的數*/
{
if ( t/10 == 0 )
{
printf("%d",t);
return;
}
printf("%d",t % 10);
t /= 10;
fun(t);
}

void main()
{
int t;
int i;
int w;
printf("輸入的數是幾位:\n");
scanf("%d",&w);
printf("輸入%d位的整數:\n",w);
scanf("%d",&t);
fun(t);
}

『柒』 c語言:將遞歸的方法將一個正整數逆序輸出

1.
演算法:遞歸函數傳入正整數,先輸出最末尾數字,再除以10用遞歸函數繼續迭代,直到該正整數為0時終止遞歸。
2.
常式:
#include<stdio.h>
void rev(int n){
if(n > 0) { //判斷該數是否大於0
printf("%d", n%10); //輸出末位數值
rev(n/10); //遞歸迭代整除10後的剩餘值
}
}
int main(){
rev(1234); //樣例輸入1234
return 0;
}//樣例輸出 4321

『捌』 C語言題目:用遞歸法,將字元串倒序輸出

#include<stdio.h>voidrev();intmain(){rev();return0;}voidrev(){charc;c=getchar();if(c!='\n'){rev();printf("%c",c);}}
這個倒序的函數,就是如果沒有讀到回車符,就繼續遞歸調用函數,直到讀到回車符時才遞歸返回,這時才輸出剛才地壓到棧里的前面讀到的字元,所以,輸出是逆序的。

『玖』 c語言 遞歸 求倒序

#include<conio.h>
#include<stdio.h>
void
reverse()
//遞歸函數
{
char
a;
//每個函數有個保存一個字元的變數
a=getchar();
if(a=='\n')
return;
//如果遇到回車結束,即最後的退出條件
else
reverse();
否則進入遞歸調用
putchar(a);
每個遞歸出來時輸出它接收的一個字元
return;
}
main()
{
printf("\n");
reverse();
getch();
}
完全按你的要求來的

『拾』 c語言 如何編寫一個遞歸函數返回一個整數的反序數

用靜態變數實現

#include<stdio.h>
longinverse(longx)
{
staticlongs=1;
longt;
if(x==0)return0;
t=revers(x/10);
t+=x%10*s;
s*=10;
returnt;
}
intmain()
{
longn;
scanf("%ld",&n);
printf("%ld ",revers(n));
return0;
}