C语言程序设计1-4、12章习题解答

合集下载

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

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

C语言程序设计教程课后习题答案第一章C语言程序设计概述-习题答案1算法的描述有哪些基本方法?答1、自然语言2、专用工具2C语言程序的基本结构是怎样的?举一个例子说明。

答1、C语言程序由函数构成;2、“/*”与“*/”之间的内容构成C语言程序的注释部分;3、用预处理命令#include、#define可以包含有关文件或预定义信息;4、大小写字母在C语言中是有区别的;5、除main()函数和标准库函数外,用户也可以自己编写函数,应用程序一般由多个函数组成,这些函数指定实际所需要做的工作。

3C语言有什么特点?答1、具有结构语言的特点,程序之间很容易实现段的共享;2、主要结构成分为函数,函数可以在程序中被定义完成独立的任务,独立地编译代码,以实现程序的模块化;3、运算符丰富,包含的范围很广;4、数据类型丰富;5、允许直接访问物理地址,即可直接对硬件进行损伤,实现汇编语言的大部分功能;6、限制不太严格,程序设计自由度大,这样使C语言能够减少对程序员的束缚;7、生成的目标代码质量,程序执行效率高,同时C语言编写的程序的可移植性好。

4★指出合法与不合法的标识符命名。

答AB12--√ leed_3-- a*b2--× 8stu--× D.K.Jon--× EF3_3--√ PAS--√ if--×XYZ43K2--√ AVE#XY--× _762--√ #_DT5--× C.D--×5说明下列Turbo C热键的功能。

答F2:源文件存盘 F10:调用主菜单 F4:程序运行到光标所在行(用于调试程序)Ctrl+F9:编译并链接成可执行文件 Alt+F5:将窗口切换到 DOS 下,查看程序运行结果。

6说明下列Turbo C方式下输入并运行下列程序,记录下运行结果。

