C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx

上传人:b****8 文档编号:22615261 上传时间:2023-02-04 格式:DOCX 页数:21 大小:208.39KB
下载 相关 举报
C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx_第1页
第1页 / 共21页
C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx_第2页
第2页 / 共21页
C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx_第3页
第3页 / 共21页
C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx_第4页
第4页 / 共21页
C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx

《C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。

C语言程序设计第三版谭浩强课后习题答案完整版同名3156Word文档格式.docx

printf(“\t\b%c%c\n”,c4,c5);

}

3.9.1

{

doublex=2.5,y=4.7,z;

inta=7;

z=x+a%3*(int)(x+y)%2/4;

该表达式的值为:

%f"

z);

3.9.2

inta=2,b=3;

floatx=3.5,y=2.5,z;

z=(float)(a+b)/2+(int)x%(int)y;

4.5

inta=5,b=7;

doublex=67.8564,y=-789.124;

charc='

A'

;

longn=1234567;

unsignedu=65535;

%d%d\n"

a,b);

%3d%3d\n"

%f,%f\n"

x,y);

%-10f,%-10f\n"

%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n"

x,y,x,y,x,y);

%e,%10.2e\n"

%c,%d,%o,%x\n"

n,n,n);

%ld,%lo,%x\n"

%u,%o,%x,%d\n"

u,u,u,u);

printf("

请输入r,h的值:

%f,%f"

r,&

h);

l=2*pi*r;

s1=pi*r*r;

s2=4*s1;

v1=4/3*pi*r*r*r;

v2=s1*h;

圆周长为:

%.2f\n"

l);

圆面积为:

s1);

圆球表面积为:

s2);

圆球体积为:

v1);

圆柱体积为:

v2);

}

5.5#include<

floatx,y;

请输入x的值:

x);

if(x<

1)

y=x;

else

if(x>

=1&

&

x<

10)

y=2*x-1;

y=3*x-11;

x与y的值分别为:

\n%f,%f"

5.6#include<

floatb;

inta;

请输入该同学的成绩:

b);

while(b<

0||b>

100)

输入有误,请重新输入:

a=int(b/10);

if(a<

6)a=5;

switch(a)

{

case10:

case9:

该同学为等级:

A"

break;

case8:

B"

case7:

C"

case6:

D"

case5:

E"

}

math.h>

intx,y,m,n,i=1,j=0;

请给出一个不多于5位的正整数:

%d"

while(x<

=0||x>

=100000)

{printf("

输入有误\n请给出一个不多于5位的正整数:

for(n=0;

n<

5;

n++)

y=int(x/pow(10,n));

if(y>

0&

y<

10)

m=n+1;

它是%d位数\n"

m);

从高到低位依次为\n"

do

printf("

%d"

int(x/pow(10,m-i))%10);

i++;

while(m-i>

=0);

\n逆序输出为\n"

do

{

printf("

int(x/pow(10,j))%10);

j++;

}

while(j-m<

0);

6.1输入两个正整数m和n,求其最大公约数和最小公倍数。

intm,n,i,j;

请分别输入m,n的值:

%d,%d"

m,&

n);

for(i=1;

i<

=m;

i++)

if(m%i==0&

n%i==0)

j=i;

这两个整数的最大公约数是:

j);

for(i=j;

if(i%m==0&

i%n==0)break;

这两个整数的最小公倍数数是:

i);

6.2题目:

输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。

inti=0,j=0,k=0,x=0;

charc;

请输入一行字符串:

while((c=getchar())!

='

\n'

if(c>

c<

Z'

||c>

a'

z'

)i++;

elseif(c=='

'

)j++;

elseif(c>

0'

9'

)k++;

elsex++;

英文字母、空格、数字、其他字符的个数分别为:

%d,%d,%d,%d,"

i,j,k,x);

6.3求Sn=a+aa+aaa+…+aa…a之值,其中a是一个数字。

例如:

2+22+222+2222+22222(此时n=5),n由键盘输入。

#include<

