當前位置:編程學習大全網 - 編程軟體 - c語言編程題 題目標題: 猜年齡 美國數學家維納(N.Wiener)智力早熟,11歲就

c語言編程題 題目標題: 猜年齡 美國數學家維納(N.Wiener)智力早熟,11歲就

c語言追求的是程序執行時間效率,題目給出立方之後是四位數,可以人為確定年齡範圍在10-21歲,至於為什麽不確定六位數再精確壹點,個人覺得沒什麽必要。這個編程的核心在於如何分辨這10個數字不同,我定義了壹個函數,用數組加循環判斷。以下是具體代碼。

#include?<stdio.h>

#include<stdlib.h>

#include<math.h>

int?same(int?a[10]);//判斷10個數是否相等,相互不相等返回1

int?many(int?a);//判斷壹個整型數是幾位數

main()

{

int?a[10]?,i?,j?,s?,l;?//a儲存10個數字的數組,i年齡循環變量,j將數字存入數組,s儲存四位數,l儲存六位數

for(i=10;i<22;i++){

s=pow((double)i,3);

l=pow((double)i,4);

if(many(l)!=6)

continue;//如果不是六位數則退出當次循環

for(j=0;j<4;j++){

a[j]=s%10;

s=s/10;

}//存入四位數

for(j=4;j<10;j++){

a[j]=l%10;

l=l/10;

}//存入六位數

if(same(a))

printf("age=%d\n",i);//輸出

}

system("pause");

}

int?many(int?a){

int?i=0;

while(a>0){

a=a/10;

i++;

}

return?i;

}

int?same(int?a[10]){

int?i,j,flag=1;

for(i=0;i<10;i++){

for(j=i+1;j<10;j++){

if(a[i]==a[j])

flag=0;

}

}

return?flag;

}

  • 上一篇:如何學習cad系統?
  • 下一篇:cad有哪些快捷鍵?
  • copyright 2024編程學習大全網