①main(){printf("********************\n");printf(" welcome you \n");printf(" very good \n);printf("********************\n");}②main(){ int a,b,c,t;printf("please input three numbers;");scanf("%d,%d,%d",&a,&b,&c); /*教材S是错误的*/t=max(max(a,b),c);printf("max number is:%d\n",t);}int max(int x, int y){ int z;if(x>y)z=x;else z=y;return(z);}答运行结果:********************welcome youvery good********************运行结果:please input three numbers;3,1,4 /*左侧下划线内容为键盘输入*/max number is:47一个C程序是由若干个函数构成的,其中有且只能有一个___函数。

C语言程序设计课后各章节习题答案

C语言程序设计课后各章节习题答案
答include"math.h"
main()
{
float x,y,d;
printf("Input x,y:");
scanf("%f,%f",&x,&y);
d=sqrt((x-2)*(x-2)+(y-2)*(y-2));
if(d>1)printf(ntf("inside");
}
12有一函数
x-1 -5<x<0
y= x x=0
x+1 0<x<8
编写一程序,要求输入x的值,输出y的值。分别用不嵌套的if语句,嵌套的if语句,switch语句编写。
答使用不嵌套的if语句程序如下:
main()
{
int x,y;
printf("Input x:");
scanf("%d",&x);
答main()
{
int x,a,b,c;
printf("Input number:");
scanf("%d",&x);
a=x/100;/*变量a中记录x的百倍数字*/
b=x/10%10;/*变量b中记录x的十位数字*/
c=x%10;/*变量c中记录x的个位数字*/
if(a*a*a+b*b*b+c*c*c==x)
if(m==2)
d=28+f;
else
d=31-(m==4)+(m==6)+(m==9)+(m==11);
printf("%d-%d is %d days.\n",y,m,d);

《C语言程序设计》课后习题参考答案 李勃 邱晓红 主编 清华大学出版社

《C语言程序设计》课后习题参考答案  李勃   邱晓红  主编 清华大学出版社

《C语言程序设计》课后习题参考答案第1章C语言及程序设计概述1.单选题(1)A (2)B (3)A (4)B (5)C2.填空题(1)//,/*…*/(2)scanf()(3)printf()3.判断题(1)对(2)错(3)错(4)对第二章:数据类型运算符与表达式1.单选题(1)C (2)D (3)C (4)B (5)C (6)A (7)B (8)D (9)A(8)D(9)A(10)B(11)C(12)C(13)D(15)B(16)C(17)A(18)A(19)B(20)C(21)C(22)D(23)C(24)A(25)D(26)B(27)C(28)B(29)B(30)A2.填空题(1)sqrt(pow(y,x)+log10(y)) (2)36(3)6(4)3 3(6)36(7)int x=8,y=8;(8)1(9)E(10)6,7,8,9(11)6(12)66,96(13)240(14)1,1,-1,-1(15)5,2,6(16)1(17)!(18)2(19)(a>0&&a<101)&&(a%3==0||a%7==0) (20)A3.程序分析题(1)2 72 74 94 412 12116(3)100 d 68 D97 a 49 1 (4)0 1 0 1 (5)2 4 6 7-0.58 7046.587.5(6)33 12 113 13 082 32(7)618 30181814.改错题(1)①无初始赋值,不能输出②数据精度丢失③少“;”号④单字符变量不能保存字符串常量⑤不能连续初始化⑥非法标识符(2)short i=38000溢出PI=3.1416 常量不能修改值Printf(“%d”,x%y) %必须是整数a*=(b+c)/=d符合赋值左边不能是表达式第三章:算法概念与顺序结构程序设计1.选择题(1)D(2)B、D(3)D(4)B(5)C(6)A(8)C(9)B(10)D2.填空题.(1)一条语句;(2)小于左右(3)%%(4)输出项列表输出控制符(5)取地址取a的地址(6)从盘获取一个字符(7)大括号(8)f=68.00(9)n1=%d\n n2=%d(10)7,5,c=33.程序分析题.(1)i=100,c=a,f=1.234000(2)65535,65536(10)1234,123.5,12345.5第四章:选择结构程序设计(1)C (2)B (3)B (4)B (5)D (6)D (7)D (8)A (9)B (10)A (11)B (12)B (13)D (14)A (15)C (16)A (17)C (18)D (19)B (20)D (21)A(23)A(24)A2.填空题.(1)1(2)5 8 8(3)4 5 99(4)2(5)10 20 0(6)2 1(7)-4(8)3(9)No(10)25(11)45 45(12)0(13)5.5(14)13(15)3第五章:循环结构程序设计(1)C(2)A(3)D(4)B(5)D(6)B(7)A A或B(8)输出4444(9)B(10)A(11)B(12)C(13)A(14)B2.填空题.(1)r=m;m=n;n=rm%n(2)3(3)-5(4)i%3==2&&i%5==3&&i%7==2 j==5j!=k(6)int s=8,j=i+2k+i+j==8(7)8(8)k&&i<=500 k/10 continue第六章:数组1.选择题(1)B(2)C(3)D(4)D(5)B(6)C(7)B(8)A(9)A(10)D2.填空题.(1)按行序优先的原则(2)0 9(4)1 2(5)6(6)前者以回车后者以空格或回车作为间隔符(7)gets()(8)&a[i](9)char k -1(10)9 83.程序分析题.(1)1 3 7 15(2)0 0 0(3)读取输入字符串中数字字符(4)①if(str1==str2) (strcmp(str1,str2)==0)②&c1[0]③m[i][k-1]第七章:函数的调用1.选择题(1)B(2)C(3)C(4)A(6)D(7)D(8)D(9)B(10)D(11)A(12)A(13)B(14)B2.填空题.(1)有参无参(2)顺序类型(3)定义调用(4)①fmax(a,N) ②s[k]=s[p](5)①age(n-1)+2 ②age(5)(6)①prt(c,n-1) ②prt(…‟,n-i) ③prt(…*‟,2*i-1) 3.程序分析题.(1)h l o(2)3(3)2 6(4)5 25。

C语言程序设计1-4、12章习题解答

C语言程序设计1-4、12章习题解答

第1章C语言程序设计概述1.1一个C程序的执行是从 A 。

A.从main()函数开始,直到main()函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main()函数开始,直到最后一个函数结束1.2在C程序中,main()的位置 C 。

A.必须作为第一个函数B.必须作为最后一个函数C.可以任意D.必须放在它所调用的函数之后1.3C语言源程序的基本单位是 B 。

A.过程 B.函数 C.子程序 D.标识符1.4一个C源程序有且仅有一个一个函数和__零个或多个_____个其他函数。

1.5C语言源程序的语句分隔符是__分号___。

1.6C语言开发的四个步骤是_编辑源程序→对源程序进行编译→与库函数连接→运行目标程序__ 。

1.7C语言有哪些主要特点?C主要特点有:1.C语言简洁、紧凑,使用方便、灵活;2.运算符丰富;3.数据类型丰富;4.C语言是结构化语言;5.语法限制不太严格,程序设计自由度大;6.可直接与机器硬件打交道,直接访问内存地址;7.生成的目标代码质量高,程序执行效率高;8.C语言适用范围广,可移植性好。

1.8简述C编译和运行的基本方法。

略。

1.9常用的集成开发工具有哪些?各有什么特点?略。

1.10编写一个程序,在屏幕上输出以下内容:**************************** You are welcome! ****************************#include<stdio.h>void main( ) /*主函数 */{ /*函数体开始*/printf ("***************************\n"); /*输出语句*/printf ("* You are welcome! *\n");printf ("***************************\n");}1.11 编写一个C程序,输入a、b、c 3个值,输出其中最大者。

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。

b) 一个C程序中至少应包括一个 main函数。

c) 在C语言中,输出操作是有库函数 printf( )函数完成。

二、单选题1、A2、C3、B解析:第1题答案:A 。

因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。

且到main函数结束。

第2题答案:C 。

因为 main函数没有限制必须位于程序的最前面。

C程序书写自由,一行内可写几个语句。

在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。

不过C语言本身并没有输入输出语句,输入输出是由函数完成的。

第3题答案:B。

因为一个C语言程序是由若干个函数组成的。

但至少包含一个main 函数,且main函数的位置不限。

三、编程题1、编写一个输出“Welcome to C!”信息的小程序。

解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。

海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。

*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。

*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。

c语言程序设计基础教程课后答案

c语言程序设计基础教程课后答案

c语言程序设计基础教程课后答案C语言程序设计基础教程课后答案第一章:C语言概述1. 简述C语言的特点。

- C语言是一种结构化编程语言,具有高效、灵活、功能强大等特点。

- 它支持多种编程范式,如过程式编程、结构化编程、面向对象编程等。

- C语言具有较低的抽象级别,接近硬件,因此执行效率较高。

2. C语言的发展历史。

- C语言在1972年由丹尼斯·里奇(Dennis Ritchie)在贝尔实验室开发。

- 它最初是作为UNIX操作系统的系统编程语言而设计的。

第二章:C语言环境和基本语法1. 如何设置C语言的开发环境?- 选择一个C语言编译器,如GCC、MSVC等。

- 安装编译器并配置环境变量,以便在命令行中直接调用编译器。

2. C语言的基本语法结构是什么?- C语言的基本结构包括预处理指令、函数定义、变量声明和语句。

第三章:数据类型、运算符和表达式1. C语言中的基本数据类型有哪些?- 整型(int)、字符型(char)、浮点型(float和double)等。

2. 运算符的分类及其用法。

- 算术运算符:+、-、*、/、%等。

- 赋值运算符:=、+=、-=等。

- 比较运算符:==、!=、>、<等。

- 逻辑运算符:&&、||、!等。

第四章:控制语句1. 条件语句的用法。

- if语句用于基于条件执行代码块。

- switch语句用于多条件选择。

2. 循环语句的用法。

- while循环用于在满足条件时重复执行代码块。

- for循环用于已知迭代次数的循环。

- do-while循环先执行代码块再判断条件。

第五章:数组和字符串1. 数组的基本概念和使用。

- 数组是相同数据类型的元素集合,存储在连续的内存位置。

- 声明数组:int arr[10]; 表示一个包含10个整数的数组。

2. 字符串的表示和操作。

- 在C语言中,字符串是以空字符('\0')结尾的字符数组。

- 使用标准库函数如strcpy、strlen等操作字符串。

《C语言程序设计》 课后习题答案 高等教育出版社

《C语言程序设计》 课后习题答案 高等教育出版社

《C语言程序设计》课后习题答案高等教育出版社《C语言程序设计》课后习题答案高等教育出版社第一章:C语言概述1. C语言的特点C语言是一种以处理底层任务和系统编程为目标的高级编程语言。

其特点包括语法简洁、执行效率高、可移植性强等。

第二章:C语言基本数据类型1. C语言中的基本数据类型C语言中的基本数据类型包括整型、字符型、浮点型等。

整型可以进一步细分为有符号整型和无符号整型。

第三章:C语言运算符1. C语言中的运算符C语言中常见的运算符包括算术运算符、赋值运算符、关系运算符、逻辑运算符等。

这些运算符用于执行各种数学和逻辑操作。

第四章:C语言控制语句1. C语言中的条件语句C语言提供了if语句和switch语句来实现条件判断。

if语句用于执行基于布尔表达式的条件分支,而switch语句用于根据不同的值执行不同的代码块。

第五章:C语言函数1. C语言中的函数定义和调用函数是C语言中的基本模块,用于封装可重用的代码。

函数定义包括函数返回类型、函数名、参数列表和函数体等部分。

第六章:C语言数组1. C语言中的数组定义和使用数组是一组相同类型的数据元素的集合。

C语言中可以使用数组来存储和操作大量数据。

第七章:C语言指针1. C语言中的指针概念指针是一种变量,它存储了内存地址。

通过指针,可以直接访问和修改对应内存地址中的数据。

第八章:C语言字符串1. C语言中的字符串操作字符串是由一系列字符组成的数据类型。

C语言通过字符数组来表示和操作字符串。

第九章:C语言结构体1. C语言中的结构体定义和使用结构体是一种自定义的复合数据类型,它可以包含多个不同类型的成员变量。

第十章:C语言文件操作1. C语言中的文件读写操作文件操作是一种重要的数据输入和输出方式。

C语言提供了一系列函数来实现文件的读写操作。

总结:通过解答以上习题,我们可以更好地掌握C语言的各个方面,提升我们的编程能力和解决问题的能力。

希望本文对读者有所帮助。

《C语言程序设计》课后习题答案第四版谭浩强

《C语言程序设计》课后习题答案第四版谭浩强

第1章程序设计和C语言11.1什么是计算机程序11.2什么是计算机语言11.3C语言的发展及其特点31.4最简单的C语言程序51.4.1最简单的C语言程序举例61.4.2C语言程序的结构101.5运行C程序的步骤与方法121.6程序设计的任务141-5 #include <stdio.h>int main ( ){ printf ("**************************\n\n");printf(" Very Good!\n\n");printf ("**************************\n");return 0;}1-6#include <stdio.h>int main(){int a,b,c,max;printf("please input a,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if (max<b)max=b;if (max<c)max=c;printf("The largest number is %d\n",max); return 0;}第2章算法——程序的灵魂162.1什么是算法162.2简单的算法举例172.3算法的特性212.4怎样表示一个算法222.4.1用自然语言表示算法222.4.2用流程图表示算法222.4.3三种基本结构和改进的流程图262.4.4用流程图表示算法282.4.5用伪代码表示算法312.4.6用计算机语言表示算法322.5结构化程序设计方法34习题36第章最简单的C程序设计——顺序程序设计37 3.1顺序程序设计举例373.2数据的表现形式及其运算393.2.1常量和变量393.2.2数据类型423.2.3整型数据443.2.4字符型数据473.2.5浮点型数据493.2.6怎样确定常量的类型513.2.7运算符和表达式523.3C语句573.3.1C语句的作用和分类573.3.2最基本的语句——赋值语句593.4数据的输入输出653.4.1输入输出举例653.4.2有关数据输入输出的概念673.4.3用printf函数输出数据683.4.4用scanf函数输入数据753.4.5字符数据的输入输出78习题823-1 #include <stdio.h>#include <math.h>int main(){float p,r,n;r=0.1;n=10;p=pow(1+r,n);printf("p=%f\n",p);return 0;}3-2-1#include <stdio.h>#include <math.h>int main(){float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;p1=p*((1+r5)*5); // 一次存5年期p2=p*(1+2*r2)*(1+3*r3); // 先存2年期,到期后将本息再存3年期p3=p*(1+3*r3)*(1+2*r2); // 先存3年期,到期后将本息再存2年期p4=p*pow(1+r1,5); // 存1年期,到期后将本息存再存1年期,连续存5次p5=p*pow(1+r0/4,4*5); // 存活期存款。

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

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

C语言程序设计(第2版)课后习题答案第一章1.请参照本章例题,编写一个C程序,输出以下信息:**************************V ery good!**************************解:#include<stdio.h>void main(){printf(“**************************”);printf(“\n”);printf(“V ery good!\n”);printf(“\n”);printf(“**************************”);}2.编写一个C程序,输入a、b、c三个值,输出其中最大值。

解:#include<stdio.h>void main(){int a,b,c,max;printf(“请输入三个数a,b,c:\n”);scanf(“%d,%d,%d”,&a,&b,&c);max=a;if(max<b) max=b;if(max<c) max=c;printf(“最大数为: %d”,max);}第二章1.假如我国国民生产总值的年增长率为10%,计算10年后我国国民生产总值与现在相比增长多少百分比。

计算公式为P=(1+r)^n,r为年增长率;n为年数;P为与现在相比的百分比。

解:#include<stdio.h>#include<math.h>void main(){double P, r=0.1, n=10;P=pow((1+r), n);printf(“%lf\n”, P);}3.请编程序将“China”译成密码,译码规律是用原来字母后面的第4个字母代替原来的字母。

例如,字母“A”后面第4个字母是“E”,“E”代替“A”。

因此,“China”应译为“Glmre”。

请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为‟C‟、‟h‟、‟i‟、‟n‟、‟a‟,经过运算,使c1、c2、c3、c4、c5分别变为‟G‟、‟l‟、‟m‟、‟r‟、‟e‟,并输出。

《C语言程序设计》课后习题答案(第四版)

《C语言程序设计》课后习题答案(第四版)

《C语言程序设计》课后习题答案(第四版) C语言程序设计课后习题答案(第四版)1. 基础知识概述C语言程序设计是一门广泛应用于软件开发领域的编程语言。

它以其简洁、高效以及可移植性而备受推崇。

本文将为读者提供《C语言程序设计》(第四版)课后习题的详细解答,帮助读者加深对C语言的理解。

2. 第一章习题答案2.1 习题1题目:编写一个C语言程序,输出"Hello, World!"。

解答:```c#include <stdio.h>int main() {printf("Hello, World!");return 0;}```2.2 习题2题目:编写一个C语言程序,接收用户输入的两个整数,并输出它们的和。

解答:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d", sum);return 0;}```3. 第二章习题答案3.1 习题1题目:编写一个C语言程序,接收用户输入的一个整数,并判断它是否为偶数。

解答:```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("这个数是偶数");} else {printf("这个数不是偶数");}return 0;}```3.2 习题2题目:编写一个C语言程序,接收用户输入的一个字符,并判断它是否为字母。

C语言程序设计教程_李含光_郑关胜_清华大学出版社习题答案习题答案[完美打印版]

C语言程序设计教程_李含光_郑关胜_清华大学出版社习题答案习题答案[完美打印版]
5
void f3(float,float,float,float);int main() { float a,b,c,d; scanf("%f %f %f",&a,&b,&c); if(a==0) { printf(" 不 是 一 元 二 次 方 程 \n"); exit(0); } d=b*b-4*a*c; if(d>0) f1(a,b,c,d); else if(d==0) f2(a,b,c,d); else f3(a,b,c,d); return 0; } void f1(float a,float b,float c,float d){ float x1,x2; { x1=(-b+sqrt(d))/(2*a); x2=(-b-sqrt(d))/(2*a); printf("%.2f ,%.2f\n",x1,x2); } } void f2(float a,float b,float c,float d){ float x1,x2; { x1=-b/(2*a); x2=-b/(2*a); printf("%.2f ,%.2f\n",x1,x2); } }
3
{ int i,j,k; for(i=1;i<=9;i++) for(j=0;j<=9;j++) for(k=0;k<=9;k++) printf("%5d",100*i+10*j+k); return 0; } (9) . #include<stdio.h> #include<math.h> int main() { float a=-10,b=10,x,f1,f2,f; f1=(((2*a-4)*a+3)*a)-6; f2=(((2*b-4)*b+3)*b)-6; do { x=(a+b)/2; f=(((2*x-4)*x+3)*x)-6; if(f*f1<0) { b=x; f2=f; } else { a=x; f1=f; } }while(fabs(f)>=1e-6); printf("%6.2f\n",x); return 0; } (10) . #include<stdio.h>

国家开放大学C语言程序设计章节测试参考答案

国家开放大学C语言程序设计章节测试参考答案

国家开放大学《C语言程序设计》章节测试参考答案第一章C语言概述自测练习一:C语言字符集自测练习1.在C语言字符集中,包含有全部26个英文大写字母和对应的小写字母。

(√)2.在C语言字符集中,一个大写英文字母和它的小写英文字母被视为不同的字符。

(√)3.在C语言程序中,ABC和abc被作为同一标识符使用。

(×)自测练习二:C语言字符集自测练习1.在C语言中,保留字是有专门含义和作用的,不能作为一般标识符使用。

(√)2.在C语言中,作为标识符的第一个字符只能是英文字母或下划线,不能是数字字符。

(√)3.C语言中使用的字符常量,其起止标记符是()。

a. 双引号b. 尖括号c. 单引号d. 中括号4.C语言中使用的字符串常量,其起止标记符是()。

a. 双引号b. 中括号c. 尖括号d. 单引号自测练习三:C语句分类自测练习1.在C语言中,一条简单语句的结束符是()。

a. 分号b. 空格c. 冒号d. 逗号2.在C语言中,每条复合语句的开始标记字符为()。

a. <b. [c. (d. {3.不符合C语言规定的复合语句是()。

a. {x=0;}b. {}c. {;}d. {y=10}4.C语言中的选择类语句有两条,它们是()。

a. else和caseb. if和switchc. if和elsed. switch和case自测练习四:函数分类与使用自测练习1.在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为()。

a. nameb. mainc. MAINd. function2.C语言程序中的基本功能模块为()。

a. 标识符b. 函数c. 表达式d. 语句3.一个函数定义所包含的两个部分是()。

a. 函数头和函数体b. 函数原型和函数体c. 函数名和参数表d. 函数头和函数尾4.一个程序文件开始使用的每条预处理命令,其首字符必须是()。

a. #b. @c. %d. $5.在一个程序文件中,若要使用#include命令包含一个系统头文件,则此头文件所使用的起止定界符为一对()。

(完整版)《C语言程序设计》课后习题答案(第四版)谭浩强

(完整版)《C语言程序设计》课后习题答案(第四版)谭浩强

第1章程序设计和C语言11.1什么是计算机程序11.2什么是计算机语言11.3C语言的发展及其特点31。

4最简单的C语言程序51.4。

1最简单的C语言程序举例61.4.2C语言程序的结构101.5运行C程序的步骤和方法121.6程序设计的任务141—5 #include 〈stdio.h〉int main ( ){printf (”**************************\n\n"); printf(" Very Good!\n\n");p rintf (”**************************\n");return 0;}1—6#include 〈stdio.h〉int main(){int a,b,c,max;printf("please input a,b,c:\n”);scanf(”%d,%d,%d”,&a,&b,&c);max=a;if (max〈b)max=b;if (max〈c)max=c;printf(”The largest number is %d\n”,max);return 0;}第2章算法——程序的灵魂162.1什么是算法162.2简单的算法举例172。

3算法的特性212。

4怎样表示一个算法222。

4。

1用自然语言表示算法222。

4。

2用流程图表示算法222。

4。

3三种基本结构和改进的流程图262。

4.4用N S流程图表示算法282。

4.5用伪代码表示算法312。

4.6用计算机语言表示算法322.5结构化程序设计方法34习题36第章最简单的C程序设计——顺序程序设计373。

1顺序程序设计举例373.2数据的表现形式及其运算393.2。

1常量和变量393.2.2数据类型423.2.3整型数据443。

2。

4字符型数据473。

2.5浮点型数据493。

2。

6怎样确定常量的类型513。

2.7运算符和表达式523。

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 <stdio.h>void main(){printf("**************************\n");printf(" Yangtze University\n");printf("**************************\n");}4X-1 (X ≤1) 5(X-1)+6 (1<X<5) 6-3X (X ≥5)习题二一、选择题1~10: B C D C D D B C A A11~20: D A C D B D B A C D二、填空题1.字母 L 或字母 l2. %c(或字符) 、 %d(或整数)3.在程序运行过程中,其值可以在一定的范围内变化的量4.'\0'5.小数形式、指数形式6.关键字、预定义标识符、用户标识符7.字母、数字、下划线、数字8. 189. 2 、 1 、 3010.双精度实数或double11.赋值、逗号、 20 、 20 、 20 、 412. 4 、 4习题三一、选择题1~10: B C C B C C C D C C注:第4题答案D为: 10 22↙33↙二、填空题1. printf 、 scanf2. h3."%5d"4.'\0'5. e 、 E6. 67. s 、 c8. *9. - 、 +10. i三、编程题1. 编写程序,从键盘输入一个以秒为单位的时间数,将其换算成几小时几分几秒,然后进行输出。

c语言程序设计(第3版)的习题答案

c语言程序设计(第3版)的习题答案

c语言程序设计(第3版)的习题答案c语言程序设计(第3版)的习题答案本文为《c语言程序设计(第3版)》中的习题答案汇总,旨在帮助读者更好地理解和掌握该教材。

以下是各章节习题的详细解答:第1章:计算机概述习题1:答案:计算机是一种能够接受输入数据、对其进行逻辑和算术运算,并产生输出结果的电子设备。

习题2:答案:计算机主要由中央处理器(CPU)、主存储器、输入设备和输出设备四个主要部分组成。

......第2章:c语言概述习题1:答案:C语言是一种通用的高级编程语言,由贝尔实验室的Dennis Ritchie于1972年开发。

习题2:答案:C语言的特点包括高效性、可移植性、灵活性和丰富的操作符与控制语句。

......第3章:数据类型、运算符和表达式习题1:答案:C语言中的基本数据类型包括int、float、double、char等。

习题2:答案:C语言中的运算符包括算术运算符、关系运算符、逻辑运算符等。

......第4章:程序控制结构习题1:答案:C语言中的程序控制结构主要包括顺序结构、选择结构和循环结构。

习题2:答案:顺序结构是指程序按照语句的顺序依次执行,没有分支和循环。

......第5章:函数习题1:答案:C语言中的函数由函数头和函数体组成。

习题2:答案:函数的定义包括函数名、返回类型、参数列表和函数体。

......第6章:数组和字符串习题1:答案:数组是一组相同类型的数据元素的集合。

习题2:答案:C语言中的字符串是以空字符'\0'结尾的字符数组。

......第7章:指针习题1:答案:指针是用来存储另一个变量的地址的变量。

习题2:答案:指针变量可以通过取地址运算符(&)获取普通变量的地址。

......第8章:结构和共用体习题1:答案:结构是由不同数据类型的成员组成的复合类型。

习题2:答案:共用体(union)是一种特殊的数据类型,它可以存储不同类型的数据,但在同一时间只能存储其中的一种。

C语言程序设计》课后习题详细答案

C语言程序设计》课后习题详细答案
(2)在同一行上的/ * main function * /显然是注释;C语言规定:注释由/*开头,由*/结束,但在*号和/之间不得插入任何空格,而在此处“/ *”和“* /”之间存在空格,因此,/ * main function * /的写法是错误的,而应写成:/* main function */。
printf(″(1) a=%d,b=%d,c=%d\n″,a,b ,c);
t=c; c=b; b=a; a=t;
printf(″(2) a=%d,b=%d,c=%d\n″,a,b,c);
}
第四章选择结构习题分析与解答
一、选择题
4.1【参考答案】A)
4.2【参考答案】A)
4.3【参考答案】A)
4.4【参考答案】D)
(6)设计输出语句。输出a、b、c和ave。
(7)把以上内容放在主函数的一对花括号中。
(8)编写程序如下:
main()
{ double a,b,c,ave;
printf(″Enter a ,b ,c :″);
scanf(″%lf%lf%lf″, &a, &b, &c );
ave=(a+b+c)/3;
2.15【参考答案】[1]4.2[2]4.2
2.16【参考答案】[1]{[2]}[3]定义[4]执行
2.17【参考答案】[1]关键字[2]用户标识符
2.18【参考答案】[1]int[2]float[3]double
2.19【参考答案】float a1=1.0, a2=1.0;
或float a1=1, a2=1;(系统将自动把1转换为1.0)
3.27【参考答案】x=127, x=127 , x=$127 ,x=$000127, x=%06d

C语言程序设计课后习题答案谭浩强精编WORD版

C语言程序设计课后习题答案谭浩强精编WORD版

C语言程序设计课后习题答案谭浩强精编W O R D版IBM system office room 【A0816H-A0912AAAHH-GX8Q8-GNTHHJ8】第1章程序设计和C语言11.1什么是计算机程序11.2什么是计算机语言11.3C语言的发展及其特点31.4最简单的C语言程序51.4.1最简单的C语言程序举例61.4.2C语言程序的结构101.5运行C程序的步骤与方法121.6程序设计的任务141-5 #include <stdio.h>int main ( ){ printf ("**************************\n\n"); printf(" Very Good!\n\n");printf ("**************************\n"); return 0;}1-6#include <stdio.h>int main(){int a,b,c,max;printf("please input a,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if (max<b)max=b;if (max<c)max=c;printf("The largest number is %d\n",max); return 0;}第2章算法——程序的灵魂162.1什么是算法162.2简单的算法举例172.3算法的特性212.4怎样表示一个算法222.4.1用自然语言表示算法222.4.2用流程图表示算法222.4.3三种基本结构和改进的流程图262.4.4用N S流程图表示算法282.4.5用伪代码表示算法312.4.6用计算机语言表示算法322.5结构化程序设计方法34习题36第章最简单的C程序设计——顺序程序设计37 3.1顺序程序设计举例373.2数据的表现形式及其运算393.2.1常量和变量393.2.2数据类型423.2.3整型数据443.2.4字符型数据473.2.5浮点型数据493.2.6怎样确定常量的类型513.2.7运算符和表达式523.3C语句573.3.1C语句的作用和分类573.3.2最基本的语句——赋值语句59 3.4数据的输入输出653.4.1输入输出举例653.4.2有关数据输入输出的概念67 3.4.3用printf函数输出数据683.4.4用scanf函数输入数据753.4.5字符数据的输入输出78习题823-1 #include <stdio.h>#include <math.h>int main(){float p,r,n;r=0.1;n=10;p=pow(1+r,n);printf("p=%f\n",p);return 0;}3-2-1#include <stdio.h>#include <math.h>int main(){float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;p1=p*((1+r5)*5); // 一次存5年期p2=p*(1+2*r2)*(1+3*r3); // 先存2年期,到期后将本息再存3年期p3=p*(1+3*r3)*(1+2*r2); // 先存3年期,到期后将本息再存2年期p4=p*pow(1+r1,5); // 存1年期,到期后将本息存再存1年期,连续存5次p5=p*pow(1+r0/4,4*5); // 存活期存款。

《C语言程序设计》习题及解答1-4章

《C语言程序设计》习题及解答1-4章
}
参考答案
一、选择题(1)B
(2)C
(3)C
(4)B
(5)B
(6)D
(7)D
(8)C
(9)C
(10)D
(11)B
(12)D
(13)D
(14)C
(15)A
二、填空题【1】2
【5】32767
【2】-2
【6】6.000000
【3】scanf
【7】49
【4】printf
第三章习题
一、单项选择题
1.下面不属于C语言的数据类型是【】。
int x=-32769;
printf("%d",x);
4.执行下列程序的输出结果是【6】。
main( )
{
float a=1,b;
b=++a*++a;
printf("%f\\n",b);
}
5.执行下列程序的输出结果是【7】。
main( )
{
int x=5,y;
y=++x*++x;
printf("y=%d\\n",y);
本题正确答案为B。
二、填空题
1.若以下程序的输出结果是13,请填空。
main( )
{ int x=016;
printf("%d\\n",【1】); }
分析:在C语言中以0开头的数字是八进制数,016相当于十进制数14,执行printf语句时,输出项应为x的值减1。
本题正确答案为【1】--x或x-=1。
A)整型
B)实型
C)逻辑型
D)双精度实型
分析:和其它高级语言相比,C语言中没有逻辑型数据,也没有逻辑型变量。

