C语言程序设计教程答案.docx

上传人:b****3 文档编号:4000341 上传时间:2022-11-27 格式:DOCX 页数:60 大小:33.69KB
下载 相关 举报
C语言程序设计教程答案.docx_第1页
第1页 / 共60页
C语言程序设计教程答案.docx_第2页
第2页 / 共60页
C语言程序设计教程答案.docx_第3页
第3页 / 共60页
C语言程序设计教程答案.docx_第4页
第4页 / 共60页
C语言程序设计教程答案.docx_第5页
第5页 / 共60页
点击查看更多>>
下载资源
资源描述

C语言程序设计教程答案.docx

《C语言程序设计教程答案.docx》由会员分享,可在线阅读,更多相关《C语言程序设计教程答案.docx(60页珍藏版)》请在冰豆网上搜索。

C语言程序设计教程答案.docx

C语言程序设计教程答案

习题1

1、算法描绘要紧是用两种根本办法:

第一是天然语言描绘,第二是运用公用东西进展算法描绘

2、c语言顺序的结构如下:

1〕c语言顺序由函数构成,每个顺序必需存在一个main函数作为顺序的主控函数。

2〕"/*"与"*/"之间的内容形成c语言顺序的注释局部。

3〕用预处置下令#include能够包括有关文件的信息。

4〕巨细写字母在c语言中是有区不的。

5〕除main函数跟规范库函数以外,用户能够本人编写函数,顺序普通由多个函数构成,这些函数制订实践所需求做的任务。

比方:

voidmain()

{

inta,b,c,s;

a=8;b=12;c=6;

s=a+b*c;

printf("s=%d\n",s);

}

3、c语言的特色:

1〕c语言存在结构语言的特色,顺序之间非常轻易实现段的共享;

2〕c语言的要紧结形身分为函数,函数能够在顺序中被界说实现独破的义务,独破地编译成代码,以实现顺序的模块化。

3〕c语言运算符丰厚,运算包括的范畴非常广;

4〕c语言数据范例丰厚。

5〕c语言同意直截了当访咨询物理地点,即可直截了当对硬件进展操纵,实现汇编语言的年夜局部功用;

6〕c语言语法限度不太严厉,顺序计划自在度年夜,如此是c语言能够增加对顺序员的约束;

7〕用c语言编程,天生的目的代码品质高,顺序履行效力高,可移植性好;

4、正当标识符:

AB12、leed_3、EF3_3、_762、PAS、XYZ43K2

分歧法标识符:

a*b2、8stu、D.K.Jon、if、ave#xy、#_DT5、C.D

5、F2:

将以后编纂器中文件存盘

F10:

挪用主菜单

F4:

顺序运转到光标所外行

Ctrl+F9:

以后编纂情况下,进展编译、衔接且运转顺序;

Alt+F5:

将窗口切换到DOS下,检查顺序运转后果

6、

(1):

********************

welcomeyou

verygood

********************

(2):

pleaseinputthreenumber;5,7,8

maxnumberis:

8

7、main8、Userscreen、Alt+F5

9、标识符必需是字母或下划线扫尾,巨细写字母含意差别。

由数字、字母跟下划线构成;

要害字是一种语言中规则存在特定含意的标识符。

要害字不克不及作为变量或函数名来运用,用户只能依照零碎的规则运用它们。

10、选择主菜单File项下拉子菜单中Save项或直截了当按F2键存盘。

习题2

1、契合C语法例则的常数为:

0x1e、"ab\n"、1.e5

2、

(1):

过错如下:

intx,y=5,z=5,aver;

x=7;

aver=(x+y+x)/3;

后果如下:

AVER=5

(2):

过错如下:

charc1='a',c2='b',c3='c';

printf("a=%db=\'%c\'\"end\"\n",a,b);

后果如下:

a=3b='A'"end"

aabccabc

3、4、

(1):

9,11,9,10

(2):

3,1,0,0(3):

11,19,31,1

5、

(1):

0

(2):

0(3):

9.500000(4):

90(5):

10(6):

10(7):

65(8):

4

(9):

4.500000(10):

1(11):

0(12):

20(13):

0

6、(5)7、求x的相对值8、c>(max=a>b?

a:

b)?

c:

max;9、B10、D

习题3

1、输入函数scanf的参数过错,应当为:

