华科周纯杰版c语言答案

合集下载

华中科技大学标准C语言程序设计及应用习题答案

华中科技大学标准C语言程序设计及应用习题答案

华中科技大学标准C语言程序设计及应用习题答案(总32页)

--本页仅作为文档封面,使用时请直接删除即可--

--内页可以根据需求调整合适字体及大小--

第二章

一.选择题

D 5. D

100011 001111

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1. B 66

2. n1=%d\nn2=%d\n

3. 0

四.计算

1

(1)x|y = 0x002f

(2)x^y = 0x0026

(3)x&y = 0x0009;

(4)~x+~y = 0xffc6

(5)x<<=3 0x0068

(6)y>>=4 0x0002

2

(1)6

(2)50

(3)1

(4)–16

(5)1

(6)20

3

(1)0

(2)1

(3)1

(4)4

(5)8

(6)1

4

(1)12

(2)0

(3)1

(4)27

(6)6

(7)24

(8)27

(9)–29

5

(1)0

(2)1

(3)1

(4)–3

(5)2

五.程序分析题

程序1

b=20 a=3600

程序2

第三章一.填空题

=6

3.(1) scanf("%c",&c);

(2) c-32 更好的答案:c-('a'-'A')

main()

{

int a,b;

printf("please input a & b:");

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

printf("\nmax is %d\n",(a>b)a:b);

}

int max(int x,int y);

main()