《C语言程序设计(第五版)》习题答案

《C语言程序设计(第五版)》习题答案

《C语⾔程序设计(第五版)》习题答案各章习题参考答案第1章习题参考答案1. 简述C程序的结构特点。

答:(1) ⼀个C语⾔源程序由⼀个或多个源⽂件组成。

每个源⽂件由⼀个或多个函数构成,其中有且仅有⼀个主函数(main函数)。

(2) ⼀个函数由函数⾸部(即函数的第⼀⾏)和函数体(即函数⾸部下⾯的⼤括号内的部分)组成。

函数⾸部包括函数类型、函数名和放在圆括号内的若⼲个参数。

函数体由声明部分和执⾏部分组成。

(3) C程序书写格式⾃由,⼀⾏内可以写多条语句,⼀个语句也可以分写在多⾏中,每个语句必须以分号结尾。

(4)程序的注释内容放在“/*”和“*/之”间,在‘/’和‘*’之间不允许有空格;注释部分允许出现在程序中的任何位置处。

2. 分析例1.3程序的结构。

答:下⾯是例1.3的程序,它的结构是:有且只有⼀个主函数main以及若⼲个其它函数,还有⼀个被主函数调⽤的sumab函数。

函数有⾸部,包括类型和名称,⾸部下的⼤括号中有变量定义、输⼊、计算和输出等语句。

