第六章练习题一、填空题 1 、定义 int a[]={1,2,3,4,5,6},*p=a; 语句 printf("%d", ( *++p ) ++); 的输出结果是( )。 2 、以下程序的执行结果是( )。 main() { char s[]="abcdefg"; char *p; p=s; printf("ch=%c\n",*(p+5)); } 3 、以下程序的执行结果是( )。 main() { int a[][={1,2,3,4,5,6}; for(p=&a[5];p>=a;p--) printf("%d",*P); printf("\n"); }4 、以下程序的执行结果是( )。 main() { int a[12]={1,2,3,4,5,6,7,8,9,10,11,12},*p[4],i; for(i=0;i<4;i++) p[i]=&a[i*3]; printf("%d\n",p[3][2]);} 5 、设包含如下程序的文件名为 ,编译后键入命令: myprog one two three ,则执行结果是( )。 main(int argc,char *argv[]) { int i; for(i=1;i<argc;i++) printf("%s%c",argv[i],(i<argc-1)?":');} 6 、下面程序的运行结果是( ) char s[80],*sp="HELLO!";sp=strcpy(s,sp); s[0]='h'; puts(s); 7 、下面程序段的运行结果是( ) char *s1="AbcdEf",*s2="aB"; s1++; t=(strcmp(s1,s2)>0); printf("%d\n",t); 8 、下面程序段的运行结果是( ) char str[]="abc\0def\0ghi"; char *p=str; printf("%s",p+5) 9 、若有以下定义和语句: int a[4]={0,1,2,3},*p; p=&a[1]; 则++(*p) 的值是( )。 10、若有定义: int a[2][3]={2,4,6,8,10,12}; 则*(&a[0][0]+2*2+1) 的值是() ,*(a[1]+2) 3、求定积分: 计算[0, 1] 之间函数 1+ x 2、[0, 2] 之间函数 1+x+x 2 +x 3、[0,3 .5] 之间函数 x/(1+x 2) 的定积分。附录:答案一、填空题 1、22、f3、654321 4、12 5、 one:two:three 6、 HELLO ! 7、 18、 of 9、210、1212 11、41212、1 13、014、8815、2416、12 17、 LBCP 18、 xbcdBCD 23、 Pascal,C language,Dbase,Cobol 二、选择题 1—5 B 6—10 B 11—15 BCBCB 16—20 DADCD 21—25 BCBDC 26—30 ABDCB 31—35 ADDBA 36—40 CBBBB 41—45 DABBA 46—50 三、编程题 1、 main( ){ float stu_ave(float (*p)[5]); float cour_ave(float *pt); float score[3][5]={{100,60,70,80,67},{62,71,98,45,57},{90,39,89,39,90}}; int I; for(I=0;I<3;I++) printf( “%f ”,stu_ave(score+i)); for(I=0;I<5;I++) printf( “%f ”,cour_ave(score[0]+i)); } float stu_ave(float (*p)[5]) { int j; float sum; float sum=0,ave; for(j=0;j<5;j++) sum=sum +*(*p+j);
c语言第六章习题 来自淘豆网m.daumloan.com转载请标明出处.