本題要求實現乙個函式,判斷任一給定整數n
是否滿足條件:它是完全平方數,又至少有兩位數字相同,如144、676等。
int isthenumber ( const int n );
其中n
是使用者傳入的引數。如果n
滿足條件,則該函式必須返回1,否則返回0。
#include #include int isthenumber ( const int n );
int main()
printf("cnt = %d\n", cnt);
return 0;
}/* 你的**將被嵌在這裡 */
105 500
cnt = 6
1.要滿足題設的兩個條件:1).完全平方數,2).至少有兩位相同,初次初次看到題目時,直接想到的就是暴力1-√n判斷,看了網上幾個帖子後,我們可以使用sqrt(),然後強制型別轉換為int,再平方後看是否相等即可,這到是乙個不錯的方法,時間消耗很少。對於至少兩位相同,我使用對於它的每一位都儲存到h[10]裡面,陣列初始值為0,陣列下標代表當前這一位數,值表示個數,最後判斷只要乙個陣列下標的值大於1即可(根據初始值的不同,判斷條件不同)。最後在兩者同時成立情況下,該正整數滿足條件,返回1
2.**還是之前暴力的**,沒有修改,既然可以過,那就ac吧,
int isthenumber ( const int n )
//暴力判斷是否為完全平方數
for(k=0;k<=n;k++)
}//取每一位並儲存個數
for(n=n,k=n%10;n!=0;k=n%10)
//對於個數大於1的,即存在至少有兩位相同,
for(k=0;k<10;k++)
}//對於同時滿足這兩種情況的返回1 否則,返回0
if(i==1&&j==1)
else
}
PAT基礎程式設計題目集 6 9 統計個位數字
本題要求實現乙個函式,可統計任一整數中某個位數出現的次數。例如 21252中,2出現了3次,則該函式應該返回3。int count digit const int n,const int d 其中n和d都是使用者傳入的引數。n的值不超過int的範圍 d是 0,9 區間內的個位數。函式須返回n中d出現...
pta基礎程式設計題目集 程式設計題
題目鏈結 5 7 12 24小時制 include int main int argc,const char argv 5 8 超速判斷 include int main int argc,const char argv 5 9 用天平找小球 include int main int argc,co...
PTA基礎程式設計題目集(程式設計題)
7 2 然後是幾點 有時候人們用四位數字表示乙個時間,比如1106表示11點零6分。現在,你的程式要根據起始時間和流逝的時間計算出終止時間。讀入兩個數字,第乙個數字以這樣的四位數字表示當前時間,第二個數字表示分鐘數,計算當前時間經過那麼多分鐘後是幾點,結果也表示為四位數字。當小時為個位數時,沒有前導...