C语言 习题三 参考答案

合集下载

c语言程序设计第五版谭浩强习题答案第三章课后答案

c语言程序设计第五版谭浩强习题答案第三章课后答案

c语⾔程序设计第五版谭浩强习题答案第三章课后答案

第三章最简单的C程序设计 ----顺序程序设计

1、假如我国国民⽣产总值的年增长率为7%,计算10年后我国国民⽣产总值与现在相⽐增长多少百分⽐。计算公式为$p = (1+r)^n$ ,其中r为年增长率,n为年数,p为与现在相⽐的倍数。

题⽬解析:

此题的关键主要是利⽤数学库math中pow函数进⾏计算,若不熟悉可以查阅帮助⽂档,查看pow函数的⽤法。

代码⽰例:

#include<stdio.h>

#include <math.h>

int main()

{C

float p, r, n;

r = 0.07;

n = 10;

p = pow(1 + r, n);

printf("p=%f\n", p);

return 0;

}

运⾏结果:

2、存款利息的计算。有1000元,想存5年,可按以下5种办法存:

(1)⼀次存5年期

(2)先存2年期,到期后将本息再存3年期

(3)先存3年期,到期后将本息再存2年期

(4)存1年期,到期后将本息再存1年期,连续存5次

(5)存活期存款,活期利息每⼀季度结算⼀次

2017年银⾏存款利息如下:

1年期定期存款利息为1.5%;

2年期定期存款利息为2.1%;

3年期定期存款利息为2.75%;

5年期定期存款利息为3%;

活期存款利息为0.35%(活期存款每⼀-季度结算⼀-次利息)

如果r为年利率,n为存款年数,则计算本息的公式如下:

1年期本息和: P= 1000* (1+r);

n年期本息和: P= 1000* (1+n* r);

存n次1年期的本息和: $P=1000* (1+r)^n$;

C语言程序设计实例教程(第三版)练习题答案3

C语言程序设计实例教程(第三版)练习题答案3

练习3

1.在C语言中,引用数组元素时,其允许的数组元素下标的数据类型是(C)。

A、实型常量

B、字符型常量

C、整型常量或整型表达式

D、任何类型的表达式解析:C语言中数组元素下标所引用的是整型常量或整型表达式,答案选C;

2.以下对一维整型数组a的正确说明形式是(D)。

A、int arry(10) ;

B、int n=10;

int arry[n]; C、int n;

scanf("%d",&n);

int arry[n];

D、#define N 10

int a[N];

解析:本题主要考察数组定义语法要求,数组定义时下标不能使用变量,只能使用常量,数组定义时下标使用中括号表示,故答案选D;

3.若有定义:int a[10],则对数组a元素的正确引用形式是(D)。

A、a[10]

B、a[4.5]

C、a(0)

D、a[10-10]

解析:本题考察数组元素的引用语法,使用中括号表示下标,数组元素使用整数或整型变量表示,且下标数值表示范围在0至9,故答案选择D;

4.以下不能对一维数组a进行正确初始化的语句是(D)。

A、int a[5]={1,2,3,4,5};

B、int a[5]={1,2,3} ;

C、int a[] = {1,2,3,4,5} ;

D、int a[5]={1,2,3,4,5,6} ;

解析:一维数组的初始化时,数值的个数不能超过所定义的数组元素的个数;对于选项D定义的元素个数是5个,但是初始化赋值的个数为6个,故不能正确为数组元素赋值,本题答案选择D;

5.以下对二维数组a的正确说明形式是(C)。

A、int a[5][ ];

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参

考答案

C语言程序设计教程第三版课后习题参考答案

第一章:C语言概述

1.1 C语言的特点

答案:C语言是一种通用的、面向过程的程序设计语言,具有高效、简洁、灵活等特点。它提供了丰富的程序设计元素和功能,适用于各

种不同的应用领域。

1.2 C语言程序的基本结构

答案:C语言程序由预处理指令、函数声明、函数定义、变量声明

和语句组成。其中,预处理指令用来引入头文件或定义宏,函数声明

用来声明函数的名称和参数,函数定义用来实现函数的功能,变量声

明用来声明变量的类型和名称,语句用来表达具体的计算过程。

1.3 C语言的数据类型

答案:C语言提供了多种数据类型,包括基本类型(整型、浮点型、字符型等)和派生类型(数组、指针、结构体等)。每种数据类型在