scanf("%f",&k);

2、|12341234|3、ff104、1,3,1

5、原字符串右边加空格再加字符串自身,字符个数总跟为5个

6、scanf("%d,%d,%c,%c",&a1,&a2,&c1,&c2);

7、printf("a+b=%d\n",a+b);

printf("a-b=%d\n",a-b);

printf("a*b=%d\n",a*b);

printf("a/b=%d\n",a/b);

printf("(float)a/b=%f\n",(float)a/b);

printf("a%b=%d\n",a%b);

8、voidmain()

{floatr;

floats,c;

printf("pleaseinputthenumber:

");

scanf("%f",&r);

if(r>=0)

{s=3.14*r*r;

c=2*3.14*r;

printf("s=%f,c=%f\n",s,c);

}

else

printf("youinputnumberiserror!

");

}

9、voidmain()

{intn;

printf("pleaseinputthenumber:

");

scanf("%d",&n);

if(n>=100&&n<=999)

printf("%d%d%d",n%10,(n/10)%10,n/100);

else

printf("youinputnumberiserror!

");

}

10、voidmain()

{inti,j,k;

scanf("%d,%d,%d",&i,&j,&k);

((i%2!

=0?

1:

0)+(j%2!

=0?

1:

0)+(k%2!

=0?

1:

0))==2?

printf("YES\n"):

printf("NO\n");

}

11、voidmain()

{chara;

scanf("%c",&a);

printf("%c,%c,%c",a-1,a,a+1);

printf("%d,%d,%d",a-1,a,a+1);

}

12、voidmain()

{floata,b,c,s,Area;

scanf("%f,%f,%f",&a,&b,&c);

if(a+b>c||a+c>b||b+c>a)

{s=(a+b+c)/2;

Area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("%f\n",Area);

}

else

printf("youinputthenumberiserror!

\n");

}

习题4

1:

02:

203:

(x<30&&x>20)||(x<-100)4:

***a=25,b=14,c=16***

5:

37

6:

if(a<=b)printf("1");

elseprintf("2");

7、#include

voidmain()

{chara,b,t1,t2;

scanf("%c,%c",&a,&b);

t1=a>b?

a:

b;

t2=a

a:

b;

if((t1-t2)%2==0)printf("%c,%c",a+1,b+1);

elseprintf("%c,%c",a-1,b-1);

getch();

}

8、#include

voidmain()

{inttemp1=0,temp2=0,x,y,i=1;

printf("Pleaseinput(x,y):

");

scanf("%d,%d",&x,&y);

while((i*y)<=x)

{if(x==(i*y)){temp1=1;break;}

temp2=i;

i++;

}

if(temp1)

printf("%d/%d=%d",x,y,i);

else

printf("%d/%d--->shang=%d,yushu=%d",x,y,temp2,x-y*temp2);

getch();

}

9、#include

voidmain()

{floatx,y,m=0,n=0;

scanf("%f,%f",&x,&y);

n=(x-2)*(x-2);

m=(y-2)*(y-2);

if((m+n)<=1)

printf("(%.3f,%.3f)Intheyuan",x,y);

else

printf("(%.3f,%.3f)outoftheyuan",x,y);

getch();

}

10、#include

voidmain()

{inttemp=0,month,year;

printf("Pleaseinput(year,month):

");

scanf("%d,%d",&year,&month);

if((year%400==0)||(year%4==0&&year%100!

=0))

temp=1;

if(month==2)

{if(temp)printf("%dyear%dmonthhave29",year,month);

elseprintf("%dyear%dmonthhave28",year,month);

}

elseif(month%2==0)

printf("%dyear%dmonthhave30",year,month);

elseprintf("%dyear%dmonthhave31",year,month);

getch();

}

11、switch(a/10)

{case5:

m=4;break;

case4:

m=3;break;

case3:

m=2;break;

case2:

m=1;break;

default:

m=5;

}

12、办法一:

#include

voidmain()

{intx,y;

scanf("%d",&x);

if(x<0&&x>-5)

y=x-1;

elseif(x==0)

y=x;

elseif(x>0&&x<8)

y=x+1;

printf("%d",y);

getch();

}

办法二:

#include

voidmain()

{intx,y;

scanf("%d",&x);

if(x<8&&x>-5)

{if(x==0)y=x;

elseif(x>0&&x<8)y=y=x+1;

elsey=x-1;

printf("%d",y);

}

elseprintf("Inputerror!

!

!

");

getch();

}

办法三:

#include

voidmain()

{intx,y,i;

scanf("%d",&x);

if(x<8&&x>-5)

{if(x==0)i=1;

elseif(x>0&&x<8)i=2;

elsei=3;

}

elsei=4;

switch(i)

{case1:

y=x;printf("%d",y);break;

case2:

y=x+1;printf("%d",y);break;

case3:

y=x-1;printf("%d",y);break;

case4:

printf("Inputerror!

!

");break;

}getch();

}

习题5

1、voidmain()

{intn,value;

inti,count=0;

floataverage=0;

longintsum=0;

scanf("%d",&n);

for(i=0;i

{scanf("%d",&value);

if(value%2==0)

{sum+=value;

count++;

}

}

average=sum/(float)count;

printf("theaverageis%f\n",average);

}

2、#include"stdio.h"

voidmain()

{charch;

intzm=0,sz=0;

ch=getchar();

while(ch!

='*')

{if((ch>='A'&&ch<='Z')||(ch>='a'&&ch<'z'))

zm++;

if(ch>='0'&&ch<='9')

sz++;

ch=getchar();

}

printf("zm=%d;sz=%d\n",zm,sz);

}

3、voidmain()

{longi_value;

intsum=0;

inttemp=0;

scanf("%ld",&i_value);

if(i_value<0){printf("youinputtheintiserror!

\n");return;}

for(;;)

{temp=i_value%10;

i_value=i_value/10;

sum+=temp;

printf("%d+",temp);

if(i_value==0)break;

}

printf("\b=%d\n",sum);

}

4、#include"stdio.h"

voidmain()

{charch;

ch=getchar();

while(ch!

='.')

{if((ch>='A'&&ch<='Z'))

{ch=ch+32;

putchar(ch);

}

elseif((ch>='a'&&ch<'z'))

{ch=ch-32;

putchar(ch);

}

else

{putchar(ch);

}

ch=getchar();

}

printf("\n");

}

5、voidmain()

{floatsum=200;

intcount=0;

for(;;)

{sum=sum+sum*0.045;

count++;

if(sum>500)break;

}

printf("the%dyearslatercomplete!

\n",count);

}

6、voidmain()

{inti,temp=0,bit=0;

for(i=1;i<=999;i++)

{if(i%3==0)

{temp=i;

for(;temp!

=0;)

{bit=temp%10;

if(bit==5){printf("%d,",i);break;}

temp=temp/10;

}

}

}

printf("\b\n");

}

7、#include

intmain(void)

{intsteps=29,i=1;

while(steps%7)

{steps=(30*++i)-1;

}

printf("Totalsteps:

%d\n",steps);

return0;

}

8、main()

{inti,j,k,n;

printf("thenarcissusnumberis:

\n");

for(n=100;n<1000;n++)

{i=n/100;

j=n/10-i*10;

k=n%10;

if(i*i*i+j*j*j+k*k*k==n)printf("%d\n",n);

}

}

9、main()

{floati,j,temp,n,sum;

intt;

i=2;j=1;sum=0;

scanf("%d",&t);

for(n=1;n<=t;n++)

{sum=sum+i/j;

temp=i;i=i+j;j=temp;

}

printf("2/1+3/2+5/3+8/5+13/8+...=%f\n",sum);

}

10、voidmain()

{intnWidth,a,b;

scanf("%d",&nWidth);

for(a=(nWidth%2);a<=nWidth;a+=2)

{for(b=0;b

{charchOut='';

intnleft=(nWidth-a)/2;

intnright=(nWidth+a)/2;

if(b>=nleft&&b

{chOut='*';

}

printf("%c",chOut);

}

printf("\n");

}

}

11、voidmain()

{inti=1,j=1;

for(i=1;i<=9;i++)

{for(j=1;j<=i;j++)

printf("%d*%d=%d",i,j,i*j);

printf("\n")

}

}

12、#include"stdio.h"

voidmain()

{charc;

//count1是正数的个数

//count2是正数的个数

intcount1=0,count2=0;

//sum1是正数之跟

//sum2是正数之跟

intsum1=0,sum2=0;

intflage=0;

c=getchar();

while(c!

='*')

{if(c=='-')flage=1;

if(flage==0)

{sum1+=(c-48);count1++;}

else

{if(c!

='-')

{sum2-=(c-48);flage=0;count2++;

}

}

c=getchar();

}

printf("%d,%d\n",count1,count2);

printf("%f,%f\n",sum1/count1,sum2/count2);

}

13、voidmain()

{

inti,j;

ints=0;

for(i=100;i<=999;i++)

{

s=0;

for(j=1;j

{if(i%j==0)s=s+j;

}

if(s==i)printf("%5d",i);

}

}

14、#include

#include

voidmain()

{intn;

longk=1;

floate=1;

n=1;

clrscr();

while(fabs(1.0/k)>=0.000001)

{

n++;

e=e+1.0/k;

k=k*n;

}

printf("%f\n",e);

}

15、#include"math.h"

main()

{floatx0,x1,x2,f0,f1,f2;

x1=-10;

f1=2*x1*x1*x1-4*x1*x1+3*x1;

x2=10;

f2=2*x2*x2*x2-4*x2*x2+3*x2;

do

{x0=(x1+x2)/2;

f0=2*x0*x0*x0-4*x0*x0+3*x0;

if((f0*f1)<0)

{x2=x0;f2=f0;}

else

{x1=x0;f1=f0;}

}

while(fabs(f0)>1e-6);

printf("______2*x*x*x-4*x*x+3*x=0______\n");

printf("therootis%f\n",x0);

}

习题6

1、#include

intdivisor(inta,intb)

{intr;

while((r=a%b)!

=0)

{a=b;

b=r;

}

returnb;

}

intmultiple(inta,intb)

{intd;

d=divisor(a,b);

returna*b/d;

}

voidmain()

{inta,b,c,d;

printf("intput(a,b):

");

scanf("%d,%d",&a,&b);

c=divisor(a,b);

d=multiple(a,b);

printf("\ndivisor=%d\t\tmultiple=%d",c,d);

}

2、#include

voidtongji(chara[])

{intb[3]={0,0,0},i=0;

while(a[i]!

='\0')

{if((a[i]<=90&&a[i]>=65)||(a[i]<=122&&a[i]>=97)、b[0]++;

elseif(a[i]<=57&&a[i]>=48)

b[1]++;

else

b[2]++;

i++;

}

printf("zimuhave:

%d;shuzihave:

%d;qitahave:

%d",b[0],b[1],b[2]);

getch();

}

voidmain()

{chara[100];

printf("Pleaseinputastring:

");

gets(a);

tongji(a);

}

3、#include

intflower(intn)

{intx=0,i,j,k;

i=(n%10);

j=(n/10%10);

k=(n/100);

x=i*i*i+j*j*j+k*k*k;

if(x==n)return1;

elsereturn0;

}

voidmain()

{inti,n;

printf("Pleaseintputn:

");

scanf("%d",&n);

if(n>999||n<100)printf("Inputerror!

!

!

");

else

{for(i=100;i

if(flower(i))printf("%d",i);

}getch();

}

4、#include

#defineSWAP(a,b)t=b;b=a;a=t;

main()

{floatx,y,t;

printf("Entertwonumber(x,y):

");

scanf("%f,%f",&x,&y);

SWAP(x,y);

printf("\n\nExchanged:

x=%f,y=%f",x,y);

getch();

}

5、#include

intfib(intn)

{intp;

if(n==0)p=0;

elseif(n==1)p=1;

elsep=fib(n-1)+fib(n-2);

returnp;

}

voidmain()

{intn;

printf("Pleaseinputfib:

");

scanf("%d",&n);

printf("\n\nfibonacci=%d",fib(n));

}

6、#include

longfac(intn)

{longf;

if(n==0)f=1;

elsef=n*fac(n-1);

returnf;

}

voidmain()

{intm,n;

longf;

printf("Pleaseinput(m,n):

");

scanf("%ld,%ld",&m,&n);

f=fac(n+m)+fac(n);

printf("\n\nfibonacci=%ld",f);

}

7、#include

voidlist()

{inti,j;

for(i=1;i<=9;i++)

{for(j=1;j<=i;j++)

printf("%d*%d=%d",i,j,i*j);

print

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

当前位置:首页 > 幼儿教育 > 家庭教育

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

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