2024年6月5日发(作者:)
int iIN,i;
double dOUT;
IN=fopen("","r");
if(IN==NULL)
{
printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("","w");
if(OUT==NULL)
{
printf("Please Verify The Current Dir.. It May Be Changed");
}
for(i=0;i<5;i++)
{
fscanf(IN,"%d",&iIN);
dOUT=fun(iIN);
fprintf(OUT,"%fn",dOUT);
}
fclose(IN);
fclose(OUT);
}
答案:----------------------
double y=1;
int i;
for(i=1;i<=m;i++)
if(i%2==0)y*=i;
return y;
----------------------
显示序号:223
题号:367
功能:求一组数中大于平均值的数的个数。
例如:给定的一组数为1,3,6,9,4,23,35,67,12,88时,函
数值为3。
#include "stdio.h"
int fun(int a[],int n)
{
/**********Program**********/
/********** End **********/
}
main()
{
int a[10]={1,3,6,9,4,23,35,67,12,88};
int y;
y=fun(a,10);
printf("y=%dn",y);
yzj();
getch();
}
yzj()
{
FILE *IN,*OUT;
int iIN[10],iOUT,i,j;
IN=fopen("","r");
if(IN==NULL)
{
printf("Please Verify The Currernt Dir..It May Be Changed");
}
OUT=fopen("","w");
if(OUT==NULL)
{
printf("Please Verify The Current Dir.. It May Be Changed");
}
for(j=0;j<10;j++)
{
for(i=0;i<10;i++)
fscanf(IN,"%d",&iIN[i]);
iOUT=fun(iIN,10);
}
fprintf(OUT,"%dn",iOUT);
fclose(IN);
fclose(OUT);
}
答案:----------------------
int i,k=0;
float s=0,ave;
for(i=0;i s+=a[i]; ave=s/n; printf("%f ",ave); for(i=0;i if(a[i]>ave)k++; return k; ---------------------- 显示序号:224 题号:368 功能:找出一批正整数中的最大的偶数。 #include "stdio.h" int fun(int a[],int n) { /**********Program**********/ /********** End **********/ } main() { int a[]={1,2,9,24,35,18},k; k=fun(a,6); printf("max=%dn",k); yzj(); getch(); } yzj() { FILE *IN,*OUT; int iIN[10],iOUT,i,j; IN=fopen("","r"); if(IN==NULL) { printf("Please Verify The Currernt Dir..It May Be Changed"); } OUT=fopen("","w"); if(OUT==NULL) { printf("Please Verify The Current Dir.. It May Be Changed"); } for(j=0;j<10;j++) { for(i=0;i<10;i++) fscanf(IN,"%d",&iIN[i]); iOUT=fun(iIN,10); } fprintf(OUT,"%dn",iOUT); fclose(IN); fclose(OUT); } 答案:---------------------- int i,amax=-1; for(i=0;i if(a[i]%2==0) if (a[i]>amax) amax=a[i]; return amax; ---------------------- 显示序号:225 题号:369 功能:求一分数序列2/1,3/2,5/3,8/5,13/8,21/13… 的前n项之和。 说明:每一分数的分母是前两项的分母之和,每一分数的 分子是前两项的分子之和 例如:求前20项之和的值为32.660259。 #include "stdio.h" float fun(int n) { /**********Program**********/ /********** End **********/ } main() { float y; y=fun(20); printf("y=%fn",y); yzj(); getch(); } yzj() { FILE *IN,*OUT; int iIN,i; float fOUT; IN=fopen("","r"); if(IN==NULL) { printf("Please Verify The Currernt Dir..It May Be Changed"); } OUT=fopen("","w"); if(OUT==NULL) { printf("Please Verify The Current Dir.. It May Be Changed"); } for(i=0;i<5;i++) { fscanf(IN,"%d",&iIN); fOUT=fun(iIN); fprintf(OUT,"%fn",fOUT); } fclose(IN); fclose(OUT); } 答案:---------------------- int i; float f1=1,f2=1,f3,s=0; for(i=1;i<=n;i++) {f3=f1+f2; f1=f2; f2=f3; s=s+f2/f1; } return s; ---------------------- 显示序号:226 题号:370 功能:编写函数判断一个整数m的各位数字之和能否被7整除, 可以被7整除则返回1,否则返回0。调用该函数找出 100~200之间满足条件的所有数。 #include "stdio.h" int sub(int m) { /**********Program**********/ /********** End **********/ } main() { int i; for(i=100;i<=200;i++) if(sub(i)==1) printf("%4d",i); yzj(); getch(); } yzj() { FILE *IN,*OUT; int n; int i[10]; int o; IN=fopen("","r"); if(IN==NULL) { printf("Read File Error"); } OUT=fopen("","w"); if(OUT==NULL) { printf("Write File Error"); } for(n=0;n<10;n++) { fscanf(IN,"%d",&i[n]); } for(n=0;n<10;n++) { o=sub(i[n]); fprintf(OUT,"%dn",o); } fclose(IN); fclose(OUT); } 答案:---------------------- int k,s=0; do {s=s+m%10; m=m/10; }while(m!=0); if(s%7==0)k=1; else k=0; return(k); ---------------------- 显示序号:227 题号:372 功能:用函数将第2个串连接到第1个串之后,不允许使用 strcat函数。 #include "stdio.h" void len_cat(char c1[],char c2[]) { /**********Program**********/ /********** End **********/ } main() { char s1[80],s2[40]; gets(s1);gets(s2); len_cat(s1,s2); printf("string is: %sn",s1); yzj(); getch(); } yzj() { FILE *IN,*OUT; int m,n; int i[2][200]; IN=fopen("","r"); if(IN==NULL) { printf("Read File Error"); } OUT=fopen("","w"); if(OUT==NULL) { printf("Write File Error"); } for(n=0;n<2;n++) fscanf(IN,"%s",i[n]); len_cat(i[0],i[1]); fprintf(OUT,"%sn",i[0]); fclose(IN); fclose(OUT); } 答案:---------------------- int i,j; for(i=0;c1[i]!='0';i++); for(j=0;c2[j]!='0';j++) c1[i+j]=c2[j]; c1[i+j]='0'; ---------------------- 显示序号:228 题号:373 题目:用函数求一个N阶方阵右下三角元素的和(包括副 对角线上的元素)。 #include
发布评论