内存中占据一定的存储空间,并具有特定的取值范围和操作规则。

1.4 C语言的运算符和表达式

答案:C语言支持各种运算符和表达式,例如算术运算符(+、-、*、/等)、关系运算符(>、<、==等)、逻辑运算符(&&、||、!等)等。通过运算符和表达式可以进行各种数值计算和逻辑判断。

第二章:基本数据类型与运算

2.1 整型数据类型

答案:C语言提供了不同长度的整型数据类型,包括有符号整型(int、long等)和无符号整型(unsigned int、unsigned long等)。整型数据类型可以表示整数值,并具有不同的取值范围。

2.2 浮点型数据类型

答案:C语言提供了浮点型数据类型(float、double等),用来表

示带小数部分的实数值。浮点型数据可以表示较大或较小的数值,并

《C语言程序设计教程》(第三版)课后习题参考答案(精选5篇)[修改版]

《C语言程序设计教程》(第三版)课后习题参考答案(精选5篇)[修改版]

第一篇:《C语言程序设计教程》(第三版)课后习题参考答案C语言程序设计课后习题参考答案

习题一

一、单项选择题

1、C

2、B

3、B

4、C

5、D

6、A

7、C

8、A

二、填空题

1、判断条件

2、面向过程编程

3、结构化

4、程序

5、面向对象方法

6、基本功能操作、控制结构

7、有穷性

8、直到型循环结构

9、算法

10、可读性

11、模块化

12、对问题的分解和模块的划分习题二

一、单项选择题

1、B

2、D

3、C

4、B

5、A

二、填空题

1、主

2、C编译系统

3、结构化

4、程序

5、面向对象方法

6、.OBJ

7、库函数

8、直到型循环结构

习题三

一、单项选择题

1、D

2、B

3、A

4、C

9、B

10、C

11、A

12、D

13、C

17、B

18、C

19、C

20、D

21、A

25、D

26、A

二、填空题

1、补码

2、10^-138~10^1 38、15~16

6、A

7、B

6、D

7、B

14、B

15、C

22、D

8、C

8、D

16、A

24、D、A

3、实

4、单目运算符、自右向左

5、函数调用

6、65,89

习题四

一、单项选择题

1、D

2、C

3、D

4、A

5、D

6、B

7、A

8、C

9、B

10、B

二、填空题

1、两, ;

2、5.169000

3、-200 2500、i=-200,j=2500回车、i=-200回车j=2500回车

4、a=98,b=765.000000,c=4321.000000

5、100 25.81 1.892

34、100,25.81,1.892

34、100回车25.81回车1.89234回车

6、0,0,3

7、3

8、scanf(“%lf %lf %lf”,&a,&b,&c);

C语言程序设计练习题第3部分答案

C语言程序设计练习题第3部分答案

C程序设计语言练习题

第三部分

63.已知:int x; 则下面说明指针变量pb的语句是正确的。

A) int pb=&x; B)int *pb=x; C)int *pb=&x D)*pb=*x;

64.有如下程序段:

int *p,a,b=1;

p=&a;*p=10;a=*p+b;

执行该程序段后,a值是。

A) 12 B) 11 C) 10 D) 编译出错

65.若有说明:int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是。

A) i=*p; B) *p=*&j; C) i=&j; D) i=**p;

66.已知:int a,*p=&a; 则为了得到变量a的值,下列错误的表达式为______。

A) *&p B) *p C) p[0] D) *&a

67.已知static int a[2][3]={2,4,6,8,10,12};正确表示数组元素地址的是__。

A) *(a+1)B) a[1]+2 C) a[1]+3 D) a[0][0]

68.已知int a[3][4],*p=*a; p+=6;那么*p和______的值相同。

A) *(a+6) B) *(&a[0]+6) C) *(a[1]+2)D) *(&a[0][0]+6)

69.已知说明int (*p)[M]; 其中p是______。

A) M个指向整型变量的指针

B) 指向M个整型变量的函数指针

C) 一个指向具有M个整型元素的一维数组的指针

D) 具有M个指针元素的一维指针数组,每个元素都只能指向整型变量

70.若有定义和语句:int c[4][5], (*cp)[5]; cp=c;则对c数组元素的引用正确的是哪个?

C语言程序设计习题答案(第三版)

C语言程序设计习题答案(第三版)

C语言程序设计(第三版)习题答案

习题一

一、名词解释

(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)高级语言P2

