1 / 11
文档名称:

c程序设计习题答案.doc

格式:doc   大小:34KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

c程序设计习题答案.doc

上传人:xzh051230 2019/6/10 文件大小:34 KB

下载得到文件列表

c程序设计习题答案.doc

文档介绍

文档介绍:第八章第6题#include<>intmain(){ voidjs(char*q); chara[100],*p; printf("请输入一个字符串:\n"); gets(a); p=a; js(p); return0;}voidjs(char*q){ inti=0; while(*(q+i)!='\0') { i++; } printf("该字符串一共有%d个字符\n",i);}第7题#include<>intmain(){ chara[100],*p; printf("请输入一个字符串:\n"); gets(a); printf("请输入一个整数m:\n"); intm; scanf("%d",&m); p=a; printf("该字符串从第%d个字符开始复制成另一个字符串为:",m); printf("%s",p+m-1); printf("\n"); return0;}第9题#include<>intmain(){ inta[3][3]={{1,2,3},{4,5,6},{7,8,9}}; int(*p)[3]; for(inti=0;i<3;i++) for(intj=0;j<3;j++) { printf("%d",a[i][j]); if(j==2)printf("\n"); } p=a; for(i=0;i<3;i++) for(intj=0;j<3;j++) { printf("%d",*(*(p+j)+i)); if(j==2)printf("\n"); } return0;}第10题#include<>voidmain(){ inta[15]={1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},*p; printf("数组原来排列为:\n"); for(inti=0;i<15;i++) { printf("%3d",a[i]); if(i==4||i==9)printf("\n\n"); } printf("\n\n"); intm=0,j=0,t=0;//把最大的整数放在中间 for(p=a,i=0;p<a+15;p++,i++) if(*p>m) { m=*p; j=i; } t=a[7]; a[7]=m; a[j]=t; m=a[14];//把最小的放在左上角 for(p=a+14,i=14;p>=a;p--,i--) if(*p<m) { m=*p; j=i; } t=a[0]; a[0]=m; a[j]=t; m=a[14];//把第二小整数放在右上角 for(p=a+14,i=14;p>=a;p--,i--) if(i!=0&&*p<m) { m=*p; j=i; } t=a[4]; a[4]=m; a[j]=t; m=a[14];//把第三小整数放在左下角 for(p=a+14,i=14;p>=a;p--,i--) if(i!=0&&i!=4&&*p<m) { m=*p; j=i; } t=a[10]; a[10]=m; a[j]=t; m=a[1];//把第四小整数放在右下角 for(p=a,i=0;p<a+15;p++,i++) if(i!=0&&i!=4&&i!=10&&*p<m) { m=*p; j=i; } t=a[14]; a[14]=m; a[j]=t; printf("经过调整,把四个最小的整数从小到大分别排在四个角,把最大的排在中间后该数组变为:\n"); for(i=0;i<15;i++) { printf("%3d",a[i]); if(i==4||i==9)printf("\n\n"); } printf("\n");}第11题#include<>#include<>#include<>voidmain(){   voidsort(char*x,char*y);   charstr[10][11];   char*p[10];      for(inti=0;i<10;i++)        scanf("%s",str[i]);   for(i=0;i<10;i++)        p[i]=str[i];   for(i=0;i<=8;i++)        for(intj=i+1;j<=9;j++)            if(strcmp(p[i],p[j])>0)sort(p[i],p[j]);   for(i=0;i<10;i++)        printf("%s\n",p[i]);}voidsort(char*x,char*y){   char*t=(char*)malloc(11*sizeof(char));   strc