电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

类型C语言练习题3

收藏

编号:340966157    类型:共享资源    大小:32.30KB    格式:DOCX    上传时间:2022-11-11
  
0.01
金贝
分享到微信 分享到微博 分享到QQ空间
关 键 词:
语言 练习题
资源描述:
C语练习三 一、填空题 1.设有:int a[]={1,2,3,4,5,6},*p=a;则a[2]元素的地址可以表示为 、 、 。假设a数组的首地址为12A0(16进制),则a[1]的地址值为 ,a[4]的地址值为 。 2.设有:float b[5];假设b数组的首地址为A01F(16进制),则a[1]的地址值为 ,a[4]的地址值为 。 3.设有:int x[3][4],*p=x[0];则x[0][2]的地址可以表示为 , , 。x[2][3]的地址可以表示为 , , 。 4.设有int x[3][4],*p=x[1];则x[0][2]的地址可以表示为 , x[0]+2 , 。x[2][3]的地址可以表示为 , , 。 5.设有:int x[3][4],(*p)[4]=a;则x[0][2]的地址可以表示为 , (用p表示),x[2][3]的地址可以表示为 , (用p表示)。 6.设有:int x[3][4],(*p)[4]=a+1;则x[0][2]的地址可以表示为 , (用p表示),x[2][3]的地址可以表示为 , (用p表示)。 二、程序阅读题,写出程序的运行结果。 1.下面程序的运行结果是 #include "stdio. h" void fun(int *a,int *b) { int *t; t=a;a=b;b=t; } void main() { int x=1,y=2; fun(&x.,&y); printf("%d %d"x,y); } 2.下面程序的运行结果是 #include”stdio.h” int fun(int a, int b) { if(a>b) return (a+b); else return (a-b); } void main() { int x=3,y=4,z=5,r; r=fun(fun(x,y),3+z); printf(“%d”,r); } 3.下面程序的运行结果是 #include "stdio.h" int f(int x,int *y) { return (*y-x)*x; } void main() { int a=1,b=2,c=3,d; b=f(a,&b); d=f(c,&b); printf("%d",d); } 4.下面程序的运行结果是 #include "stdio.h" void func1(int i); void func2(int i); void func(char *p) { while(*p) { printf("%c",*p); p+=2; } } void main() { char st[]="friend"; func(st); } 5.下面程序的运行结果是 #include "stdio.h" void fun(int (*a)[4]) { printf("%d,%d\n",*(a[1]+2),*(*a+10));} void main() {int a[3][4]; int i,j; for(i=0;i<3;i++) for(j=0;j<4;j++) a[i][j]=i+j; fun(a); } 6.下面程序的运行结果是 #include "stdio.h" void fmin(int (*a)[4],int *p) { int i,j; *p=**a; for(i=0;i<3;i++) for(j=0;j<4;j++) if(*p>*(a[i]+j)) *p=*(a[i]+j); } void main() { int a[3][4]= {{12,23,15,25},{22,21,30,34},{30,31,28,27}}; int min; fmin(a,&min); printf("%d",min); } 7.下面程序的运行结果是 (递归调用) #include void fun(int a) { printf("%d",a%10); if(a/10) fun(a/10); } void main() { int a=1234; fun(a); } 8.下面程序的运行结果是 #include void main() { int a[10],a1[]={1,3,6,9,10},a2[]={2,4,7,8,15},i=0,j=0,k; for(k=0; k<6;k++) if(a1[i] #include void main() { char c='d',*p="you and me"; int n,k,j; n=strlen(p); for(k=0;k fun(int *a,int *n) { int i; *n=0; for(i=1;i<10;i++) if( ) *n=i; } void main() { int a[]={3,1,34,5,6,56,3,6,9,12},maxcol; ; printf("maxcol=%d\n",maxcol); } 2,以下程序的功能是:求100以内最大的一对孪生素数之和,孪生素数是指两个素数之差2。 #include "stdio.h" #include "math.h" int isPrime(int i) { int j,r =0,k=sqrt(i); for(j=2;j<=k;j++) if(i%j==0) break; if(j>k) ; else return 0; } void main() {int i,sum=0; for(i=100;i>=5;i--) { if( ) { sum=i+i-2; break; } } printf("%d",sum); } 3.下面程序打印杨辉三角形的前10行。输出结果如下图。 #include "stdio.h" void fum( ) { int i=2,j; p[0][0]=p[1][0]=p[1][1]=1; for(;i<10;i++) { p[i][0]=p[i][i]=1; for(j=1;ja[j+1]) {t=a[j];a[j]=a[j+1];a[j+1]=t;} } void main( ) { int a[7],i,j,t; for(i=1;i<7;i++) scanf("%d",a+i); sort(a); for(i=1;i<7;i++) printf("%d ",a[i]); } 5.求所有不超过200且大于10的数N的平方是有对称性的回文数。如N=11,11*11=121。 #include void main() { int m[16],n,i,t,count=0; long a,k; for(n=10;n<200;n++) { k=0; t=1; ; for(i=1;a!=0;i++) { m[i]=a%10; a=a/10; } for(;i>1;i--) { k+=m[i-1]*t; ; } if( ) printf("(%d)%4d,%4d\n",++count,n,n*n); } printf("\n"); } 10
展开阅读全文
提示  金锄头文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:C语言练习题3
链接地址:https://www.jinchutou.com/shtml/view-340966157.html
关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.