《C程序设计(第三版)》习题(编程题)解答(5)

2020-02-21 15:47

maxj=j; /* 将最大数所在的列号存放在maxj中 */

}

flag=1; /* 先假设是鞍点,以flag为1代表 */ for (k=0;ka[k][maxj]) /* 将最大数和其同列元素相比 */

{flag=0; /* 如果max不是同列最小,表示不是鞍点令flag1为0 */ continue;}

if(flag) /* 如果flag1为1表示是鞍点 */ {printf(\ /* 输出鞍点的值和所在行列号 */

break;

} }

if(!flag) /* 如果flag为0表示鞍点不存在 */ printf(\ }

7.9

#include #define N 15 void main()

{ int i,number,top,bott,mid,loca,a[N],flag=1,sign; char c;

printf(\ scanf(\ i=1;

while(i

{scanf(\ if (a[i]>=a[i-1]) i++; else

printf(\ }

printf(\

for (i=0;i

{printf(\ scanf(\

sign=0;

top=0; //top是查找区间的起始位置

bott=N-1; //bott是查找区间的最末位置

if ((numbera[N-1])) //要查的数不在查找区间内 loca=-1; // 表示找不到

21

while ((!sign) && (top<=bott))

{mid=(bott+top)/2; if (number==a[mid]) {loca=mid;

printf(\

sign=1;

}

else if (number

if(!sign||loca==-1)

printf(\ printf(\ scanf(\ if (c=='N'||c=='n') flag=0; } }

7.10

#include void main()

{int i,j,upp,low,dig,spa,oth; char text[3][80];

upp=low=dig=spa=oth=0;

for (i=0;i<3;i++)

{ printf(\ gets(text[i]);

for (j=0;j<80 && text[i][j]!='\\0';j++) {if (text[i][j]>='A'&& text[i][j]<='Z') upp++;

else if (text[i][j]>='a' && text[i][j]<='z') low++;

else if (text[i][j]>='0' && text[i][j]<='9') dig++;

else if (text[i][j]==' ') spa++; else

oth++;

} }

printf(\

22

printf(\ printf(\ : %d\\n\ printf(\ : %d\\n\ printf(\ : %d\\n\} 7.11

#include void main()

{ char a[5]={'*','*','*','*','*'}; int i,j,k;

char space=' '; for (i=0;i<5;i++) { printf(\ printf(\ \ for (j=1;j<=i;j++) printf(\ for (k=0;k<5;k++) printf(\ } printf(\} 7.12

方法一: #include void main()

{ int j,n;

char ch[80],tran[80];

printf(\ gets(ch);

printf(\ :%s\ j=0;

while (ch[j]!='\\0')

{ if ((ch[j]>='A') && (ch[j]<='Z')) tran[j]=155-ch[j];

else if ((ch[j]>='a') && (ch[j]<='z')) tran[j]=219-ch[j]; else

tran[j]=ch[j]; j++;

} n=j;

printf(\

23

for (j=0;j

方法二: #include void main() {int j,n;

char ch[80];

printf(\ gets(ch);

printf(\ j=0;

while (ch[j]!='\\0')

{ if ((ch[j]>='A') && (ch[j]<='Z')) ch[j]=155-ch[j];

else if ((ch[j]>='a') && (ch[j]<='z')) ch[j]=219-ch[j]; else

ch[j]=ch[j]; j++; } n=j;

printf(\

for (j=0;j

putchar(ch[j]); printf(\ } 7.13

#include void main() { char s1[80],s2[40]; int i=0,j=0;

printf(\ scanf(\ printf(\ scanf(\ while (s1[i]!='\\0') i++;

while(s2[j]!='\\0')

s1[i++]=s2[j++]; s1[i]='\\0';

printf(\

24

}

7.14

#include void main() { int i,resu;

char s1[100],s2[100]; printf(\ gets(s1);

printf(\ gets(s2); i=0;

while ((s1[i]==s2[i]) && (s1[i]!='\\0'))i++; if (s1[i]=='\\0' && s2[i]=='\\0') resu=0; else

resu=s1[i]-s2[i];

printf(\ } 7.15

#include #include void main()

{ char s1[80],s2[80]; int i;

printf(\ scanf(\

for (i=0;i<=strlen(s2);i++) s1[i]=s2[i]; printf(\ } 8.1

#include void main() {int hcf(int,int); int lcd(int,int,int); int u,v,h,l;

scanf(\ h=hcf(u,v);

printf(\ l=lcd(u,v,h);

printf(\

25


《C程序设计(第三版)》习题(编程题)解答(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:关于进一步加强建筑工地职工夜校管理的通知

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: