C語言或者C 求 1到n 1出現次數問題

時間 2021-08-30 10:50:13

1樓:匿名使用者

我好久沒有寫**了,具體的**我就不寫了。

這裡給你提供一個思路吧。

在1到n的迴圈裡,每次迴圈要做的就是把當前的整數轉換成字串,然後獲得當前字串的長度,做迴圈和字元1做比較。

說白了就是雙迴圈,外迴圈控制整個1到n的整數遍歷。內迴圈控制當前整數所轉換成的字串與1進行比較。

希望能幫到你!

2樓:安心

//1到n 1出現次數問題 c++

#include

using namespace std;

int t; //記錄1出現的次數

void f(int n)

if(n == 1) t++;

}int main()

//10的20次方...? 我再看看

3樓:匿名使用者

個人覺得還是需要遍歷吧,除非你先把該陣列排序,那樣的話統計起來就不需要遍歷整個陣列了,對於一個無規則的陣列,我想不遍歷是不可能統計出來的吧。其實像這類問題,單個的計算而已的話,就沒什麼好擔心了,主要是函式呼叫的話才會比較耽誤時間,是程式炮得慢,對於這樣的情況,一般可以先對其歸類分組,再去統計,也就是說先對它處理好,把結果儲存起來,呼叫的時候直接呼叫儲存的資料而不用每次都重新去統計。

4樓:匿名使用者

#include

#include

int main()

}printf("cnt=%ld\n",cnt);

getch();

return 0;}

5樓:匿名使用者

#include

int main()

printf("n=%d\n",j);

return 0;}

6樓:薩尤克_之怒

#include

void main()

7樓:那溥胥巨集偉

將整數強制轉換成字串然後放進陣列裡,再做就容易了吧!

C語言求1到n所有質數

include include int lsprime int n int main for i 1 i n i return 0 int lsprime int n 是素數返回1,否則返回0if i k n 1 return 1 elsereturn 0 可以用埃拉託斯特尼篩法,也叫素數篩法,如果...

用c語言求1到n的階層的累加和,用C語言求1到N的階層 的累加和

如果不用階承函式 include void main printf ld n sum 輸出結果 如果用階承函式 include int jc int n void main int jc int n 階乘函式 思路 先定義一個函式用來計算一個數的階乘,在從1到n迴圈依次就其累加和,最後輸出累加和即可...

c語言求1到100的和,c語言中 計算1到100相加

i的初始化值不同,一個是從0開始迴圈,一個是從1開始迴圈,從1開始的迴圈為1到100 包括100 做了100次加法,從0開始的迴圈為0到100 包括100 做了101次加法 煞神一刀 後面一個是從1開始的 前一個是先進行 s i 再進行i 當i 100時,迴圈一次s i之後i 101,退出迴圈 此時...