#includeint sumab (int x, int y); /*函数声明*/int main () /*主函数*/{ int a,b,sum; /*定义变量*/printf("请输⼊变量a与b的值:"); /*提⽰信息*/scanf ("%d %d", &a, &b); /*输⼊变量a和b的值*/sum=sumab(a,b); /*调⽤sumab函数*/printf("a与b的和等于%d", sum);/*输出sum的值*/return 0;}int sumab (int x, int y) /*定义sumab函数,并定义形参x、y */{ int z;z=x+y;return z;}3. 分别编写完成如下任务的程序,然后上机编译、连接并运⾏。

(1) 输出两⾏字符,第1⾏是“The computer is our good friends!”,第2⾏是“We learnC language.”。

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

第1章C语言程序设计概述1.1一个C程序的执行是从 A 。

A.从main()函数开始,直到main()函数结束B.第一个函数开始,直到最后一个函数结束C.第一个语句开始,直到最后一个语句结束D.main()函数开始,直到最后一个函数结束1.2在C程序中,main()的位置 C 。

A.必须作为第一个函数B.必须作为最后一个函数C.可以任意D.必须放在它所调用的函数之后1.3C语言源程序的基本单位是 B 。

A.过程 B.函数 C.子程序 D.标识符1.4一个C源程序有且仅有一个一个函数和__零个或多个_____个其他函数。

