當前位置:編程學習大全網 - 編程軟體 - 編程題,誰有比較簡單的方式實現這道題?用c語言。

編程題,誰有比較簡單的方式實現這道題?用c語言。

#include?<stdio.h>

#include?<stdlib.h>

int?min(int?a,int?b,int?c);

int?main()

{

int?n;

scanf("%d",&n);

int?*a?=?(int?*)malloc(n*sizeof(int));

int?temp;

int?index2?=?0;

int?index3?=?0;

int?index5?=?0;

int?index?=?1;

a[0]?=?1;

while(index<n)

{

temp?=?min(a[index2]*2,a[index3]*3,a[index5]*5);

if(temp?==?a[index2]*2)

index2++;

if(temp?==?a[index3]*3)

index3++;

if(temp?==?a[index5]*5)

index5++;

a[index++]?=?temp;

}

printf("a[%d]?=?%d\n",index-1,a[index-1]);

return?0;

}

int?min(int?a,int?b,int?c)

{

a?=?a<b?a:b;

return?(a<c?a:c);

}

這個實際上是醜數問題,程序我給妳貼這兒了。這種算法是目前c裏邊求醜數效率最高的。

希望妳能理解程序的精妙之處,望采納!!!

  • 上一篇:數據分析師和程序員的區別
  • 下一篇:我是壹個大壹計算機專業女生,我想買筆記本
  • copyright 2024編程學習大全網