/***********SPACE***********/
if(【?
】)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
printf("outputthesortedarray:
\n");
for(i=0;i<=N-1;i++)
printf("%5d",a[i]);
printf("\n");
return0;
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
用函数调用方式,实现字符串的复制。
-------------------------------------------------------*/
#include
voidstring_copy(char*str_from,char*str_to)
{
inti=0;
/***********SPACE***********/
for(;(*(【?
】)=*(str_from+i))!
='\0';i++);
}
intmain()
{
staticchararray_str1[20]="iamateacher.";
chararray_str2[20];
/***********SPACE***********/
【?
】(array_str1,array_str2);
/***********SPACE***********/
【?
】("array_str2=%s\n",array_str2);
return0;
}/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:
求两个形参的乘积和商数,并通过形参返回调用程序。
例如:
输入:
61.82和12.65,输出为:
c=782.023000
d=4.886957
------------------------------------------------------*/
#include
#include
/**********FOUND**********/
voidfun(doublea,b,double*x,double*y)
{
/**********FOUND**********/
x=a*b;
/**********FOUND**********/
y=a/b;
}
main()
{
doublea,b,c,d;
printf("Entera,b:
");
scanf("%lf%lf",&a,&b);
fun(a,b,&c,&d);
printf("c=%fd=%f\n",c,d);
}
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:
统计出若干个学生的平均成绩,最低分以及得最低分的人数。
例如:
输入10名学生的成绩分别为92,87,68,56,92,84,67,
75,92,66,则输出平均成绩为77.9,最低分为56,得最
低分的人数为1人。
------------------------------------------------------*/
#include
floatMin=0;
intJ=0;
floatfun(floatarray[],intn)
{
inti;floatsum=0,ave;
Min=array[0];
for(i=0;i{
if(Min>array[i])Min=array[i];
/**********FOUND**********/
sum=+array[i];
}
/**********FOUND**********/
ave=sum\n;
for(i=0;i/**********FOUND**********/
if(array[i]=Min)J++;
return(ave);
}
intmain()
{
floata[10],ave;
inti=0;
for(i=0;i<10;i++)
scanf("%f",&a[i]);
ave=fun(a,10);
printf("平均分=%f\n",ave);
printf("最低分=%f\n",Min);
printf("最低分人数:
%d\n",J);
return0;
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
编写函数fun求1!
+2!
+3!
+……+n!
的和,在main函
数中由键盘输入n值,并输出运算结果。
请编写fun
函数。
例如:
若n值为5,则结果为153。
------------------------------------------------*/
#include
voidwwjt();
longintfun(intn)
{
/**********Program**********/
/**********End**********/
}
intmain()
{
intn;
longintresult;
scanf("%d",&n);
result=fun(n);
printf("%ld\n",result);
wwjt();
return0;
}
voidwwjt()
{
FILE*IN,*OUT;
inti;
intiIN;
longintiOUT;
IN=fopen("in.dat","r");
if(IN==NULL)
{
printf("PleaseVerifyTheCurrerntDir..ItMayBeChanged");
}
OUT=fopen("out.dat","w");
if(OUT==NULL)
{
printf("PleaseVerifyTheCurrentDir..ItMayBeChanged");
}
for(i=0;i<10;i++)
{
fscanf(IN,"%d",&iIN);
iOUT=fun(iIN);
fprintf(OUT,"%ld\n",iOUT);
}
fclose(IN);
fclose(OUT);
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
打印出如下字母塔。
最后一行字母前无空格
A
BBB
CCCCC
DDDDDDD
-------------------------------------------------------*/
#include
intmain()
{
inti,j,k;
/***********SPACE***********/
for(i=0;【?
】;i++)
{
for(j=0;j<3-i;j++)
printf("");
/***********SPACE***********/
for(k=1;k<=【?
】;k++)
/***********SPACE***********/
printf(【?
】);
printf("\n");
}
return0;
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
从读入的整数数据中,统计大于零的整数个数和小于零的
整数个数。
用输入零来结束输入,程序中用变量i统计大于
零的整数个数,用变量j统计小于零的整数个数。
-------------------------------------------------------*/
#include
intmain()
{
intn,i,j;
printf("EnteriNTnumber,with0toend\n");
i=j=0;
scanf("%d",&n);
while(n!
=0)
{
/***********SPACE***********/
if(n>0)i=【?
】;
/***********SPACE***********/
if(n<0)j=【?
】;
/***********SPACE***********/
scanf("%d",【?
】);
}
printf("i=%4d\n",i,j);
return0;
}
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:
输入n,计算s=1+1+2+1+2+3+1+2+3+4+...+1+2+3+4+...+n
------------------------------------------------------*/
#include
voidmain()
{
/**********FOUND**********/
inti,s;p,n;
printf("Entern:
\n");
/**********FOUND**********/
scanf("%d",n);
s=p=0;
/**********FOUND**********/
for(i=1;i{
p=p+i;
s=s+p;
}
printf("S=%d\n",s);
}
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:
输入10个数,要求输出这10个数的平均值
------------------------------------------------------*/
#include
doubleaverage(doublearray[10])
{
inti;
doubleaver,sum=array[0];
/***********FOUND***********/
for(i=0;i<10;i++)
sum=sum+array[i];
aver=sum/10.0;
return(aver);
}
intmain()
{
/***********FOUND***********/
intscore[10],aver;
inti;
printf("input10scores:
\n");
for(i=0;i<10;i++)
/***********FOUND***********/
scanf("%f",score);
printf("\n");
/***********FOUND***********/
aver=average(score[10]);
printf("averagescoreis%5.2f",aver);
return0;
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
判断一个整数w的各位数字平方之和能否被5整除,
可以被5整除则返回1,否则返回0。
------------------------------------------------*/
#include
voidwwjt();
intfun(intw)
{
/**********Program**********/
/**********End**********/
}
intmain()
{
intm;
printf("Enterm:
");
scanf("%d",&m);
printf("\nTheresultis%d\n",fun(m));
wwjt();
return0;
}
voidwwjt()
{
FILE*IN,*OUT;
intc;
intt;
into;
IN=fopen("in.dat","r");
if(IN==NULL)
{
printf("ReadFILEError");
}
OUT=fopen("out.dat","w");
if(OUT==NULL)
{
printf("WriteFILEError");
}for(c=1;c<=40;c++)
{
fscanf(IN,"%d",&t);
o=fun(t);
fprintf(OUT,"%d\n",o);
}
fclose(IN);
fclose(OUT);
}
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
功能:
从键盘上输入一个正整数,判断其是否是回文数。
说明:
所谓回文数是指顺序读与反序读都是一样的数,如121、25852都是回文数。
将整数的各位依次存入数组a中,然后再进行判断
-------------------------------------------------------*/
#include
intmain()
{
intnum,a[10],r;
inti=0,j,flag=1;/*flag作为是否为回文的标志*/
scanf("%d",&num);
if(num<=0)return-1;
do
{
r=num%10;
/***********SPACE***********/
【?
】;
num=num/10;
i++;
}
while(num%10!
=0);
for(j=0,i--;i>=j;i--,j++)
if(a[j]==a[i])
/***********SPACE***********/
【?
】;
else
{
flag=0;
break;
}
/***********SPACE***********/
if(【?
】)
printf("是回文\n");
else
printf("不是回文\n");
return0;
}
a/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:
编写函数fun求1000以内(正整数,不包括1000)所有8的倍数之和。
------------------------------------------------------*/
#include
#defineN1000
intfun(intm)
{
/**********FOUND**********/
ints=0;i;
/**********FOUND**********/
for(i=1;i>N;i++)
/**********FOUND**********/
if(i/m==0)
s=s+i;
returns;
}
intmain()
{
intsum;
sum=fun(8);
printf("%d以内所有%d的倍数之和为:
%d\n",N,8,sum);
return0;
}
/*------------------------------------------------------
【程序改错】
--------------------------------------------------------
功能:
求出数组中最大数和次最大数,并把最大数和a[0]中的数
对调、次最大数和a[1]中的数对调。
------------------------------------------------------*/
#include
#defineN20
voidfun(inta[],intn)
{
inti,m,t,k;
for(i=0;i<2;i++)/*两次循环,分别找最大数和次大数*/
{
/**********FOUND**********/
m=0;
for(k=i;k/**********FOUND**********/
if(a[k]>a[m])k=m;
t=a[i];a[i]=a[m];a[m]=t;
}
}
intmain()
{
intb[N]={11,5,12,0,3,6,9,7,10,8},n=10,i;
for(i=0;iprintf("\n");
/**********FOUND**********/
fun(intb[N],n);
for(i=0;iprintf("%d",b[i]);
printf("\n");
return0;
}
/*------------------------------------------------
【程序设计】
--------------------------------------------------
功能:
编写函数fun求一个字符串(长度不超过80)的长度,在main函数中
输入字符串,并输出其长度。
------------------------------------------------*/
#include
voidwwjt();
intfun(char*p1)
{
/**********Program**********/
/**********End**********/
}
intmain()
{
char*p,a[80];
intlen;
p=a;
printf("pleaseinputastring:
\n");
gets(p);
len=fun(p);
printf("Thestring'slengthis:
%d\n",len);
wwjt();
return0;
}
voidwwjt()
{
FILE*IN,*OUT;
char*pIN,sin[80];
intiOUT,i;
pIN=sin;
IN=fopen("3.IN","r");
if(IN==NULL)
{
printf("PleaseVerifyTheCurrerntDir..itMayBeChanged");
}
OUT=fopen("3.out","w");
if(OUT==NULL)
{
printf("PleaseVerifyTheCurrentDir..itMayBeChanged");
}
for(i=0;i<10;i++)
{
fscanf(IN,"%s",pIN);
iOUT=fun(pIN);
fprintf(OUT,"%d\n",iOUT);
}
fclose(IN);
fclose(OUT);
}
/*------------------------------