1.5C语言源程序的语句分隔符是__分号___。

1.6C语言开发的四个步骤是_编辑源程序→对源程序进行编译→与库函数连接→运行目标程序__ 。

1.7C语言有哪些主要特点?C主要特点有:1.C语言简洁、紧凑,使用方便、灵活;2.运算符丰富;3.数据类型丰富;4.C语言是结构化语言;5.语法限制不太严格,程序设计自由度大;6.可直接与机器硬件打交道,直接访问内存地址;7.生成的目标代码质量高,程序执行效率高;8.C语言适用范围广,可移植性好。

1.8简述C编译和运行的基本方法。

略。

1.9常用的集成开发工具有哪些?各有什么特点?略。

1.10编写一个程序,在屏幕上输出以下内容:**************************** You are welcome! ****************************#include<stdio.h>void main( ) /*主函数 */{ /*函数体开始*/printf ("***************************\n"); /*输出语句*/printf ("* You are welcome! *\n");printf ("***************************\n");}1.11 编写一个C程序,输入a、b、c 3个值,输出其中最大者。

#include<stdio.h>void main( ) /* 主函数*/{float max(float x,float y); /* 对被调用函数max的声明 */float a,b,c,d,result; /*声明实型变量a、b、c */printf("a,b,c="); /*输出提示信息a,b,c= */scanf("%f%f%f",&a,&b,&c); /*输入变量a,b和c的值*/d=max(a,b); /*调用max函数,将得到的返回值赋给d */result=max(c,d); /*调用max函数,将得到的返回值赋给result */ printf("max=%f\n",result); /*输出result的值*/}float max(float x,float y) /* 定义max函数,函数值为实型,形式参数x,y为实型*/ {float z; /* max函数中的声明部分,声明本函数中用到的变量z为实型*/if(x>y)z=x; /*如果x>y ,则将x 值赋给z */elsez=y; /*否则将y 值赋给z */return (z); /*将z的值返回给主调用函数*/}第2章数据类型,运算符和表达式2.1以下标识符中不属于C语言的基本数据类型的是 C 。