{

int a,b,c,max;

printf("please input a & b & c:");

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

华中科技大学标准c语言程序设计及应用习题答案

华中科技大学标准c语言程序设计及应用习题答案

第二章

一.选择题

1.C

2.B D

3.A

4.A

5. D C

6.C

7.D

8.B

9.A 10.D 11.B 12.D 13.C 14.D 15.A

16.B 17.A 18.B

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1. B 66

2. n1=%d\nn2=%d\n

3. 0

四.计算

1

(1)x|y = 0x002f

(2)x^y = 0x0026

(3)x&y = 0x0009;

(4)~x+~y = 0xffc6

(5)x<<=3 0x0068

(6)y>>=4 0x0002

2

(1) 6

(2)50

(3) 1

(4)–16

(5) 1

(6)20

3

(1)0

(2) 1

(3) 1

(4) 4

(5)8

(6) 1

4

(1)12

(2)0

(3) 1

(4)27

(6) 6

(7)24

(8)27

(9)–29

5

(1)0

(2) 1

(3) 1

(4)–3

(5) 2

五.程序分析题

程序1

b=20 a=3600

程序2

第三章

一.填空题

1.s=6

2.96

3.(1) scanf("%c",&c);

(2) c-32 更好的答案:c-('a'-'A')

2.1

main()

{

int a,b;

printf("please input a & b:");

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

printf("\nmax is %d\n",(a>b)?a:b);

}

2.2

int max(int x,int y);

main()

{

int a,b,c,max;

printf("please input a & b & c:");

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

华中科技大学标准C语言程序设计及应用习题答案

华中科技大学标准C语言程序设计及应用习题答案

.

第二章

一.选择题

1.C

2.B D

3.A

4.A

5. D

6.C

7.D

8.C

9.A 10.D

11.B 12.D 13.C 14.D 15.A

16.B 17.A 18.B 100011 001111

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1. B 66

2. n1=%d\nn2=%d\n

3. 0

四.计算

1

(1)x|y = 0x002f

(2)x^y = 0x0026

(3)x&y = 0x0009;

(4)~x+~y = 0xffc6

(5)x<<=3 0x0068

(6)y>>=4 0x0002

2

(1) 6

(2)50

(3) 1

(4)–16

(5) 1

(6)20

3

(1)0

(2) 1

(3) 1

(4) 4

(5)8

(6) 1

4

(1)12

(2)0

(3) 1

(4)27

(6) 6

(7)24

(8)27

(9)–29

5

(1)0

(2) 1

(3) 1

(4)–3

(5) 2

五.程序分析题

程序1

b=20 a=3600

程序2

第三章

一.填空题

1.s=6

2.96

3.(1) scanf("%c",&c);

(2) c-32 更好的答案:c-('a'-'A')

2.1

main()

{

int a,b;

printf("please input a & b:");

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

printf("\nmax is %d\n",(a>b)?a:b);

}

2.2

int max(int x,int y);

main()

{

int a,b,c,max;

printf("please input a & b & c:");

华中科技大学标准C语言程序设计及应用习题标准答案

华中科技大学标准C语言程序设计及应用习题标准答案

华中科技大学标准C语言程序设计及应用习题答案

————————————————————————————————作者:————————————————————————————————日期:

第二章

一.选择题

1.C

2.B D

3.A

4.A

5. D

6.C

7.D

8.C

9.A 10.D 11.B 12.D 13.C 14.D 15.A

16.B 17.A 18.B 100011 001111

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1. B 66

2. n1=%d\nn2=%d\n

3. 0

四.计算

1

(1)x|y = 0x002f

(2)x^y = 0x0026

(3)x&y = 0x0009;

(4)~x+~y = 0xffc6

(5)x<<=3 0x0068

(6)y>>=4 0x0002

2

(1) 6

(2)50

(3) 1

(4)–16

(5) 1

(6)20

3

(1)0

(2) 1

(3) 1

(4) 4

(5)8

(6) 1

4

(1)12

(2)0

(3) 1

(4)27

(6) 6

(7)24

(8)27

(9)–29

5

(1)0

(2) 1

(3) 1

(4)–3

(5) 2

五.程序分析题

程序1

b=20 a=3600

程序2

第三章

一.填空题

1.s=6

2.96

3.(1) scanf("%c",&c);

(2) c-32 更好的答案:c-('a'-'A')

2.1

main()

{

int a,b;

printf("please input a & b:");

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

printf("\nmax is %d\n",(a>b)?a:b);

华中科技大学C语言期末考试题库试题及答案汇总

华中科技大学C语言期末考试题库试题及答案汇总

华中科技大学 C 语言期末考试题库试题及答案汇总

1 .设int a=1

2 ,则执行完语句a+=a-=a*a 后,a 的值是__D____ 。

A、552 B 、264 C 、144 D 、-264

知识点:算术表达式

2 .以下变量x、y、z 均为double 类型且已正确赋值,不能正确表示数字式子x/(y*z) 的

C 语言表达式是___A___ 。

A、x/y*z B 、x*(1/(y*z))C 、x/y*1/z D 、x/y/z

知识点:算术表达式

3 .若有定义:int a=8,b=5,c;, 执行语句c=a/b+0.4; 后,c 的值是__B____ 。

A、1.4 B 、1 C 、2.0 D 、2

知识点:算术表达式

4 .有如下程序

main()

{

int a; char c=10;

float f=100.0; double x;

a=f/=c*=(x=6.5);

printf("%d %d %3.1f%3.1f\n",a,c,f,x);

}

程序运行后输出结果是___B___ 。

A、1 65 1 6.5B 、1 65 1.5 6.5C 、1 65 1.0 6.5D 、2 65 1.5 6.5

知识点:赋值表达式

5 .若变量a、i 已正确定义,且i 已正确赋值,合法的语句是___B___ 。

A、a==1 B 、++i; C 、a=a++=5; D 、a=int(i);

知识点:赋值表达式

6 .若变量已正确定义并赋值,下面符合 C 语言语法的表达式是__B____ 。

A、a:=b+1 B 、a=b=c+2C 、int 18.5%3 D 、a=a+7=c+b

华中科技大学标准C语言程序设计及应用习题答案

华中科技大学标准C语言程序设计及应用习题答案

第二章

一.选择题

D 5. D

100011 001111

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1. B 66

2. n1=%d\nn2=%d\n

3. 0

四.计算

1

(1)x|y = 0x002f

(2)x^y = 0x0026

(3)x&y = 0x0009;

(4)~x+~y = 0xffc6

(5)x<<=3 0x0068

(6)y>>=4 0x0002

2

(1)6

(2)50

(3)1

(4)–16

(5)1

(6)20

3

(1)0

(2)1

(3)1

(4)4

(5)8

(6)1

4

(1)12

(2)0

(3)1

(4)27

(5)1

(6)6

(7)24

(8)27

(9)–29

5

(1)0

(2)1

(3)1

(4)–3

(5)2

五.程序分析题

程序1

b=20 a=3600

程序2

第三章

一.填空题

=6

3.(1) scanf("%c",&c);

(2) c-32 更好的答案:c-('a'-'A')

main()

{

int a,b;

printf("please input a & b:");

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

printf("\nmax is %d\n",(a>b)a:b);

}

int max(int x,int y);

main()

{

int a,b,c,max;

printf("please input a & b & c:");

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

max=a>ba:b;

max=c>maxc:max;

printf("\nmax is %d\n",max);

}

华中科技大学标准C语言程序设计及应用习题答案

华中科技大学标准C语言程序设计及应用习题答案

结构体

2.

#include

#define N 3

struct a

{

long num;

char name[20];

int old; //工龄

char ps[20]; //职务

int wage;

};

main()

{

struct a b[N];

int i,sum=0,ave=0;

for(i=0;i

{

scanf("%ld%s%d%s%d",&b[i].num,b[i].name,&b[i].old,b[i].ps,&b[i].wage);

sum=sum+b[i].wage;

}

ave=sum/N;

printf("工作证号姓名工龄职务工资\n");

printf("-----------------------------\n");

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

printf("%-9ld%-5s%-5d%-5s%-5d\n",b[i].num,b[i].name,b[i].old,b[i].ps,b[i].wage);

printf("总工资=%d\t平均工资=%d\n",sum,ave);

}

7.

#include

struct Date

{

int day;

int month;

int year;

int yearday;

char month_name[4];

};

Int day_of_year(struct Date pd)

{

Int day_tab[2][13]=

{{0,31,28,31,30,31,30,31,31,30,31,30,31}

{0,31,29,31,30,31,30,31,31,30,31,30,31}};

华中科技大学标准C语言程序的设计及应用习题答案

华中科技大学标准C语言程序的设计及应用习题答案
1
(1)x|y = 0x002f
(2)x^y = 0x0026
(3)x&y = 0x0009;
(4)~x+~y = 0xffc6
(5)x<<=3 0x0068
(6)y>>=4 0x0002
2
(1)6
(2)50
(3)1
(4)–16
(5)1
(6)20
3
(1)0
(2)1
(3)1
(4)4
(5)8
(6)1
4
(1)12
scanf("%d",&i);
if(i==0)
break;
if(i%2==0)
printf("the data %d is a even number.\n",i);
else
printf("the data %d is a odd number.\n",i);
}
}
2.6
#include <stdio.h>
(2)0
(3)1
(4)27
(5)1
(6)6
(7)24
(8)27
(9)–29
5
(1)0
(2)1
(3)1
(4)–3
(5)2
五.程序分析题
程序1

华中科技大学C语言试卷

华中科技大学C语言试卷

计算机学院2008-2009学年第2学期C语言程序设计考试试卷

一、单项选择题(在下面每小题的A、B、C、D四个选项中,只有一个选项是正

确的,请选择正确的选项并填写到括号内,选择正确得分。本大题共10小题,每小题1分,共10分。)

1、ENUM是【 b 】

A、合法标识符

B、C语言的关键字

C、合法的字符串

D、既不是C语言的关键字,也不是合法的字符串或标识符

2、下列数据中属于合法字符常量的是【 d 】

A、'\'

B、'\xag'

C、'45'

D、'\''

3、下列数据中合法的浮点型常量是【 c 】

A、E+10

B、2E+1.5

C、2E-10

D、0x2.5E10

4、下列数据中与256等值的数为【】

A、0256

B、0400

C、0x400

D、0x256

5、以下叙述中正确的是【】

A、局部变量说明为static存储类型,其生存期将得到延长

B、全局变量说明为static存储类型,其作用域将被扩大

C、任何存储类型的变量在未赋初值时,其值都是不确定的

D、形参可以使用的存储类型说明符与局部变量完全相同

6、 -127的16位补码的十六进制表示是【】

A、0xff81

B、0x807f

C、0xff80

D、0x8080

7、对于下面的数组声明,正确的是【】

A、int x[][5];

B、char t[ ]={…a‟,‟b‟,‟c‟,‟\0‟};

C、int n=5,a[n];

D、char s[5]=“abcde”;

8、若有以下说明和语句,则在执行for语句后,*(*pt+2)表示的数组元素【】

int t[3][3],(*pt)[3],k;

华中科技大学标准C语言程序设计与应用习题答案

华中科技大学标准C语言程序设计与应用习题答案

WORD格式

第二章

一.选择题

1.C

2.BD

3.A

4.A

5.D

6.C

7.D

8.C

9.A10.D

11.B12.D13.C14.D15.A

16.B17.A18.B100011001111

二.判断题

1.错

2.错

3.错

4.错

三.填空题

1.B66

2.n1=%d\nn2=%d\n

3.0

四.计算

1

(1)x|y=0x002f

(2)x^y=0x0026

(3)x&y=0x0009;

(4)~x+~y=0xffc6

(5)x<<=30x0068

(6)y>>=40x0002

2

(1)6

(2)50

(3)1

(4)–16

(5)1

(6)20

3

(1)0

(2)1

(3)1

(4)4

(5)8

(6)1

4

(1)12

(2)0

(3)1

(4)27

(6)6

(7)24

(8)27

(9)–29

5

(1)0

(2)1

(3)1

(4)–3

(5)2

五.程序分析题

程序1

b=20a=3600

程序2

第三章

一.填空题

1.s=6

2.96

3.(1)scanf("%c",&c);

(2)c-32更好的答案:c-('a'-'A')

2.1

main()

{

inta,b;

printf("pleaseinputa&b:");

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

printf("\nmaxis%d\n",(a>b)?a:b);

}

2.2

intmax(intx,inty);

main()

{

inta,b,c,max;

printf("pleaseinputa&b&c:");

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

max=a>b?a:b;

max=c>max?c:max;

标准C语言程序设计及应用周纯杰版习题参考答案

标准C语言程序设计及应用周纯杰版习题参考答案

注:以下内容为教材部分习题答案,如发现错误请告知,欢迎讨论——张惕远

习题二

一、选择题

1、C

2、BCD

3、A

4、A(注:本题强调用户标识符,所以if、int不是,但是sin是用户标识符,原

因是库函数不是标准语法成分,开发库函数的程序员也是用户,main虽然不是语法成分,但开发平台预定义了main为console application的执行入口,并且规定了定义格式,所以用户不能用作它用,但_main可以)

5、(D)(C)

6、C

7、D

8、B

9、A

10、 D

11、B(注:本题是求strlen("\\\”DEF\”\\”)的值,即字符串中有效字符的个

数,不含串结尾符,sizeof(“…”)的值与前者不同,含串结尾符)

12、 D

13、 C

14、 D

15、 A

16、 B

17、 A

18、 B

二、判断题

(对)(错)(错)(对)

三、填空题

1、B 66回车

2、n1=%d\nn2=%d

3、5

四、计算下列各表达式的值

1、注:本书假设采用16位编译平台,所以int和unsigned int均为2字节类型。

(1)47

(2)38

(3)9

(4)0xFFC6 or 65478

(5)104

(6)2

2、(1)6

(2)50

(3)1

(4)-16 or 0xFFF0

(5)1

(6)20

3、表达式值a的值b的值

(1)0 5 3

(2)1 5 3

(3)3 1 3

(4)15 10 4

(5)8 8 3

(6)1 5 3

4、表达式值x的值y的值

(1)12 25 2

(2)0 24 3

(3)1 24 3

(4) 27 24 3

(5) 1 24 3

华科周纯杰版c语言答案

华科周纯杰版c语言答案

第三章程序和流程控制1.输入两个整数,输出较大者。

#include<stdio.h>

void main()

{

int a,b;

int max=0;

printf("Please input two numbers:");

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

if(a<=b) max=b;

else max=a;

printf("The larger number is %d\n",max); }

2.有3个整数a,b,c,由键盘输入,输出其中最大的数。

#include<stdio.h>

void main()

{

int a,b,c,max;

printf("Please input three numbers:");

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

if(a>b)

{

if(a>c) max=a;

else max=c;

}

else

{

if(b>c) max=b;

else max=c;

}

printf("The largest number is %d\n",temp);

}

3.从1累加到100,用while语句。

#include<stdio.h>

#define N 100

void main()

{

int i=1,sum=0;

while(i<=N)

{

sum+=i;

i++;

}

printf("sum:%d\n",sum);

}

4.a1=10,a2 =-3,an=3an-1 +an-2 ,求{ a }的前十项。

#include<stdio.h>

华中科技大学C语言期末考试题库试题及答案汇总

华中科技大学C语言期末考试题库试题及答案汇总

知识点:赋值表达式
5.若变量 a、i 已正确定义,且 i 已正确赋值,合法的语句是___B___。
A、a==1 B、++i; C、a=a++=5; D、a=int(i);
知识点:赋值表达式
6.若变量已正确定义并赋值,下面符合 C 语言语法的表达式是__B____。
A、a:=b+1 B、a=b=c+2 C、int 18.5%3 D、a=a+7=c+b
A、a=a+b=b++ B、w%((int)a+b) C、(c+w)%(int)a D、w=a=b;
知识点:赋值表达式
31.设 int a=12,则执行完语句 a+=a-=a*a 后,a 的值是__D____。
A、552 B、264 C、144 D、-264
知识点:算术表达式
32.以下变量 x、y、z 均为 double 类型且已正确赋值,不能正确表示数字式子 x/(y*z) 的 C 语言表达式是___A___。
A、x/y*z B、x*(1/(y*z)) C、x/y*1/z D、x/y/z
知识点:算术表达式
33.若有定义:int a=8,b=5,c;,执行语句 c=a/b+0.4;后,c 的值是__B____。
A、1.4
B、1 C、2.0 D、2

华科C语言第一次作业参考答案

华科C语言第一次作业参考答案

一、从1900年开始到2014年为止,我们会遇到多少个素数年号?

//第一题解法1

void main( )

{

int num=0;

int i,j;

for(i=1900;i<=2014;i++)

{

for(j=2;j

{

if(i%j==0)

break;

}

if(i= =j)

num++;

}

printf("总共有%d个素数年号",num);

}

void main()

{

int i=0;

int a,b,c;

for(a=1901;a<=2014;a+=2)

{

for(b=3;b<=sqrt(a);b=b+2)

{

c=a%b;

if(c==0)break;

}

if(c)

{

i=i+1;

printf("%d ",a);

}

}

printf("%d ",i);

}

#include

void main( )

{

int num=0;

int i,j;

int data[120];

for(i=1900;i<=2014;i++)

{

for(j=2;j

{

if(i%j= =0)

break;

}

if(i==j)

data[num++]=i;

}

printf("总共有%d个素数年号:",num); for(i=0;i

printf("%d ",data[i]);

}

2.设N是一个四位数,它的9倍恰好是其反序数(例如:1234的反序数是4321),求N值。

//第二题解法一

void main()

{

int x1,x2,x3,x4,i;

for(i=1000;i<10000;i++)

{

x1=i/1000;

x2=(i-x1*1000)/100;

x3=(i-x1*1000-x2*100)/10;

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第三章程序和流程控制

1.输入两个整数,输出较大者。

#include<>

void main()

{

int a,b;

int max=0;

printf("Please input two numbers:");

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

if(a<=b) max=b;

else max=a;

printf("The larger number is %d\n",max);

}

2.有3个整数a,b,c,由键盘输入,输出其中最大的数。

#include<>

void main()

{

int a,b,c,max;

printf("Please input three numbers:");

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

if(a>b)

{

if(a>c) max=a;

else max=c;

}

else

{

if(b>c) max=b;

else max=c;

}

printf("The largest number is %d\n",temp);

}

3.从1累加到100,用while语句。

#include<>

#define N 100

void main()

{

int i=1,sum=0;

while(i<=N)

{

sum+=i;

i++;

}

printf("sum:%d\n",sum);

}

4.已知a1=10,a2 =-3,an=3an-1 +an-2 ,求{ a }的前十项。

#include<>

#define N 10

void main()

{

int a[20]={10,-3};

int i=0,m=0;

for(i=2;i

{

a[i]=3*a[i-1]+a[i-2];

}

m=N;

printf("The %d numbers are:\n",m);

for(i=0;i

{

printf("a[%d]=%d\n",i+1,a[i]);

}

}

5.输入一个自然数,判断它是奇数还是偶数。

#include<>

void main()

{

int a, temp;

printf("Please input a numbers:\n");

scanf("%d",&a);

temp=a%2;

if(temp==0)

printf("The number %d is an even!\n",a);

else

printf("The number %d is an odd number!\n",a);

}

6.已知a1 =8,an =an-1 +bn ,b1 =1,bn =bn-1 +3,求{ a }前10项之和。 #include<>

#define N 10

void main()

{

int a[N]={8},b[N]={1},i,sum=0;

for(i=1;i

{

b[i]=b[i-1]+3;

}

for(i=1;i

{

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

}

for(i=0;i

{

sum+=a[i];

}

printf("The sum is:%d\n",sum);

}

7.有一个函数写一程序,输入x,输出Y的值。

#include<>

void main()

{

float x,y;

printf("Please input a float number x=:");

scanf("%f",&x);

printf("x=%f",x);

if(x<1)

y=x;

else if(x>=10)

y=3*x-11;

else

y=2*x-1;

printf("The value of y is:%.3f\n",y);

}

8.给一个不多于5位的的正整数,要求:求出它是几位数,分别打印出每一位数字,最后按照逆序打印各位数字,例如原数为321,应输出为123。

#include<>

#define N 99999

#define M 5

void main()

{

int i,j,k,m,b[M];

long int a,temp;

printf("Please input a number:\n");

scanf("%ld",&a);

if(a<0||a>N)

printf("Error in input data!!!\n");

else

{

temp=a;

for(i=0;temp!=0;i++)

{

temp=temp/10;

}

m=i;

printf("The number a=%ld have %d single numbers\n",a,m);

temp=a;

for(j=0;j

{

b[j]=temp%10;

temp=temp/10;

}

printf("The origal numbers are:\n");

for(k=m-1;k!=-1;k--)

{

printf("%d",b[k]);

}

printf("\n");

printf("every letter is:");

for(j=m-1;j>=0;j--)

printf("%d\t",b[j]);

printf("\n");

相关文档
最新文档