您好,欢迎访问三七文档
一.(25)116、以下程序运行后的输出结果是__3____。main(){intp=30;printf(%d\n,(p/30?p/10:p%3));}66、若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是__5.0,4,c=3____。intb,c;floata;scanf(%f,%d,c=%d,&a,&b,&c)27、请在以下程序第一行的下划线处填写适当内容,使程序能正常运行。_doublemax或externdoublemax_____(double,double);main(){doublex,y;scanf(%1f%1f,&x,&y);printf(%1f\n,max(x,y));}doublemax(doublea,doubleb){return(ab?a:b);}57、以下程序的输出结果是__246____。voidfun(){staticinta=0;a+=2;printf(%d,a);}main(){intcc;for(cc=1;cc4;cc++)fun();printf(\n);}43、以下程序运行后的输出结果是_81_____。#defineS(x)4*x*x+1main(){inti=6,j=8;printf(%d\n,S(i+j));}73、以下函数inverse的功能是使一个字符串按逆序存放。inverse(str)charstr[];{charm;inti,j;for(i=0,j=strlen(str);istrlen(str)/2;_i++_____,j--){m=str[i];str[i]=_str[j-1]_____;_str[j-1]=m_____;}}144、以下程序的输出结果_efgh_____。#includestdio.h#includestring.hchar*fun(char*t){char*p=t;return(p+strlen(t)/2);}main(){char*str=abcdefgh;str=fun(str);puts(str);}67、下列程序的输出结果是__56____。intt(intx,inty,intcp,intdp){cp=x*x+y*y;dp=x*x-y*y;}main(){inta=4,b=3,c=5,d=6;t(a,b,c,d);printf(%d%d\n,c,d);}19、若有如下结构体说明:structSTRU{inta,b;charc:doubled;structSTRU*p1,*p2;};请填空,以完成对t数组的定义,t数组的每个元素为该结构体类型。__structSTRU____t[20]100、以下程序用来统计文件字符的个数,请填空。#includestdio.hmain(){FILE*fp;longnum=O;if((fp=fopen(fname.dat,r))==NULL){PRINTF(Openerror\n);exit(0);}while(__fgetc(fp)!=EOF或!feof(fp)____){num++;}printf(num=%ld\n,num);fclose(fp);}93、以下程序段用于构成一个简单的单向链表,填空。structSTRU{intx,y;floatrate;__structSTRU*____p;}a,b;a.x=0;a.y=0;a.rate=0;a.p=&b;b.x=0;b.y=0;b.rate=0;b.p=NULL;42、以下程序从终端读入数据到数组中,统计其中正数的个数,并计算它们之和,请填空。main(){inti,a[20],sum,count;sum=count=0;for(i=0;i20;i++)scanf(%d,_&a[i]_____);fro(i=0;i20;i++){if(a[i]0){count++;sum+=_a[i]_____;}}printf(sum=%d,count=%d\n,sum,count);}74、以下函数fun用于求两个整数a和b的最大公约数。fun(a,b)inta,b;{inti,j,m,n;if(ab){m=a;a=b;__b=m____;}i=a;j=b;while((n=_j%i_____)!=0){j=i;i=_n_____;}return(i);}41、以下程序中,for循环体执行的次数是____4__。#defineN2#defineMN+1#defineKM+1*M/2main(){inti;for(i=1;iK;i++){...}...}49、以下程序运行后的输出结果是_13431_____。structNODE{intk;structNODE*link;};main(){structNODEm[5],*p=m,*q=m+4;inti=0;while(p!=q){p-k=++i;p++;q-k=i++;q--;}q-k=i;for(i=0;i5;i++)printf(%d,m[i].k);二.(12)95、以下程序的输出结果是_261_____。main(){inta=177;printf(%o\n,a);}83、以下程序通过函数指针p调用函数fun,请在填空栏内,写出定义变量p的语句。voidfun(int*x,int*y){……}main(){inta=10,b=20;__void(*p)()或void(*p)(int*,int*)____p=fun;p(&a,&b);……}17、下列程序的输出结果是__0____。voidfun(int*n){while((*n)--);printf(%d,++(*n));}main(){inta=100;fun(&a);}29、以下程序运行后的输出结果是__3025____。inta=5;fun(intb){staticinta=10;a+=b++;printf(%d,a);}main(){intc=20;fun(c);a+=c++;printf(%d\n,a);}117、以下程序的功能是输出如下形式的方阵:13141516910111256781234请填空。main(){inti,j,x;for(j=4;j_0_____;j--){for(i=1;i=4;i++){x=(j-1)*4+__i__;printf(%4d,x);}printf(\n);}92、若有定义语句:chars[100],d[100];intj=0,i=0;且s中已赋字符串,请填空以实现拷贝。(注:不使用逗号表达式)while(s[i]){d[j]=_s[i++]_____;j++;}d[j]=0;37、下面rotate函数的功能是:将n行n列的矩阵A转置为A',例如:|1234||5678|当A=|9101112||13141516||15913||261014|则A'=|371115||481216|请填空。#defineN4voidrotate(inta[][]){inti,j,t;for(i=0;iN;i++)for(j=0;_j=i_____;j++){t=a[i][j];___a[i][j]=a[j][i]___;a[j][i]=t;}}52、已知字符A的ASCII码为65,以下程序运行后的输出结果是__67G____。main(){chara,b;a='A'+'5'-'3';b=a+'6'-'2';printf(%d%c\n,a,b);}115、已有文本文件test.txt,其中的内容为:Hello,everyone!。以下程序中,文件test.txt已正确为读而打开,由此文件指针fr指向文件,则程序的输出结果是_Hell_____。#includestdio.hmain(){FILE*fr;charstr[40];......fgets(str,5,fr);printf(%s\n,str);fclose(fr);}10、函数mycmp(char*s,char*t)的功能是比较字符串s和t的大小,当s等于t时返回0,当st返回正值,当st时返回负值。请填空。mycmp(char*s,char*t){while(*s==*t){if(*s=='\0')return0;++s;++t;}return(_*s=*t_____);}136、以下程序的功能是:利用指针指向三个整型变量,并通过指针运算找出三个数中的最大值,输出到屏幕上。请填空。main(){intx,y,z,max,*px,*py,*pz,*pmax;scanf(%d%d%d,&x,&y,&z);px=&x;py=&y;pz=&z;pmax=&max;*pmax=x______;if(*pmax*py)*pmax=*py;if(*pmax*pz)*pmax=*pz;printf(max=%d\n,max);}46、已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33回车,则输出结果是__1B____。#includestdio.hmain(){chara,b;a=getchar();scanf(%d,&b);a=a-'A'+'0';b=b*2;printf(%c%c\n,a,b);}三.(11)6、以下程序通过函数SunFun和f(x),x=0到10,这里f(x)=x^2+1,由F函数实现,请填空。main(){printf(Thesun=%d\n,SunFun(10));}SunFun(intn){intx,s=0;for(x=0;x=n;x++)s+F(______);returns;}F(intx){return(______);}131、下面程序的运行结果是__18____。#includestdio.hintf(inta[],intn){if(n1)returna[0]+f(a+1,n-1);elsereturna[0];}main(){intaa[10]={1,2,3,4,5,6,7,8,9,10},s;s=f(aa+2,4);printf(%d\n,s);}97、以下程序的输出结果是_efgh_____。main(){char*p=abcdefgh,*r;long*q;q=(long*)p;q++;r=(char*)q;printf(%s\n,r);}141、执行以下程序时输入1234567CR,则输出结果是_1234_____。#includestdio.hmain(){inta=1,b;scanf(%2d%2d,&a,&b);printf(%d%d\n,a,b);}79、若有以下结构类型说明和变量定义,则变量a在内存所占字节数是_22_____。structstud{charnum[6];ints[4];doubleave;}a,*p;40、以下程序运行后的输出结果是_*2*4*6*8*_____。main(){chara[]=123456789,*p;inti=0;p=a;while(*p){if(i%2==0)*p='*';p++;i++;}puts(a);}158、以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空。43726915810#includestdio.hmain(){intx[4][4],n=0,i,j;for(j=0;j4;j++)for(i=3;i=j;_i--_____){n++;x[i][j]=__n___;}for(i=0;i4;i++){for(j=0;j=i;j++)printf(%3d,x[i][j]);printf(\n);}}135、以下程序的功能是:求出数组x中各相邻两个元素的和依次存放到a数组中,然后输出。请填空。main(){intx[10],a[9],i;for(i=0;i10;i++)scanf(%d,&x[i]);for(_i=1____;i10;i++)a[i-1]=x[i]+x[i-1]______;for(i=0;i
本文标题:C语言填空题整理
链接地址:https://www.777doc.com/doc-1817534 .html