A.charB.longC.boolD.float2.2以下选项中属于C语言的数据类型是 C 。

A.复数型B.逻辑型C.双精度型D.集合型2.3下列标识符中,合法的标识符是 C 。

A.-abc1B.1abcC._abc1D.for2.4在标准C语言中,不正确的int类型的常数是 A 。

A.32768B.0C.037D.0xAF2.5以下所列的C语言常量中,错误的是 B 。

A.0xFFB.1.2e0.5C.2LD.'\72'2.6在C语言中,合法的长整型常数是 B 。

A.0LB.C.&D.216D2.7以下不正确的语句(设有int p,q)是 D 。

A.p*=3; B.p/=q; C.p+=3; D.p&&=q;2.8以下使i的运算结果为4的表达式是 D 。

A.int i=0,j=0; (i=3,(j++)+i); B. int i=1,j=0; j=i=((i=3)*2);C. int i=0,j=1; (j==1)? (i=1): (i=3);D. int i=1,j=1; i+=j+=2;2.9设n=10,i=4,则赋值运算n%=i+1执行后,n的值是 A 。

A.0B.3C.2D.12.10逗号表达式(a=3*5,a*4),a+15的值为 C ,a的值是 C 。

①A.15 B.60 C.30 D.不确定②A.60 B.30 C.15 D.902.10如果a=1,b=2,c=3,d=4,则条件表达式a>b?a:c>d?c:d的值为 D 。

