程序定义了N×N的二维数组,并在主函数中赋值。请编写函数fun,函数的功能是求出数组周边元素的平均值并作为函数值返给主函数中的s。例如,a数组中的值为则返回主程序后,s的值应为3.375。注意:部分源程序存放在文件PROG1.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。给定源程序如下:#includestdio.h#includestdlib.h#defineN5doublefun(intw[][N]){}main(){inta[N][N]={0,1,2,7,9,1,9,7,4,5,2,3,8,3,1,4,5,6,8,2,5,9,1,4,1};inti,j;voidNONO();doubles;printf(*****Thearray*****\n);for(i=0;iN;i++){for(j=0;jN;j++){printf(%4d,a[i][j]);}printf(\n);}s=fun(a);printf(*****THERESULT*****\n);printf(Thesumis:%lf\n,s);NONO();}voidNONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*rf,*wf;inti,j,a[5][5];doubles;rf=fopen(..\\in.dat,r);wf=fopen(..\\out.dat,w);for(i=0;i5;i++)for(j=0;j5;j++)fscanf(rf,%d,a[i][j]);s=fun(a);fprintf(wf,%lf\n,s);fclose(rf);fclose(wf);}
请编写函数fun,函数的功能是:将M行N列的二维数组中的数据,按行的顺序依次放到一维数组中,一维数组中数据的个数存放在形参n所指的存储单元中。例如,二维数组中的数据为:333333334444444455555555则一维数组中的内容应是:333333334444444455555555。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include<stdio.h>voidfun(int(*s)[10],int*b,int*n,intmm,intnn){}main(){intw[10][10]={{33,33,33,33},{44,44,44,44},{55,55,55,55}},i,j;inta[100]={0},n=0;voidNONO();printf(Thematrix:\n);for(i=0;i<3;i++){for(j=0;j<4;j++)printf(%3d,w[i][j]);printf(\n);}fun(w,a,n,3,4);printf(TheAarray:\n);for(i=0;i<n;i++)printf(%3d,a[i]);printf(\n\n);NONO();}voidNONO(){/*请在此函数内打开文件,输入测试数据,调用fun函数,输出数据,关闭文件。*/FILE*rf,*wf;inti,j,k;intw[10][10],a[100],n=0,mm,nn;rf=fopen(in.dat,r);wf=fopen(out.dat,w);for(k=0;k<5;k++){fscanf(rf,%d%d:,mm,nn);for(i=0;i<mm;i++)for(j=0;j<nn;j++)fscanf(rf,%d,w[i][j]);fun(w,a,n,mm,nn);for(i=0;i<n;i++)fprintf(wf,%3d,a[i]);fprintf(wf,\n);}
下面函数调用语句含有实参的个数为( )。1 func((exp1,exp2),(exp3,exp4,exp5));
函数fun的功能是:将a、b中的两个两位正整数合并形成一个新的整数放在c中。合并的方式是:将a中的十位和个位数依次放在变量c的千位和十位上,b中的十位和个位数依次放在变量c的个位和百位上。例如,当a=45,b=12。调用该函数后,c=4251。注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include<stdio.h>voidfun(inta,intb,long*c){ }voidNONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*rf,*wf;inti,a,b;longc;rf=fopen(in.dat,r);wf=fopen(out.dat,w);for(i=0;i<10;i++){fscanf(rf,%d,%d,a,b);fun(a,b,c);fprintf(wf,a=%d,b=%d,c=%ld\n,a,b,c);}fclose(rf);fclose(wf);}main(){inta,b;longc;voidNONO();printf(Inputa,b:);scanf(%d%d,a,b);fun(a,b,c);printf(Theresultis:%ld\n,c);NONO();}
111
若有以下定义,则对数组元素的正确引用是( )。1 int a[5],*p=a;
以下程序的输出结果为______。#include<stdio.h>main(){char*p[]={abcdefgh,ijkl,mnop,qrst,uvwx};inti;for(i=0;i<3;i++)puts(p[i]);}A.abcdefghB.ijklC.D.qrst
一个运动队有多个队员,一个队员仅属于一个运动队,一个队一般都有一个教练,则实体运动队和队员的联系是______。
A.一对多
B.一对一
C.多对一
D.多对多
执行以下程序段后,w的值为( )。12 int w='A', x=14, y=15;w=((x || y)
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是,除了字符串前导的*号之外,将串中其他*号全部删除。在编写函数时,不得使用C语言提供的字符串函数。函数fun中给出的语句仅供参考。例如,字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容应当是****ABCDEFG。注意:部分源程序存放在文件PROG1.c中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入编写的若干语句。给定源程序如下:#includestdio.hvoidfun(char*a){/*以下代码仅供参考*/inti=0,k;while(a[i]==*)i++;k=i;while(a[i]!=\0)/*以下程序段实现非*字符前移*/{}a[k]=\0;}main(){chars[81];voidNONO();printf(Enterastring:\n);gets(s);fun(s);printf(Thestringafterdeleted:\n);puts(s);NONO();}voidNONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*in,*out;inti;chars[81];in=fopen(..\\in.dat,r);out=fopen(..\\out.dat,w);for(i=0;i10;i++){fscanf(in,%s,s);fun(s);fprintf(out,%s\n,s);}fclose(in);fclose(out);}
假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:使字符串中尾部的*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和前面的*号不删除。例如,字符串中的内容为:****A*BC*DEF*G*******,若n的值为4,删除后,字符串中的内容应当是:****A*BC*DEF*G****;若n的值为7,则字符串中的内容仍为:****A*BC*DEF*G*******。n的值在主函数中输入。在编写函数时,不得使用C语言提供的字符串函数。注意:部分源程序在文件PROG1.C中。请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。#include<stdio.h>voidfun(char*a,intn){}main(){chars[81];intn;voidNONO();printf(Enterastring:\n);gets(s);printf(Entern:);scanf(%d,n);fun(s,n);printf(Thestringafterdeleted:\n);puts(s);NONO();}voidNONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*in,*out;inti,n;chars[81];in=fopen(in.dat,r);out=fopen(out.dat,w);for(i=0;i<10;i++){fscanf(in,%s,s);fscanf(in,%d,n);fun(s,n);fprintf(out,%s\n,s);}fclose(in);fclose(out);}
111111
给定程序中函数fun的功能:将形参n中,各位上为偶数的数取出,并按原来从高位到低位相反的顺序组成一个新的数,并作为函数值返回。例如,输入一个整数27638496,函数返回值为64862。请在程序的下划线处填入正确的内容,并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.c中。不得增行或删行,也不得更改程序的结构!给定源程序如下:#includestdio.hunsignedlongfun(unsignedlongn){unsignedlongx=0;intt;while(n){t=n%10;/**********found**********/if(t%2==__1__)/**********found**********/x=__2__+t;/**********found**********/n=__3__;}returnx;}main(){unsignedlongn=-1;while(n99999999||n0){printf(Pleaseinput(0n100000000):);scanf(%ld,n);}printf(\nTheresultis:%ld\n,fun(n));}
以下程序的输出结果是( )。1234567 #include void prt (int *x, int *y, int *z){printf("%d,%d,%d\n",++*x,++*y,*(z++));}main(){int a=10,b=40,c=20;prt (prt (}
下列程序的运行结果为( )。12345678910111213 #includevoid abc(char*str){int a,b,i,j;for(i=j=0;str[i]!='\0';i++)if(str[i]!='a')str[j++]=str[i];str[j]='\0';}void main(){char str[]="abcdef";abc(str);printf("str[]=%s",str);}
有以下程序片段:y=-1;if(x!=0)if(x>0)y=1;elsey=0;其能正确表示的数学函数关系是______A.B.C.D.
设有以下说明,则不正确的叙述是( )。12345 union un{int a;char b;float c;}arr;
给定程序MODI1.c中函数fun的功能:计算n!。例如,给n输入5,则输出120.000000。请改正程序中的错误,使程序能输出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序如下:#includestdio.hdoublefun(intn){doubleresult=1.0;/************found************/ifn==0return1.0;while(n1n170)/************found************/result*=n-returnresult;}main(){intn;printf(InputN:);scanf(%d,n);printf(\n\n%d!=%lf\n\n,n,fun(n));}
111
以下if语句书写正确的是______。A.B.C.D.
