输出斐波那契数列前N个合数,四个一行,N由使用者输入,介于10到30之间。 #include<stdio.h> #include<math.h> int fab(int); int judge(int); int main() { int a[30]={0}; int i,n,t=0; do { printf("Input the number/n"); scanf("%d",&n); } while(n>30||n<10); for(i=0;1;i++) { if(t==n) break; else if(judge(fab(i))==1) { a[t]=fab(i); t+=1; } } for(i=0;i<n;i++) { printf("%15d",a[i]); if((i+1)%4==0) printf("/n"); } printf("/n"); return 0; } int fab(int x) { int m=1,n=1,t,i; if(x==0||x==1) return 1; for(i=0;i<x;i++) { t=m; m=n; n=t+n; } return m; } int judge(int x) { int i; if(x==1||x==2) return 0; for(i=2;i<sqrt(x)+1;i++) { if(x%i==0) return 1; continue; } return 0; } = =。。这玩意纠结死。。。