A.1B.2C.3D.42.12 在C语言中,不同类型数据混合运算时,要先转换成同一类型后进行运算。

设一表达式中包含有int,long,unsigned和char类型的变量和数据,则表达式最后的运算结果是D 类型的数据。

这四种类型数据的转换规律是 C 。

①A.int B.char C.unsigned D.long②A.int->unsigned->long->charB.char->int->long->unsignedC.char->int->unsigned->longD.char->unsigned->long->int2.13 写出经过下列运算后变量a的值,设a的初值为15:(1) a+=a; (2) a-=2;(3) a*=2+3; (4) a/=a+a;(5) a%=(5%=2) (6) a+=a-=a*=a(1) 30 (2) 13 (3) 75 (4) 0 (5) 0 (6) 02.14 假定x=10,y=20,z=30;试判断下列逻辑表达式的真(1)假(0)。

(1) x<10||x>10 (2) (x<y+z)&&(x+10<=20)(3) x<10 && x>10 (4) x>y || y>x(5) !(x<y+z)||!(x+10<=20) (6) (!(x==y))&&(x!=y)&&(x<y||y<x)(1) 0 (2) 1 (3) 0 (4) 1 (5) 0 (6) 12.15 C有哪些基本数据类型?简述各类型所占的字节数。

略(见课本表2-2)。

