c语言无法解析的外部指令?
#include<stdio.h>#include<math.h>#include<stdlib.h>#include<time.h>intmain();//(1)int...
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<time.h>
int main();
//(1)
int Rand1000(int d[],int n)//随机生成1000个均匀不相同的正整数,n=999
{
int i,j;
FILE*fp;
srand((unsigned)time(NULL));
for(i=0;i<n;i++)
{
d[i]=rand();
for(j=0;j<i;j++)
if(d[j]==d[i])
{
j=0; d[i]=rand();}//去掉重复的数据
printf("%d",d[i]);
}
printf("\n======产生随机数结束======\n");
fp=fopen("filel.dat","w");//写入文本文件 “filel.dat”中
for(i=0;i<n;i++)
{
fprintf(fp,"%d\n",d[i]);
}
fclose(fp);//关闭文本
return 0;
}
//(2)读取数据文件
int intput(char filename[30],int a[])
{
FILE *fp;
int k=0;
printf("\n读入a组中\n");
if((fp=fopen(filename,"r"))==NULL)
{
printf("Read File Error");
return 0;
}
while(!feof(fp))
{
fscanf(fp,"%d",&a[k]);
k=k+1;
}
printf("\n文件中所有的记录数为=%d\n",k);
return k-1;
}//(3)
int digitcount(int a[],int n,int b[10])//统计数字个数
{
int i,k;
printf("\n开始统计每位数字出现的次数,0-9 \n");
for(i=0;i<10;i++) b[i]=0;
for(i=0;i<n;i++)
{
k=a[i];
while(k!=0)
{
b[k%10]++;
k=k/10;
}
}
for(i=0;i<10;i++)
printf("\n结束统计美味数字出现的次数\n");
return 0;
}
//(4)
int maxprime(int *p,int n)//确定最大的素数
{
int i,k,j;
for(i=0;i<n;i++)
{
k=p[i];
for(j=2;j<=sqrt((float)k)+1;j++)//让整数n从被2到n的平方根之间的数一一整除
if(k%j==0) break;//若能被其中一个整数除,则不是素数,跳出循环返回0
if(j>sqrt((float)k)+1) return i;//p[i]是最大素数
}
return -1;//不包含素数
}
int sort(int d[],int total)//为数据排序
{
int i,k,temp;
printf("\n 开始排序\n");
for(i=1;i<total;i++)
{
for(k=i-1,temp=d[i];k>=0;k--)
{
if(d[k]<temp) d[k+1]=d[k];
else
{
d[k+1]=temp; break;
}
}
if(k<0) d[0]=temp;
}
for(i=0;i<total;i++) printf("%d",d[i]);
printf("\n 排序完毕\n");
return 0;
}
//(5)
int maxandmin(int *p,int n)//maxandmin=最大和最小
{
int max=p[0]-p[1],min=p[0]-p[1],dif;//dif=difference
int i;
for(i=0;i<n-1;i++)
{
dif=fabs((float)p[i]-p[i+1]);
if(dif>max) max=dif;
if(dif<min) min=dif;
}
for(i=0;i<n-1;i++)
{
if(max==fabs((long double)p[i]-p[i+1]))
printf("max dif:d[%d]-[%d]=%d\n",i,i+1,(int)fabs((long double)p[i]-p[i+1]));
if(min==fabs((long double)(p[i]-p[i+1])))
printf("min dif:d[%]-d[%d]=%d\n",i,i+1,(int)fabs((long double)p[i]-p[i+1]));
}
return 0;
}
//(6)
void Transformation(char *fn,int *p)
{
FILE *fp;
char d[10];
int k,temp,i=0;
fp=fopen(fn,"r");
printf("\n====读取文件中的数据转换成数组====\n");
while(!feof(fp))
{
k=0;
temp=fgetc(fp);
while(temp==32||temp==13||temp==10) temp=fgetc(fp);
while(temp!=32&&!feof(fp));//32是空格的ASCLL
{
d[k]=temp; k++;temp=fgetc(fp);
}
d[k]='\0';
p[i]=atoi(d);
i++;
}
printf("\nTotal number is: %d\n",i-1);
fclose(fp);
for(k=0;k<i-1;k++)
printf("%d",p[k]);
printf("\n====转化结束====\n");
} 展开
#include<math.h>
#include<stdlib.h>
#include<time.h>
int main();
//(1)
int Rand1000(int d[],int n)//随机生成1000个均匀不相同的正整数,n=999
{
int i,j;
FILE*fp;
srand((unsigned)time(NULL));
for(i=0;i<n;i++)
{
d[i]=rand();
for(j=0;j<i;j++)
if(d[j]==d[i])
{
j=0; d[i]=rand();}//去掉重复的数据
printf("%d",d[i]);
}
printf("\n======产生随机数结束======\n");
fp=fopen("filel.dat","w");//写入文本文件 “filel.dat”中
for(i=0;i<n;i++)
{
fprintf(fp,"%d\n",d[i]);
}
fclose(fp);//关闭文本
return 0;
}
//(2)读取数据文件
int intput(char filename[30],int a[])
{
FILE *fp;
int k=0;
printf("\n读入a组中\n");
if((fp=fopen(filename,"r"))==NULL)
{
printf("Read File Error");
return 0;
}
while(!feof(fp))
{
fscanf(fp,"%d",&a[k]);
k=k+1;
}
printf("\n文件中所有的记录数为=%d\n",k);
return k-1;
}//(3)
int digitcount(int a[],int n,int b[10])//统计数字个数
{
int i,k;
printf("\n开始统计每位数字出现的次数,0-9 \n");
for(i=0;i<10;i++) b[i]=0;
for(i=0;i<n;i++)
{
k=a[i];
while(k!=0)
{
b[k%10]++;
k=k/10;
}
}
for(i=0;i<10;i++)
printf("\n结束统计美味数字出现的次数\n");
return 0;
}
//(4)
int maxprime(int *p,int n)//确定最大的素数
{
int i,k,j;
for(i=0;i<n;i++)
{
k=p[i];
for(j=2;j<=sqrt((float)k)+1;j++)//让整数n从被2到n的平方根之间的数一一整除
if(k%j==0) break;//若能被其中一个整数除,则不是素数,跳出循环返回0
if(j>sqrt((float)k)+1) return i;//p[i]是最大素数
}
return -1;//不包含素数
}
int sort(int d[],int total)//为数据排序
{
int i,k,temp;
printf("\n 开始排序\n");
for(i=1;i<total;i++)
{
for(k=i-1,temp=d[i];k>=0;k--)
{
if(d[k]<temp) d[k+1]=d[k];
else
{
d[k+1]=temp; break;
}
}
if(k<0) d[0]=temp;
}
for(i=0;i<total;i++) printf("%d",d[i]);
printf("\n 排序完毕\n");
return 0;
}
//(5)
int maxandmin(int *p,int n)//maxandmin=最大和最小
{
int max=p[0]-p[1],min=p[0]-p[1],dif;//dif=difference
int i;
for(i=0;i<n-1;i++)
{
dif=fabs((float)p[i]-p[i+1]);
if(dif>max) max=dif;
if(dif<min) min=dif;
}
for(i=0;i<n-1;i++)
{
if(max==fabs((long double)p[i]-p[i+1]))
printf("max dif:d[%d]-[%d]=%d\n",i,i+1,(int)fabs((long double)p[i]-p[i+1]));
if(min==fabs((long double)(p[i]-p[i+1])))
printf("min dif:d[%]-d[%d]=%d\n",i,i+1,(int)fabs((long double)p[i]-p[i+1]));
}
return 0;
}
//(6)
void Transformation(char *fn,int *p)
{
FILE *fp;
char d[10];
int k,temp,i=0;
fp=fopen(fn,"r");
printf("\n====读取文件中的数据转换成数组====\n");
while(!feof(fp))
{
k=0;
temp=fgetc(fp);
while(temp==32||temp==13||temp==10) temp=fgetc(fp);
while(temp!=32&&!feof(fp));//32是空格的ASCLL
{
d[k]=temp; k++;temp=fgetc(fp);
}
d[k]='\0';
p[i]=atoi(d);
i++;
}
printf("\nTotal number is: %d\n",i-1);
fclose(fp);
for(k=0;k<i-1;k++)
printf("%d",p[k]);
printf("\n====转化结束====\n");
} 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询