产业经济学02年c的编程题答案-----请把03年的编程题目贴出来
1、
#include<stdio.h>
void main()
{
int ix;
int n;
int flag=1;
scanf("%d",&n);/*用户输入*/
while(flag)/*n是否是素数的标志*/
{
flag =0;
for(ix=2;ix<n/2;ix++)
{
if(n%ix==0)/*ix是n的素因子?*/
{
printf("%d\t",ix);
n=n/ix;
flag=1;
break;/*再从2开始找*/
}
}
}
printf("%d\t",n);/*输出最后一个素因子*/
}
2、#include<stdio.h>
#define N 7
void main()
{
int A[N]={5,3,4,7,3,5,6};
int iFlag =1,icount=0,ix;
int B[N];
int min=A[0],max=A[0];
int lastmin;
/*寻找最大最小数*/
for(ix=0;ix<N;ix++)
{
if(A[ix]>max)
max=A[ix];
if(A[ix]<min)
min=A[ix];
}
lastmin =min-1;
/*icount纪录已编号的个数*/
while(icount<7)
{
min=max;
/*寻找新的最小值*/
for(ix=0;ix<7;ix++)
{
if(A[ix]<=min&&A[ix]>lastmin)
{
min = A[ix];
}
}
/*保存当前最小值*/
lastmin=min;
/*给等于当前最小值的数编号*/
for(ix=0;ix<7;ix++)
{
if(A[ix]==lastmin)
{
B[ix] =iFlag;
icount++;
}
}
iFlag++;
}
for(ix=0;ix<7;ix++)
{
printf("%d\n",B[ix]);
}
}
3、#include<stdio.h>
void main()
{
int i,j,m,n,k;
int a[3];
int b[20];
int c[10]={0};
int use=0;
/*找到这样的三位数并保存*/
for(i=11,j=0;i*i<987;i++)
{
a[0]=i*i%10;
a[1]=i*i/10%10;
a[2]=i*i/100;
if(a[0]!=a[1]&&a[0]!=a[2]&&a[1]!=a[2])
{
b[j++]=i*i;
}
}
/*用一个三重循环来找这么一组数*/
for(i=0;i<j;i++)
for(m=i+1;m<j;m++)
for(n=m+1;n<j;n++)
{
c[b%10]=1;
c[b/10%10]=1;
c[b/100]=1;
c[b[m]%10]=1;
c[b[m]/10%10]=1;
c[b[m]/100]=1;
c[b[n]%10]=1;
c[b[n]/10%10]=1;
c[b[n]/100]=1;
for(k=1;k<10;k++)
use+=c[k];
if(use==9)
{
printf("%d,%d,%d",b,b[m],b[n]);
return;
}
else
{
for(k=1;k<10;k++)
c[k]=0;
use =0;
}
}
}
觉得有用的朋友请帮忙花几分钟把03年的编程题目也贴出来,我做一下,大家觉得需要交流我做完了再贴出来