帮忙看看程序哪里有错

来源:百度知道 编辑:UC知道 时间:2024/05/21 22:32:28
#include"stdio.h"
void fun(int array[],int n)
{int m,j,t;
for(m=0;m<=n-2;m++)
for(j=0;j<n-m-1;j++)
{if(array[j]>array[j+1])
{t=array[j];
array[j]=array[j+1];
array[j+1]=t;
}}
}
main()
{
long int a;
int b[10],k=0,i,q;
FILE *fp;
if((fp=fopen("myf2.out","w"))==NULL)
{printf("Can not open this file!");exit(0);}
scanf("%d",&a);
while(a)
{b[k++]=a%10;
a/=10;
}
printf("%d\n",k);fprintf(fp,"%d\n",k);
for(i=0;i<k;i++)
prinff("%d",b[i]);fprintf(fp,"%d",b[i]);
fun(b,k);
for(i=k-1;i>=0;i--)
q=b[i]*10+b[i-1];
printf("%d",q);fprintf(fp,"%d",q);
fprintf(fp,"\nMy exam number is 0683102");
fclose(fp);
}

下面是该好的程序。
#include<stdio.h>
#include<stdlib.h>
void fun(int array[],int n)
{
int m,j,t;
for(m=0;m<=n-2;m++)
for(j=0;j<n-m-1;j++)
{
if(array[j]>array[j+1])
{
t=array[j];
array[j]=array[j+1];
array[j+1]=t;
}
}
}
main()
{
long int a;
int b[10],k=0,i,q;
FILE *fp;
if((fp=fopen("myf2.out","w"))==NULL)
{
printf("Can not open this file!");
exit(0);
}
scanf("%d",&a);
while(a)
{
b[k++]=a%10;
a/=10;
}
printf("%d\n",k);fprintf(fp,"%d\n",k);
for(i=0;i<k;i++)
printf("%d",b[i]);fprintf(fp,"%d",b[i]);
fun(b,k);
for(i=k-1;i>=0;i--)
q=b[i]*10+b[i-1];
printf("%d",q);fprintf(fp,"%d",q);