西南交秋学期《程序设计基础》离线作业答案_第1页
西南交秋学期《程序设计基础》离线作业答案_第2页
西南交秋学期《程序设计基础》离线作业答案_第3页
西南交秋学期《程序设计基础》离线作业答案_第4页
西南交秋学期《程序设计基础》离线作业答案_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

程序设计基础第1次作业

一、单项选择题(只有一个选项正确,共24道小题)

1.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符()o

(A)必须为字母

(B)必须为下划线

(0必须为字母或下划线

(D)可以是字母、数字和下划线中任一种字符

正确答案:C

2.

设有程序段

intk=10;

while(k=0)k=k-l;

则下面描述正确的是()

(A)while循环执行十次

(B)循环是无限循环

(0循环体语句一次也不执行

(D)循环体语句执行一次

正确答案:C

若有代数学则不正确的G吾言表达式是

3.be()

(A)

a/b/c*e*3

(B)3*a*e/b/c

(C)3*a*e/b*c

(D)a*e/c/b*3

正确答案:C

4.逻辑运算符两侧运算对象的数据类型()

(A)只能是0或非0正数

(B)可以是任何类型的数据。

(C)只能是整型或字符型数据

(D)只能是0或1

正确答案:B

5.以下关于运算符优先顺序的描述中正确的是()。

(A)关系运算符〈算术运算符〈赋值运算符〈逻辑与运算符

(B)逻辑与运算符〈关系运算符〈算术运算符〈赋值运算符

(0赋值运算符〈逻辑与运算符(关系运算符〈算术运算符

(D)算术运算符(关系运算符〈赋值运算符〈逻辑与运算符

正确答案:C

6.能正确表示“当x的取值在[1,10]和[200,210]范围内为真,否则为假”的

表达式是()

(A)(x>=l)&&(x<=10)&&(x>=200)&&(x<=210)

(B)(x>=l)||(x<=10)||(x>=200)||(x<=210)

(C)(x>=l)&&(x<=10)||(x>=200)&&(x<=210)

(D)(x>=l)||(x<=10)&&(x>=200)||(x<=210)

正确答案:C

7.判断char型变量ch是否为大写字母的正确表达式是()

(A)'A'<=ch<='Z'

(B)(ch>=,A')&(ch<=?V)

(C)(ch>='A')&&(ch<='Z')

(D)('A'<=ch)ANDCV>=ch)

正确答案:C

8.C语言的下列运算符中,优先级最低的是()»

(A)||

(B)!=

(0<=

(D)+

正确答案:A

9.执行以下输出段的结果是()

intw=3,z=7,x=10;

printf("%d\nn,x>10?x+100:x-10);

printf(w刎\n”,w++||z++);

printf(w%d\n",!w>z);

printf(M%d\n”,w&&z);

(A)0111

(B)1111

(C)0101

(D)0100

正确答案:C

10.以下程序段()

x=-l;

do

{x=x*x;}

while(!x);

(A)是死循环

(B)循环执行两次

(0循环执行一次

(D)有语法错误

正确答案:C

11.在C语言中,能代表逻辑“真”的是—

(A)true

(B)大于。的数

(0非0的整数

(D)非0的数

正确答案:C

12.C语言没有专门的逻辑变量,它表示逻辑真的方法是

(A)TRUE

(B)0

(01

(D)一切非零数值

正确答案:D

13.以下正确的C标识符是

(A)_8

(B)@

(C)E+008

(D)A$

正确答案:A

14.一般说来,C语言的数组下标

(A)固定从1开始

(B)可从负整数开始

(C)可从正整数

(D)固定从。开始

正确答案:D

15.以下程序的输出结果是。

x=0;doprintfx++);while(x<=l);

(A)0

(B)01

(C)012

(D)无任何显示

正确答案:B

16.设有程序段intm=10;while(m=0)m=m+l;则下述正确的是

(A)while循环执行10次;

(B)循环式无限循环

(0循环体语句不执行

(D)循环体语句执行一次

正确答案:C

17.以下正确的C语言标识符是().

(A)_8

(B)@

(C)E+008

(D)A$

正确答案:A

18.下列符号中,合法的C常量是()。

(A)le8.2

(B)OXFFH

(05

(D)089

正确答案:C

19.语句x=3;do{printf("%d",x);x—}while(x==0);的执行结果是().

(A)3210

(B)321

(03

(D)无任何显示

正确答案:C

20.下列符号中,合法的C常量是

(A)

(B)079

(C)3.5e2.1

(D)Oxch

正确答案:A

21.有以下程序段

intk=0;

while(k=l)k++;

则while循环执行的次数是

(A)无限次

(B)有语法错,不能执行

(0一次也不执行

(D)执行1次

正确答案:A

22.以卜所列的C语言常量中,错误的是

(A)OxFF

(B)1.2e0.5

(C)2.6

(D)'\72'

正确答案:B

23.以下合法的C语言标识符是

(A)_8

(B)$8

(08_

(D)E8.8

正确答案:A

24.下列程序输出结果是:

main()

{inti,sum;

for(i=0,i<ll;i++)

{sum=0;

sum=sum+i;

}

printf("sum或d”,sum);

}

(A)sum=55

(B)sum=10

正确答案:B

三、判断题(判断正误,共15道小题)

25.C语言俗称“低级语言的高级形式”,这说明C语言的功能不强。

正确答案:说法错误

26.下面的程序段构成死循环。

a=5;

while(1){a—;if(a<0)break;}

正确答案:说法错误

27.一个C程序的执行是从本程序文件的第•个函数开始,到本程序文件的最后一个函数

结束

正确答案:说法错误

28.C程序在进行编译时并不检查数组下标是否超界。

正确答案:说法正确

29.转义字符是一种特殊形式的字符常量,它占用一个字节的内存单元

正确答案:说法正确

30.若变量已有正确定义,且num=sum=7;则执行表达式sum=num++,sum++,++num

后sum的值为7。

正确答案:说法错误

31.在C语言中,引用数组元素时,其数组下标的数据类型允许是任何类型的表达式。

正确答案:说法错误

32.语言中,只有1才能用于逻辑表达式表示逻辑“真二

正确答案:说法错误

33.

一个C程序的执行是从本程序的main函数开始。

正确答案:说法正确

34.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字

母和下划线。

正确答案:说法正确

35.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型

数值•

正确答案:说法错误

36.当输入•个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f〃,

&f).

正确答案:说法错误

37.逻辑运算符两侧运算对象的数据类型可以是任何有值的类型。

正确答案:说法正确

38.语句while(!E);中的表达式!E等价于E!=0。

正确答案:说法错误

39.在C语言中,引用数组元素时,其数组下标的数据类型允许是任何类型的表达式。

正确答案:说法错误

40.若不包含相应头文件,程序员可以定义与标准库函数同名的用户自定义函数,若如此,

该函数将

失去原有意义。

正确答案:说法正确

程序设计基础第2次作业

1.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是。

参考答案:8

2.假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为。

参考答案:9

3.若a是int型变量,则表达式(a=4*5,a*2),a+6的值为。

参考答案:26

4.若x和n均是int型变量,且x和n的初值均为5,则计算表达式x+=n++后x的值为10,

n的值为。

参考答案:6

5.若定义:intb=7;floata=2.5,c=4.7;则表达式a+(int)(b/3*(int)(a+c)/2)%4

的值为。

参考答案:5.500000

6.当a=3,b=2,c=l时,表达式f=a>b>c的值是

参考答案:0

7.当a=5,b=4,c=2时,表达式a>b!=c的值是

参考答案:1

8.设y为int型变量,请写出描述“y是奇数”的表达式:

参考答案:(y%2)==l

9.条件“2或x<-10”的C语言表达式是:

参考答案:x>2&&x<3||x<-10

10.有inta=3,b=-4,c=5,则表达式a||b+c&&b==c的值为:

参考答案:1

11.C语言中没有逻辑型数据,在给出逻辑运算结果时,以代表“真”,以代表

“假”;但在判断一个量是否为真时,以代表“真”,以代表“假”

参考答案:10非00

12.已知int=12;执行语句a*=2+4后,变量a的值为。

参考答案:24

13.已知int=2,b;执行语句b=a—;后,变量a的值为,b的值为。

参考答案:12

14.若有inta=2,b=l,c=0;执行语句c=a++-b-后,变量c的值为,b的值

参考答案:10

15.当算术表达式中出现了char型变量时,系统自动将该型变量值转换为类型值才

参与运算。

参考答案:整型

16.结构化程序设计只需使用三种程序结构,分别是结构、分支(或选择)结构和

结构。

参考答案:顺序循环

17.C语言中,continue语句的作用是。

参考答案:终止本次循环体的执行并开始下一次循环

18.写出下列表达式的求值结果:

(1)2+3<=2(2)5/3+2

(3)!(3>2)||8!=7(4)3+7%3

参考答案:(1)0(2)3(3)1(4)4

19.写出下列表达式的求值结果:

(1)9+5/2(2)8%3+6(3)8+2<=9

(4)sizeof('A'+2)

参考答案:(1)11(2)8(3)0(4)2

数学式时应的。语言表式为

20.&+D

参考答案:

a*x+(a+x)/4/(a*a+l)

数学式-与二对应的。语言表式为

21.2(戈+1)

参考答案:

-(x+l)/2/(x*x+l)或-(x+1)/(2*(x*x+l))

22.表达式!!356的值是。

参考答案:1

23.有如下语句:charA[]={"SWJTU"};该字符串的长度是,A[3]=。

参考答案:5(允许无单引号和写ASCII码84)

24.符号"a"和'a'的区别是。

参考答案:前者(“a”)为串,占2字节存储;后者(’a,)为字符占1字节存储

25.C语言的字符串结尾用字符表示串结束。

参考答案:'\0'(或者0)

26.若有定义intx=5,n=5;则执行语句x+=n++;后,x的值=,n的值=。

参考答案:106

27.C语言的静态变量以及静态数组元素默认的初值为。

参考答案:0

28.若有定义charch='C';则puchar((ch>='A'&&ch〈='Z')?(ch+32):ch);语句的输

出结果为。

参考答案:c

29.以下程序的输出结果是:

main()

{intx=2,y=T,z=2;

if(x

if(y<0)z=0;

elsez+=l;

printf("%d\n",z);

}

参考答案:2

30.以下程序的运行结果是

main()

{intx,y,z;

x=l;y=l;z=0;

x=xy&&z;

printf(u%d,,x,x&&!y||z);

)

参考答案:1,0

31.

阅读以下程序,写出程序运行的结果。

main()

{intx=3;

do{x--;printf("%2d”,x);}while(x>0);

)

该程序的输出是。

参考答案:210

32.

阅读以下程序,写出程序运行的结果。

#include"stdio.h”

voidmain()

{ints=0,k=0;

while(k<4){s+=k;k++;printf("%d",s);}

}

该程序的输出是。

参考答案:0136

33.阅读以下程序,写出程序运行的结果。

#include"stdio.h"

voidmain()

{staticinta[5]={2,-15,1,0,-7};inti;

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

if(a[i]<0)

a[i]=-a[i];

for(i=4;i>=0;i—)

printf(“%4d",a[i]);

}

该程序的输出是

参考答案:7011512

34.执行下面的程序片段后,变量x的值是

intx,y;

for(y=l,x=l;y<=50;y++)

{if(x>=10)break;

if(x%2==1)

{x+=5;continue;}

x-=3;

}

参考答案:3

35.下列程序段的输出是。

#include>

voidmain()

{intk;

for(k=l;k<5;k++)

if(k%2)printf('*〃);elsecontinue;

printf(〃#");

)

)

参考答案:*#*#

36.下面程序的运行结果是。

©include〃stdio.h〃

voidmain()

{intm,n;

m=10;n=-1;

do{m++;n+=5;

if(!(n%3))printf(z/%4d964d\n〃,m,n);

}while(m>n);

}

参考答案:129

37.以下程序对输入的两个整数,按从大到小顺序输出。请在【】内填入正确内容。

main()

{intx,y,z;

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

if([11)

{z=x;[2])

printf("%d,%d”,x,y);

)

参考答案:

1x<y

2x=y;y=z;

38.以下程序的功能是打印输出1000以内的素数,请填空使之完善。

^include"stdio.h"

ttinclude"”

main()

{intm,i,k;

for(m=2;m<=l000;m++)

{k=(int)sqrt(m+1);

for(i=2;i<=;i++)if(m%i-0)break;

if()printf(,m);

)

)

参考答案:

math.h

m

i>k

39.

以卜.程序是从键盘输入10个整数,输出其中最大数和最小数。请填空使程序段功能完整。

#include

voidmainO

{inti,n,max,min;

scanf(,&n);

max=n;min=n;

for(_(1)__;i<=10;i++)

{scanf(,&n);

if(min>n)_(2)__

if(_(3)_)max=n;

)

printf("最大数为:%d,最小数为:%d”,max,min);

)

参考答案:

(1)_i=2

(2)_min=n_

(3)max<n

40.编程题:

编制程序要求输入整数a和b,若a2+b2大于100,则输出a2+b2百位以上的数字,否

则输出两数之和。

参考答案:

mainO

(inta,b,x,y;

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

x=a*a+b*b;

if(x>100)

{y=x/100;printf(u%d,J,y);}

elseprintf(,a+b);

)

41.

编程题:编程判断输入的正整数是否既是5又是7的整倍数。若是,则输出yes;否则输出

DOo

参考答案:

main()

{intx;

scanf("%d”,&x);

if(x%5=0&&x%7=0)

printf("yes”);

else

printf("no");

}

42.编程题:带100元钱去买鱼,大鱼每条3元,中等大小的鱼2元,小鱼每条5角,要

求买100条鱼,编程算出共有几种采购方案。

参考答案:

main()

{intd,z,x,i;

for(d=0;d<=33;d++)

for(z=0;z<=50;z++)

{x=100-d-z;

if(3*d+2*z+0.5*z<=100)

printf(ud=%d,z=%d,x=%d\n",d,z,x);

)

43.编程题:从键盘读入一个字符,判断并输出其属于数字字符、英文字母还是其它字符。

参考答案:

#include-stdio.h〃

voidmain()

(

charch;

ch=getchar();

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

printf(,?%c是英文字母\n〃,ch);

elseif(ch>='O'&&ch<='9')

printf(z,%c是数字字符\n〃,ch);

else

printf(,z%c是其他字母\n〃,ch);

)

程序设计基础第3次作业

1.

课内作业题

3.9

(1)若有定义doublex=2.5,y=4.7;inta-7

则表达式x+a%3*(int)(x+y)%2/4的值是:()

(2)若有定义inta=2,b=3;doublex=3.5,y=2.5

则表达式(float)(a+b)/2+(int)x%(int)y的值是:()

参考答案:

(1)2.5

(2)3.5

2.

课内作业题:3.12

写出以下赋值表达式运算后a的值,设原来a=12

(l)a+=aa的值为:(2)a-=2a的值为:(3)a%=2+3a的值为:

(4)a/=a+aa的值为:(5)a%=(n%=2),n的值等于5a的值为:

参考答案:

写出以下赋值表达式运算后a的值,设原来a=12

(l)a+=aa的值为:24(2)a-=2a的值为:10(3)a%=2+3a的值为:60

(4)a/=a+aa的值为:0(5)a%=(n%=2),n的值等于5a的值为:0

3.

课内作业题:

4.9输入一个华氏温度,要求输出摄氏温度。

公式为

输出要求有文字说明,取2位小数。

参考答案:

main()

{doublec,F;

printf("InputF=");scanf("%lf",&F);

c=5.0/9*(F-32);

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

}

4.

课内作业题:

5.3写出以下各逻辑表达式的值。设a=3,b=4,c=5。

(1)a+b>c&&b==c逻辑表达式的值:

(2)al|b+c&&b-c逻辑表达式的值:

(3)!(a>b)&&!c||1逻辑表达式的值:

(4)!(x=a)&&(y=b)&&0逻辑表达式的值:

(5)!(a+b)+c-l&&b+c/2逻辑表达式的值:

参考答案:

5.3写出以下各逻辑表达式的值。设a=3,b=4,c=5。

(1)a+b>c&&b==c逻辑表达式的值:0

(2)a||b+c&&b-c逻辑表达式的值:1

(3)!(a>b)&&!c||1逻辑表达式的值:1

(4)!(x=a)&&(y=b)&&0逻辑表达式的值:0

(5)!(a+b)+c-l&&b+c/2逻辑表达式的值:1

5.

课内作业题:编程实现

5.5输入x,求函数

rX(X<1)

产y2x-l(iWxvlO)

3x-ll(x3:10)

的值。

参考答案:

include"stdio.h”

main()

{floatx,y;

printf("inputx=");

scanf(,&x);

if(x<l)

y二x;

else

if(x<10)

y=2*x-l;

elsey=3*x-ll;

printf("\nx=%f\n",y);

6.

课内作业题:

5.6给出一百分制成绩,要求输出成绩等级。

90~100:A80、89:B70^79:C60〜69:D60分以下E

参考答案:

main()

{intscore;charx;

printf("inputthescore:“);scanf(&score);

switch(score/10)

{case10:case9:level=,A';break;

case8:level='B';break;

case7:level='C';break;

case6:level='D';break;

default:level='E';

)

printf(levelis%c\n,,,level);

}

7.

课内作业题:

6.4编程实现

计算£期P:l+2!+3!+…+20!)

参考答案:

main()

{longi,sum=0,t=1;

for(i=l;i<=20;++i)

(

t=t*i;

sum=sum+t;

1

printf("sum=%ld\n,>,sum);

)

结果:sum=268040729

8.

课内作业题:

6.6打印所有“水仙花数”。所谓水仙花数是指这样的三位正整数,其各位数字立方和等于

该数本身。如:153=13+53+33

参考答案:

ttinclude"stdio.h"

voidmain()

{intm,n,i,j,k;

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

{i=m/100;j=m/10%10;k=m%10;

n=i*i*i+j*j*j+k*k*k;

if(m=n)printf("/d\n",m);

)

}

程序设计基础第4次作业

1.

例1:输入若干非0实数,直到输入0时停止,要求输入的实数最多不超过20个,统计其

中正数的个数,负数的个数。

分析:设三个计数变量:

n-统计输入的数据总个数(为什么有必要?)

posn—统计正数的数目

negn-统计负数的数目

参考答案:

^include“stdio.h"

voidmain()

{intn,posn,negn;doublea;

n二posn=0;printf("Inputrealnumbers:;

while(l)

{scanf("%lf”,&a);if(a==0)break;

if(a>0)posn++;

n++;

if(n>=20)break;

)

negn=n-posn;

printf("posn趣d,negn二/d\n”,posn,negn);

}

2.

编程:例2:输入一行字符,统计其中的英文字母个数。

提示:即输入到字符'\n'时停止输入

参考答案:

^include"stdio.h"

voidmain()

{charch;intn=0;

printf("Inputastring:\n,J);

while(1)

{ch=getchar();if(ch==<\n,)break;

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

n++;

)

printf(^Numberoflettersis%d.\n",n);

)

3.

求最大值最小值问题:

例1:输入若干int型非0整数,直到输入0时停止,求输入的非0整数中的最大值

参考答案:

^include“stdio.h"

voidmain()

{inta,max;

printf("Inputintegersuntilinput0:\n");

scanf(“%d”,&max);

while(1)

{scanf(u%d,r,&a);if(!a)break;

if(a>max)max=a;

)

printf("max=%d\n>,,max);

)

4.

求最大值最小值问题:

例2.编程序求一批数的最大和最小数,直到输入0为止。

参考答案:

main()

{intn;floatx,max,min;

scanf("&x);

max=x;

min=x;

while(x!=0)

{if(x>max)max=x;

elseif(x<min)min=x;

scanf(,&x);

)

printf("m=%f\bl=%f\n”,max,min);

)

5.

基本累加/累乘问题

例1:计算s=l+2+3+・・・+n(n2l)

参考答案:

#include“stdio.h"main()

{ints,k,n;

printf(uInputn=");scanf("%d",&n);

s=0;k=l;

while(k<=n){s+=k;k++;}

printf(ws=%d\n^,s);

)

6.

基本累加/累乘问题:

n

例3.计算sm=n!=口i

i=l

参考答案:

main()

{intn,i;doubles=l;

for(i=l;i<=n;i++)s*=i;

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

)

7.

基本累加/累乘问题:

例4.输入n个100分制成绩(用整型),计算并输出平均成绩,要求输出精确到两位小数。

参考答案:

^include"stdio.h”

#definen10

voidmain()

{doubleav=0;intscore,i;

for(i=l;i<=n;i++)

{scanf(,&score);av+=score;}

av/=n;printf(<4av=%.2f\n",av);

)

8.

基本累加/累乘问题

例5计算Fibonacci数列:1,1,2,3,5,8,......的前n个数,

即:1i=l,2

fi=.

.a+&*3

参考答案:

main()

{intn,i;longintfl,f2;

scanf("%d",&n);

fl=l;f2=l;

for(i=l;i<=n/2;i++)

{printf(“%121d%121d“,fl,f2);

if(i%2==0)printf(“\n”);

fl+=f2;f2+=f1;

)

)

9.

字符图形

例1:输出以下*号图形(打印行数n由键盘输入)

*

•1**1**1*

参考答案:

ttinclude"stdio.h"

voidmain()

{intn,i,j;

printf(Inputn=");

scanf("%d",&n);

for(i=l;i<=n;i++)

(

for(j=l;j<=i;j++)

putchar(,*');

printf("\n”);

)

}

10.

字符图形:

例2:输出以下*号图形(打印行数n山键盘输入)

****

参考答案:

^include“stdio.h"

voidmain()

printf(Inputn=");scanf("%d”,&n);

for(i=l;i<=n;i++)

{for(j=l;j<=n-i;j++)putchar(4');

for(j=l;j<=i;j++)putchar(;

printf("\n");

)

)

11.

字符图形

例3:输出以下*号图形(打印行数n由键盘输入)

*

***

参考答案:

#include"stdio.h"

voidmain()

{intn,i,j;

printf(Inputn=");scanf("%d",&n);

for(i=l;i<=n;i++)

{for(j=l;j<=n-i;j++)putchar('');

for(j=l;j<=2*i-l;j++)putchar('*');

printf(“\n");

)

)

12.

搜索(穷举求解)

例1:中国剩余定理:“有物不知几何,三三数余一,五五数余二,七七数余三,问:物有

儿何?编程求1000以内所有解。

参考答案:

^include"stdio.h"

voidmain()

{intm,count=0;

for(m=l;m<=1000;m++)

if(m%3==l&&m%5==2&&m%7==3)

{printf("%5d",m);count++;

if(count%5==0)printf("\n");

)

}

13.

搜索(穷举求解)

例2:编一程序,将从2000年到3000年之间的润年年号显示出来

参考答案:

main()

{inti;

for(i=2000;i<=3000;i++)

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

printf('?%d\n/z,i);

14.

搜索(穷举求解)

例3.编程,把个位数为3且能被3整除的四位数显示出来.

参考答案:

main()

{inti;

for(i=1003;i<=9993;i++)

if(i%10==3&&i%3==0)

printf("%d\n",i);

}

15.

搜索(穷举求解)

例2:打印水仙花数。所谓水仙花数是指这样的三位正整数,其各位数字立方和等于该数本

身。

如:153=13+53+33

参考答案:

#include"stdio.h"/*解法一*/

voidmain()

{inti,j,k,m,n;

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

for(j=0;j<=9;j++)

for(k=0;k<=9;k++)

{m=i*i*i+j*j*j+k*k*k;

n=100*i+10*j+k;

if(m==n)printf("%d\n",m);

)

)

^include“stdio.h"/*解法二*/

voidmain()

{intm,n,i,j,k;

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

{i=m/100;j=m/10%10;k=m%10;

n=i*j*i+j*j*j+k*k*k;

if(m==n)printf("%d\n",m);}

16.

例3:“鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁母雏各几

何?”(引自张邱建算经,公元五世纪)

参考答案:

分析:设x,y,z分别表示鸡翁,鸡母,鸡雏的数目,则有

x:0~20

y:0~33

z:0^100

rx+y+z=100

[5x+3v+z/3=100

^include“stdio.h”

voidmain()

{intx,y,z;

printf("CockHenchicken'n");

for(x=0;x<=20;x++)

for(y=0;y<=33;y++)

{z=3*(100-5*x-3*y);

if(z>=0&&x+y+z=100)

printf("%8d%8d%8d\n",x,y,z);

)

)

17.

数组的应用

例1将一维数组中元素的值(1,3,5,7,9,11,13,15)按逆序重新存放

参考答案:

mainO

{inti,j;floata[8]={l,3,5,7,9,11,13,15),c;

for(i=0,j=7;i<j;i++,j-)

{c=a[i];a[i]=a[j];a[j]=c;

printf(,zTheresultis:\n〃);

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

printf(,z%6.2f”,a[i]);

printf(〃\n〃);

18.

数组的应用

例2从键盘上为一个5X5整型数组输入数据,并找出主对角线上元素的最大值及其所在的

行号。

参考答案:

mainO

{inti,j,max,row,a[5][5];

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

for(j=0;j<5;j++)

scanf("%d”,&a[i][j]);

max=a[0][0];row=0;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论