(5)汇编程序P3 (6)编译程序P4 (7)算法P5 (8)结构化程序设计方法P10

二、简答题

1. 设计程序时应遵循哪些基本原则?P4

答:正确性、可靠性、简明性、有效性、可维护性、可移植性。

2. 算法具有哪些特点?

答:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。

3. 算法的表示形式有哪几种?

答:自然语言、伪代码、传统流程图、N-S流程图、计算机语言。

4. 结构化程序设计方法的三种基本结构是什么?

答:顺序结构、选择结构和循环结构。

5. 传统流程图与N-S流程图最大的区别是什么?

答:N-S流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。

三、用传统流程图或N-S流程图表示求解以下问题的算法。

1. 从键盘输入10个整数,求出其中的最小数并输出。

2. 求1+2+3+…+100的值。

3. 求10~50的所有素数之和。

4. 求下列分段函数的值。

四、请参照本章例题,编写一个简单的C 程序,输出以下三行信息。

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

Yangtze University

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

#include

void main()

{

printf("**************************\n");

printf(" Yangtze University\n");

printf("**************************\n");

C语言习题三基本语句

C语言习题三基本语句

习题三基本语句

1. 以下叙述中错误的是______。

A、C语句必须以分号结束

B、复合语句在语法上被看作一条语句

C、空语句出现在任何位置都不会影响程序运行

D、赋值表达式末尾加分号就构成赋值语句

解析:本题考查的是C语句。"空语句出现在任何位置都不会影响程序运行"这句话是错误的,例如在for 循环中,循环条件语句为空时,则不判断循环条件,循环将无终止地进行下去,导致了此循环为死循环。故本题答案为C。

2. 有以下程序,其中%u表示按无符号整数输出

main()

{ unsigned int x=0xFFFF; /* x的初值为十六进制数 */

printf("%u\n ",x);}

程序运行后的输出结果是______。

A、-1

B、65535

C、32767

D、0xFFFF

解析:本题考查的是整型无符号数的输出。%u的作用是按无符号的十进制形式输出整型数,十六进制数0xFFFF转换为二进制位其值为16个1,代表的整数就是65535。故本题答案选B。

3. 下列定义变量的语句中错误的是______。

A、int _int;

B、double int_;

C、char For;

D、float US$;

解析:本题考查的是C数据类型及其定义。选项D中含有"$",故不符合标识符的定义。故本题答案为D。

4. #include

main()

{ char c1,c2,c3,c4,c5,c6;

scanf("%c%c%c%c",&c1,&c2,&c3,&c4);

c5=getchar(); c6=getchar();

putchar(c1); putchar(c2);

《C语言程序设计教程》(第三版)课后习题参考答案

《C语言程序设计教程》(第三版)课后习题参考答案

C语言程序设计课后习题参考答案

习题一

一、单项选择题

1、C

2、B

3、B

4、C

5、D

6、A

7、C

8、A

二、填空题

1、判断条件

2、面向过程编程

3、结构化

4、程序

5、面向对象方法

6、基本功能操作、控制结构

7、有穷性

8、直到型循环结构

9、算法

10、可读性

11、模块化

12、对问题的分解和模块的划分

习题二

一、单项选择题

1、B

2、D

3、C

4、B

5、A

6、A

7、B

8、C

二、填空题

1、主

2、C编译系统

3、结构化

4、程序

5、面向对象方法

6、.OBJ

7、库函数

8、直到型循环结构

习题三

一、单项选择题

1、D

2、B

3、A

4、C

5、A

6、D

7、B

8、D

9、B 10、C 11、A 12、D 13、C 14、B 15、C 16、A

17、B 18、C 19、C 20、D 21、A 22、D 23、D 24、D、A

25、D 26、A

二、填空题

1、补码

2、10^-138~10^138、15~16

3、实

4、单目运算符、自右向左

5、函数调用

6、65,89

习题四

一、单项选择题

1、D

2、C

3、D

4、A

5、D

6、B

7、A

8、C

9、B 10、B

二、填空题

1、两, ;

2、5.169000

3、-200 2500、i=-200,j=2500回车、i=-200回车j=2500回车

4、a=98,b=765.000000,c=4321.000000

5、100 25.81 1.89234、100,25.81,1.89234、100回车25.81回车1.89234回车

6、0,0,3

7、3

8、scanf(“%lf %lf %lf”,&a,&b,&c);

C语言程序设计第三习题库答案

C语言程序设计第三习题库答案

C 语言程序设计(第三版)习题库

1、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf 输入数据,输出计算结果,输出时要求文字说明,取小数点后两位数字。请编程序。

#include <stdio.h>

main(){

float r,h,C1,Sa,Sb,Va,Vb;

scanf(__”%f ”__,&r);

scanf(”%d ”,__&h _);;

C1=2*3.14*r;

Sa=3.14*r*r;

Sb=4*Sa;

Va=4*3.14*r*r*r/3;

Vb=Sa*h;

printf(___”Cl=%.2fSa=%.2fSb=%.2fVa=%.2fVb=%.2f ”,Cl,Sa,Sb,Va,Vb );

}

2、输入一个华氏温度,要求输出摄氏温度。公式为 c=5(F-32)/9

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

#include <stdio.h>

main(){

float F,c;

scanf("%f",&F);

____c=5*(F-32)/9______;

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

}

3、有一函数:⎪⎩

⎪⎨⎧≥-<≤-<=101131011

21x x x x x x y 写一程序,输入x 值,输出y 值。 #include <stdio.h>

main(){

int x,y;

printf("输入x :");

scanf("%d",&x);

if(x<1) { /* x<1 */

y=x;

printf("x=%3d, y=x=%d\n",x,y);

C语言程序设计练习题第3部分答案

C语言程序设计练习题第3部分答案

C程序设计语言练习题

第三部分

63.已知:int x; 则下面说明指针变量pb的语句是正确的。

A) int pb=&x; B)int *pb=x; C)int *pb=&x D)*pb=*x;

64.有如下程序段:

int *p,a,b=1;

p=&a;*p=10;a=*p+b;

执行该程序段后,a值是。

A) 12 B) 11 C) 10 D) 编译出错

65.若有说明:int i,j=2,*p=&i;,则能完成i=j赋值功能的语句是。

A) i=*p; B) *p=*&j; C) i=&j; D) i=**p;

66.已知:int a,*p=&a; 则为了得到变量a的值,下列错误的表达式为______。

A) *&p B) *p C) p[0] D) *&a

67.已知static int a[2][3]={2,4,6,8,10,12};正确表示数组元素地址的是__。

A) *(a+1)B) a[1]+2 C) a[1]+3 D) a[0][0]

68.已知int a[3][4],*p=*a; p+=6;那么*p和______的值相同。

A) *(a+6) B) *(&a[0]+6) C) *(a[1]+2)D) *(&a[0][0]+6)

69.已知说明int (*p)[M]; 其中p是______。

A) M个指向整型变量的指针

B) 指向M个整型变量的函数指针

C) 一个指向具有M个整型元素的一维数组的指针

D) 具有M个指针元素的一维指针数组,每个元素都只能指向整型变量

70.若有定义和语句:int c[4][5], (*cp)[5]; cp=c;则对c数组元素的引用正确的是哪个?

C语言习题及标准答案

C语言习题及标准答案

习题一

【习题1-1】C语言源程序最多可能由________________部分组成?

A) 预处理部分B)变量说明部分

C) 函数原型声明部分D)函数定义部分

【习题1-2】一个完整的C语言源程序最少必须有_______。

A)若干个主函数B)若干个函数

C)且只能有一个主函数D)一个函数

【习题1-3】C语言以函数为源程序的基本单位最主要有利于_______。

A)程序设计结构化B)程序设计模块化

C)程序设计简单化D提高程序设计有效性

【习题1-4】要使得C语言编写的程序能够在计算机上运行并得出正确结果,必须要先经过____________________________________

___。

A)编辑和链接B)编译和链接

C)修改和运行D运行并输入数据

【习题1-5】选择一个C语言集成开发环境并启动它,然后分别输入【例1-1】、【例1-2】、【例1-3】的源程序,依次编译、链接、运行,看看能否达到预想的结果?从中了解程序的开发过程。

习题二

一、单项选择题

【习题2-1】已知’A’的ASCII代码是65,以下程序的输出结果是( )#include "stdio.h"

main( )

{ int c1=65,c2=66;

printf("%c,%c",c1,c2);

}

A.因输出格式不合法,输出错误信息B.65,66

C.A,BﻩﻩﻩﻩD.65,66

【习题2-2】若变量已正确定义,要将a和b中的数进行交换,下面不正确的语句组是()

A. a=a+b,b=a-b,a=a-b;ﻩﻩB.t=a,a=b,b=t;

C.a=t,t=b,b=a; ﻩﻩﻩ

C语言练习题-第三章参考答案(已勘误)

C语言练习题-第三章参考答案(已勘误)

C语⾔练习题-第三章参考答案(已勘误)C语⾔练习题---第三章

1、有以下程序

#include<stdio.h>

main()

{short c=124;

c=c_______;

printf(“%d\n”,C);

若要使程序的运⾏结果为248,应在下划线处填⼊的是

A)>>2 B)|248 C)&0248 D)<<1

2、以下程序运⾏后的输出结果是2008。

#include<stdio.h>

main()

{int a=200,b=010;

printf(”%d%d\n”,a,b);

3、有以下程序

#include<stdio.h>

main()

{int x,y;

Scanf(“%2d%ld”,&x,&y);printf(“%d\n”,x+y);

程序运⾏时输⼊:程序的运⾏结果是34579。

4、有以下程序

#include

Void main()

{

char a,b,c,d;

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

c=getchar(); d=getchar();

printf(”%c%c%c%c\n”,a,b,c,d);

}

当执⾏程序时,按下列⽅式输⼊数据(从第⼀列开始,代表回车,注意:回车是⼀个字符)12

34

则输出结果是:()

A、1234

B、12

C、12

D、12

3 34

5、有以下程序,其中k的初值为⼋进制数#include

main()

{int k=011;

printf(”%d\n”,k++);

}

程序运⾏后的输出结果是D

(A)12 (B)11 (C)10 (D)9

6、有以下程序(暂不做)

C语言程序设计 第三版 部分习题 (谭浩强 著) 清华大学出版社 课后答案

C语言程序设计 第三版 部分习题 (谭浩强 著) 清华大学出版社 课后答案

【习题1】

一、简答题(在课本中寻找答案,略)

1.1 C程序的基本结构包括哪些内容?

1.2 如何定义标识符?

1.3 输入格式、输出格式的组成包括哪些内容?

1.4 C语言函数分为哪两类?

1.5 计算表达式的值应该考虑哪些方面?

1.6 上机调试程序的步骤如何?

二、判断并改错

1.7 C程序执行的入口是main()函数,所以main函数必须放在程序的开头。

错误:main函数可以放在程序的任何位置。并不限定在程序的开头。

1.8 定义一个函数包括数据说明部分和执行语句部分,两者可以交叉出现。

错误:不可以交叉出现,数据说明部分在执行语句部分的前面。

1.9 编辑与编译不是一回事。

错误:不是一回事。编辑完成源程序的输入和修改;编译是对源程序进行语法检查,如果无语法错误,则生成目标程序。

1.10 scanf("%d,%d",&x,&y);的正确输入格式:3,4<回车>。

正确

1.11 注释内容太多会影响程序的执行效率。

错误:不会影响程序的执行效率。因为在编译时,编译系统将注释内容删除或用空格代替,所以注释内容不会编译到目标程序中。

1.12 所有的数学公式可以直接出现在源程序中。

错误:数学公式需要转换成C语言能够接受的公式才能出现在源程序中。

三、编程题

1.13 在屏幕上输出自己名字的拼音。

提示:中文名字叫“张三”,对应的拼音为“Zhang San”,输出用printf()函数。

1.14 输入圆的半径,求圆的周长,并将结果保留两位小数输出到屏幕上。

提示:定义圆的半径r,圆的周长:2*3.14*r,输出结果保留2位小数可以用%.2f

c语言习题三答案

c语言习题三答案

习题三

一.选择题

语言的程序一行写不下时,可以。D

A)用逗号换行B)用分号换行

C)在任意一空格处换行D)用回车符换行

( )函数可以向终端输出一个。D

A)整型变量表达式值B)实型变量值

C)字符串D)字符或字符型变量值

3.执行下列程序片段时输出结果是。B

unsigned int a=65535;

printf(“%d”,a);

A)65535 B)-1 C)-32767 D)1

4.执行下列程序片段时输出结果是。

float x=

printf(“\n%,”,x);

printf(“%”,x);

A), B),

C), D),

5.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是。AC

int a1,a2; char c1,c2;

scanf(“%d%c%d %c”,&a1,&c1,&a2,&c2);

A)10A 20B↙B)10 A 20 B↙

C)10A20B↙C)10A20 B↙

6.对于下述语句,若将10赋给变量k1和k3,将20赋给变量k2和k4,则应按方式输入数据。D

int k1,k2,k3,k4;

scanf(“%d%d”,&k1,&k2);

scanf(“%d,%d”,&k3,&k4);

A)1020↙B)10 20↙C)10,20 ↙D)10 20↙1020↙10 20↙10,20↙10,20↙

7.执行下列程序片段时输出结果是。C

int x=13,y=5;

printf(“%d”,x%=(y/=2));

A)3 B)2 C)1 D)0

C参考答案与复习题c_3

C参考答案与复习题c_3

第3章 运算符和表达式

丰富的运算符可使表达式方便、简捷。初学者一下掌握这么多操作符会有压力。可通过写或计算表达式的练习,以及各章程序实例中出现的表达式,进一步熟悉运算符。

3.1 表达式的基本概念

对数据进行各种运算的符号为运算符,参与运算的数据为操作数。表达式构成:常量、变量、有返回值的函数调用是表达式,表达式加圆括号、或用运算符作正确连接后也是表达式。

圆括号左、右括号个数要相同,多层括号时内层括号中的运算优先;整个表达式必须写在同一行上。

a ·x 3+

b ·x 2

+c ·x+d 写作

a*x*x*x+b*x*x+c*x+d 或 ((a*x+b)*x+c)*x+d ;

写作 1/(1+1/(1+x));等等。 C 运算符:算术、关系、逻辑、条件、赋值、逗号运算符,等等。 根据参与运算的操作数个数,运算符可分为单目、双目以及三目运算符。两个操作数的运算符是双目运算符,“单目运算符”只有一个操作数。三目运算符是C 语言所特有的,它有三个操作数。

不同运算符参与运算时有优先级问题。如先乘除、后加减。 同级运算一般是从左向右进行。特例如赋值“x=y=3”,先计算y=3、再计算x=y 。特例将特别指出,一般按缺省。

主要介绍算术(包括自增自减)、关系、逻辑、赋值、逗号运算符,以及由这些运算符构成的各类表达式。

3.2 算术运算符与算术表达式

内容:算术运算符及其功能,算术表达式,优先级、运算时的类型转换规则。

3.2.1 算术运算符

1. 算术运算符

C 的算术运算符有:+ - * / %(取余)

其中“-”可作单目运算符,如-5,表达式3*-5值为-15。 各运算符优先级:先乘除、后加减;取余的优先级和乘除相同。 优先级的讨论,应限于同一层括号内,同级运算一般从左到右执行。具体规则如下:

C语言程序设计习题答案(第三版)

C语言程序设计习题答案(第三版)

C语言程序设计(第三版)习题答案

习题一

一、名词解释

(1)程序P1 (2)程序设计P1 (3)机器语言P1 (4)高级语言P2

(5)汇编程序P3 (6)编译程序P4 (7)算法P5 (8)结构化程序设计方法P10

二、简答题

1. 设计程序时应遵循哪些基本原则?P4

答:正确性、可靠性、简明性、有效性、可维护性、可移植性。

2. 算法具有哪些特点?

答:有穷性、确定性、有效性、有零个或多个输入、有一个或多个输出。

3. 算法的表示形式有哪几种?

答:自然语言、伪代码、传统流程图、N-S流程图、计算机语言。

4. 结构化程序设计方法的三种基本结构是什么?

答:顺序结构、选择结构和循环结构。

5. 传统流程图与N-S流程图最大的区别是什么?

答:N-S流程图去掉了在传统流程图中常用的流程线,使得程序的结构显得更加清晰、简单。

三、用传统流程图或N-S流程图表示求解以下问题的算法。

1. 从键盘输入10个整数,求出其中的最小数并输出。

2. 求1+2+3+…+100的值。

3. 求10~50的所有素数之和。

4. 求下列分段函数的值。

四、请参照本章例题,编写一个简单的C 程序,输出以下三行信息。

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

Yangtze University

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

#include

void main()

{

printf("**************************\n");

printf(" Yangtze University\n");

printf("**************************\n");

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

第三章习题参考答案

一、单项选择题

1、C语言中字符型(char)在内存中的形式存储是()。

A)源码 B)补码 C)反码D)ASCII码

2、运算符有优先级,在C语言中关于运算符优先级的正确叙述是()。

A)所有单目运算的级别相同

B)单目运算高于双目运算

C)赋值运算级别最低

D)求余运算比乘除运算级别高

3、C语言并不是非常严格的算法语言,在以下关于C语言的不严格的叙述中,错误的说法是()。

A)任何不同数据类型都不可以通用

B)有些不同类型的变量可以在一个表达式中运算

C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型

D)同一个运算符号在不同的场合可以有不同的含义

4、以下选项中属于C语言的数据类型是()。

A)复数型 B)逻辑型C)双精度型 D)集合型

5、在C语言中,int、char和short三种类型数据所占的内存()。

A)均为2个字节 B)由用户自己定义

C)由所用机器的字长决定 D)是任意的

6、下列常数中不能作为C语言的常量的是()。

A)0xa5 B)2.5e-2 C)3e2 D)0582

7、设int类型的数据长度为2字节,则unsigned int类型数据的取值范围是()。

A)0至255 B)0至65535 C)-256至255 D)-32768至32767

8、在C语言中,数字029是一个()。

A)八进制数 B)十六进制数 C)十进制D)非法数

9、下列可以正确表示字符型常数的是()。

A)”a”B)'\t’ C)”\n” D)297

10、以下错误的转义字符是()。

A)'\\’ B)'\'’ C)'\81’ D)'\0’

11、C语言中整数-8在内存中的存储形式是()。

A)1111 1111 1111 1000 B)1000 0000 0000 0000

C)0000 0000 0000 1000 D)1111 1111 1111 0111

12、已知 int i; float f; 正确的语句是()。

A)(int f)%i B)int(f)%i C)int(f%i) D)(int)f%i

13、已知:char a; int b;float c; double d; 执行语句c=a+b+c+d; 后,变量c的数据类型是()。

A)int B)char C)float D)double

14、已知:int i,a;执行语句“i=(a=2*3,a*5),a+6;后,变量i的值是()。

A)6 B)12 C)30 D)36

15、已知:int i=5;执行语句i+= ++i;i的值是()。

A)10 B)11 C)12 D)A,B,C答案都不对

16、字符串”\\ \22a,0\n”的长度是()。

A)8 B)7 C)6 D)5

17、已知:char c='A';int i=1,j;执行语句j=!c&&i++;则i和j的值是()。

A)1,1 B)1,0 C)2,1 D)2,0

18、已知:int x=1,y=2,z;则执行z=x>y?++x:++y;则z的值为()。

A)1 B)2 C)3 D)4

19、为了求出s=10!的值,则变量s的类型应当为()。(10!=3628800)

A)int B)unsigned C)long D)以上三种类型均可以

20、已知:float x=1,y;则 y= ++x* ++x的结果为()。

A)y=9 B)y=6 C)y=1 D)表达式是错误的

21、已知“int a=4,b=5,c;”,则执行表达式“c=a=a>b”后变量a的值为()。

A)0 B)1 C)4 D)5

22、已知:char w;int x;float y;double z;则表达式为为w*x+z-y的结果的类型是()。

A)float B)char C)int D)double

23、选出使变量i的运行结果为4的表达式()。

A)int i=0,j=0; B)int i=1,j=0;

(i=3,(j++)+i) j=i=((i=3)*2);

C)int i=0,j=1;D)int i=1,j=1;

(j==1)?(i=1):(i=3);i+=j+=2;

24、已知:int x;则使用逗号运算的表达式“(x=4*5,x*5),x+25”的结果为( 1 ),变量x的值为( 2 )。

(1)A)20 B)100 C)表达式不合法D)45

(2)A)20 B)100 C)125 D)45

25、执行下面的语句后x的值为()。

int a=14,b=15,x;

char c='A';

x=sizeof(c);

A)A B)41H C)0 D)1

26、若定义了int x;则将x强制转化为双精度类型应该写成()。

A)(double)x B)x(double) C)double(x) D)(x)double

二、填空题

1、负数在计算机中是以______形式表示。(补码)

2、双精度实数的表示范围是___________,其有效位数是________。(-10308~-10-308 ,10-308~10308,15 ~ 16 位)

3、一个整型数与一个实型数的运算结果是________型。(实型)

4、“=”是________运算符,其结合性是由______。(赋值从右向左)

5、表达式的运算对象可以是常量、变量和________。(函数调用)

6、已知在ASCII代码中,字母A的序号为65,以下程序的输出结果是________。

(65,89)

相关文档
最新文档