{

inti,n;

intsum=0,s=0;

请输入n的值:

while(n<

请重新输入n的值:

for(i=0;

n;

s+=pow(10,i);

sum+=2*s;

sum=%d\n"

sum);

}

6.8题目:

有一分数序列2/1,3/2,5/3,8/5,13/8,21/13,…求出这个数列的前20项之和。

inta=1,b=1,i;

floatsum=0.0;

20;

a=a+b;

b=a-b;

sum+=(float)a/b;

这个数列前二十项之和为:

\n%f"

7.2

{inti,j,t,a[10];

请输入十个整数:

10;

scanf("

a[i]);

for(j=1;

j<

j++)

10-j;

if(a[i]<

a[i+1])

t=a[i];

a[i]=a[i+1];

a[i+1]=t;

这十位数从大到小排列为:

%5d"

a[i]);

7.3

inti,j,m,n,a[3][3];

请输入3*3的整形矩阵\n"

3;

i++)

for(j=0;

j++)

a[i][j]);

m=a[0][0]+a[1][1]+a[2][2];

n=a[0][2]+a[1][1]+a[2][0];

3*3的整形矩阵对角线元素之和为:

m,n);

7.4

staticinta[10]={1,5,6,10,20,24,55,58,64};

inti,t;

请输入一个数:

a[9]);

for(i=9;

i>

0;

i--)

a[i-1])

t=a[i-1];

a[i-1]=a[i];

a[i]=t;

}

%4d"

7.8

inta[5][5],b[5],c[5],d[5][5];

inti,j,k,l;

请输入5*5的整型数组\n"

j++)

d[i][j]);

a[i][j]=d[i][j];

for(i=0,k=0;

i++,k++)

4;

if(a[i][j]>

=a[i][j+1])

b[k]=a[i][j+1]=a[i][j];

else

b[k]=a[i][j+1];

for(j=0,l=0;

j++,l++)

if(a[i][j]<

=a[i+1][j])

c[l]=a[i+1][j]=a[i][j];

c[l]=a[i+1][j];

if(d[i][j]-b[k]==0)

if(d[i][j]-c[l]==0)

鞍点为d[%d][%d]=%d\n"

i,j,d[i][j]);

没有鞍点\n"

}

7.10

string.h>

inti,j=0,k=0,l=0,m=0,n=0;

charstr0[301],str1[100],str2[100],str3[100];

gets(str1);

gets(str2);

gets(str3);

strcat(str0,str1);

strcat(str0,str2);

strcat(str0,str3);

str0[i]!

\0'

if(str0[i]>

str0[i]<

elseif(str0[i]>

)l++;

elseif(str0[i]=='

)m++;

elsen++;

大写字母、小写字母、数字、空格以及其他字符的个数依次为:

%5d%7d%5d%6d%4d\n"

j,k,l,m,n);

7.14

inti=0,resu;

chars1[100],s2[100];

\n请输入string1:

"

gets(s1);

\n请输入string2:

gets(s2);

while(s1[i]==s2[i]&

s1[i]!

i++;

if(s1[i]=='

s2[i]=='

)resu=0;

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

\nresult:

%d\n"

resu);

8.1

intmaxgy(intm,intn);

intmingb(into,intp);

inta,b;

请输入两个正整数:

a,b\n"

while(a<

=0||b<

=0)

注:

这两个数的最大公约数是:

maxgy(a,b));

这两个数的最小公倍数是:

mingb(a,b));

intmaxgy(intm,intn)

inti,k;

k=i;

returnk;

intmingb(into,intp)

intj;

for(j=o;

if(j%o==0&

j%p==0)

break;

returnj;

8.3

intjudss(intm);

请输入一个正整数:

a);

judss(a);

intjudss(intm)

inti;

for(i=2;

m;

if(m%i==0)break;

if(i<

m)

returnprintf("

这个数不是素数"

这个数是素数"

8.5

{

charfx(charstr1[100]);

charstr0[100];

请输入一个字符串:

gets(str0);

fx(str0);

puts(str0);

charfx(charstr1[100])

{inti,j,k=strlen(str1);

charstr2[100];

strcpy(str2,str1);

for(i=0,j=k-1;

j>

-1;

i++,j--)

str1[i]=str2[j];

returnstr1[100];

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 企业管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1