任给十进制整数,请从低位到高位……
生活随笔
收集整理的這篇文章主要介紹了
任给十进制整数,请从低位到高位……
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
其實這個題目本質(zhì)上就是將輸入的字符串或者字符數(shù)組逆序輸出,也是我比較喜歡用的辦法,可以解決大部分類似的問題。但為了學習到算法的多種可能性,下面用三種方法來對這個問題進行求解:
文章目錄
- 字符數(shù)組逆序輸出
- 遞歸法
- 循環(huán)法
字符數(shù)組逆序輸出
#include<stdio.h> #define N 65535 int main() {char ch;char str[N];int cnt=0;//輸入ch=getchar();for(int i=0;ch!='\n';i++){str[i]=ch;cnt++;ch=getchar();}//輸出for(int k=cnt-1;k>=0;k--){printf("%c ",str[k]);}return 0; }遞歸法
#include<stdio.h> int f(int n); int main() {int n;scanf("%d",&n);f(n);return 0; } int f(int n){if(n<10){printf("%d\n",n);}else{printf("%d",n%10);f(n/10);} }循環(huán)法
#include<stdio.h> int main() {int n;scanf("%d",&n);while(n>=10){printf("%d ",n%10);n/=10;}printf("%d\n",n);return 0; }
經(jīng)運行截圖判斷,在時間復雜度上:
O(遞歸法)>O(字符數(shù)組逆序輸出)>O(循環(huán)法)
總結
以上是生活随笔為你收集整理的任给十进制整数,请从低位到高位……的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: realme 音频产品销量超 2000
- 下一篇: 66W 快充 + 250 元破冰新低:华