2.16 字符常量与字符串常量有什么区别?由于字符数据在内存中是以ASCII码存储,它的存储形式与整数的存储形式类似。

一个字符常量在计算机的存储中占据一个字节。

字符串常量在内存中按顺序逐个存储字符串中的字符的ASCII码,并在最后自动加上一个字符’\0’(空字符,该字符的ASCII码值为0,也称NULL字符),作为字符串结束标志,所以字符串实际占用字节数要比字符串中字符的个数(长度)多1个。

2.17 什么是表达式?什么变量?变量名和变量值有什么本质区别?表达式是由运算符、常量、变量、函数、圆括号等按一定的规则组成的式子。

每一个表达式也都具有一定的值。

变量是以某标识符为名字(变量名),在程序运行过程中,其值是可以改变的量。

变量名实际上是代表一个内存的存储地址,在对程序编译连接时由编译系统给每一个变量名分配对应的内存地址。

变量的存取操作,实际上是通过变量名找到相应的内存地址,从该存储单元中存取数据。

第3章顺序结构3.1有如下程序段:int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);若要求a1,a2,c1,c2的值分别为10,20,a,b正确的数据输入是 A 。

A.10a 20b↙B.10 a 20 b↙C.10 a20b↙D.10a20 b↙3.2有如下程序,输入数据:12345 678↙后,x的值是 B ,y的值是 A 。

#include<stdio.h>void main(){int x;float y;scanf("%3d%f",&x,&y);}(1) A.12345 B.123 C.45 D.345(2) A.45. B.45678. C.678. D.123.0003.3请写出下面程序的运行结果:#include<stdio.h>void main(){short int a=65,b=100;float x=123.4567, y=-100.3388;char c='a';long n=;unsigned u=65535;printf("%c,%c\n",a,b);printf("%6d,%6d\n",a,b);printf("%f,%f\n",x,y);printf("%-8.2f, %8.2f,%.4f,%.4f,%3f,%3f\n",x,y,x,y,x,y);printf("%e,%10.2E\n",x,y);printf("%c,%d,%o,%x\n",c,c,c,c);printf("%ld,%lo,%x\n",n,n,n);printf("%u,%o,%x,%d\n",u,u,u,u);}运行结果:A,d65, 100123.,-100.123.46 , -100.34,123.4567,-100.3388,123.,-100.1.e+002,-1.00E+002a,97,141,61,,12d68765535,,ffff,65535Press any key to continue3.4顺序结构有哪些主要特点?顺序结构就是按照语句书写的先后顺序依次执行,具有“单入口和单出口”的控制特点。

3.5顺序结构语句可以分为哪几类?简单顺序语句主要有表达式语句、空语句、复合语句等。

3.6编程输入两个整数,输出它们的平方和它们的平方根。

#include<stdio.h>#include<math.h>void main(){int a,b;scanf("%d,%d",&a,&b);if(a>=0&&b>=0){printf("a^2=%d,b^2=%d\n",a*a,b*b);printf("a^1/2=%f,b^1/2=%f\n",sqrt(a),sqrt(b));}}3.7编程输入三角形的三边长,计算并输出三角形面积和周长。

相关文档
最新文档