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

合集下载

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语言程序设计教程答案

提示:printf("%s",x>60?"pass":"fail"); 3.17 输入一个年份 y,如果是闰年,输出“y is a leap
year”,否则输出“y is not a leap year.” 提示:printf("%d is
%s",y%4==0&&y%100!=0||y%400==0?"a leap year.":"not a leap year.");
2.6 变量的具有哪三种属性? 二、单项选择题
2.7 C 语言中,int 型数据在内存中的存储形式是 (D)。
A)ASCII 码 B)原码 C)反码 D)补码 2.8 下面四个选项中,均是不合法的用户标识符的选
项是(C)。 A)BA 、x_0、do B)float、1a0、_Y C)x-y、goto、123 D)_123、tmp、CHAR 2.9 下列选项中不正确的常数的选项是(D)。 A)0x12F B)-1.23E-2 C)12.0 D)0388 2.10 下面正确的字符常量是(B)。 A)"a" B)'\\' C)"\n" D)"\376"
sum=sum+c-'0'; 4.9 编程实现,求 的值。 提示:先计算 n!,再在计算阶乘的外面套上一层循环。 注意:20!是一个很大的值,float s=1;int i;例如:计
算 6!: for(i=1;i<=6;i++) s=s*i; 4.10 编程实现,找出 1000 之内的所有完数,并按下 面格式输出其因子:
应的百分制成绩段。 A: 90-100 B: 80-89 C: 70-79 D: 60-69 E: <60

c语言程序设计教程习题答案

c语言程序设计教程习题答案

c语言程序设计教程习题答案C语言程序设计教程习题答案C语言是一门广泛应用于计算机科学领域的编程语言,它的学习对于想要从事软件开发或计算机科学研究的人来说是非常重要的。

在学习C语言的过程中,练习编写程序是必不可少的一部分。

本文将为大家提供一些C语言程序设计教程中常见习题的答案,希望能对大家的学习有所帮助。

1. 编写一个程序,计算并输出两个整数的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数的和为:%d\n", sum);return 0;}```2. 编写一个程序,判断一个整数是否为正数、负数或零。

```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num > 0) {printf("这是一个正数。

\n");} else if (num < 0) {printf("这是一个负数。

\n");} else {printf("这是零。

\n");}return 0;}```3. 编写一个程序,判断一个年份是否为闰年。

```c#include <stdio.h>int main() {int year;printf("请输入一个年份:");scanf("%d", &year);if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { printf("%d年是闰年。

C语言程序设计基础教程_习题答案

C语言程序设计基础教程_习题答案

习题答案第1章1.1 填空题1.1.1 应用程序ONEFUNC.C中只有一个函数,这个函数的名称是__main 。

1.1.2 一个函数由__函数头__和__函数体__两部分组成。

1.1.3 在C语言中,输入操作是由库函数__scanf 完成的,输出操作是由库函数_printf_完成的。

1.1.4 通过文字编辑建立的源程序文件的扩展名是_.c__;编译后生成目标程序文件,扩展名是__.obj__;连接后生成可执行程序文件,扩展名是_.exe_;运行得到结果。

1.1.5 C语言程序的基本单位或者模块是__函数__。

1.1.6 C语言程序的语句结束符是_;___。

1.1.7 编写一个C程序,上机运行要经过的步骤:______________________________。

1.1.8 在一个C语言源程序中,注释部分两侧的分界符分别为_/*__和__*/__。

1.1.9 C语言中的标识符只能由三种字符组成,它们是字母、数字和下划线。

且第一个字符必须为字母或下划线。

1.1.10 C语言中的标识符可分为关键字、预定义标识符和用户标识符3类。

1.2 选择题1.2.1 一个C程序的执行是从( A )。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束1.2.2 以下叙述不正确的是(C)。

A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C) 在C程序中,注释说明只能位于一条语句的后面D) C程序的基本组成单位是函数1.2.3 C语言规定:在一个源程序中,main函数的位置( C )。

A)必须在程序的开头B)必须在系统调用的库函数的后面C)可以在程序的任意位置D)必须在程序的最后1.2.4 C编译程序是(A)。

A)将C源程序编译成目标程序的程序B)一组机器语言指令C) 将C源程序编译成应用软件D) C程序的机器语言版本1.2.5 要把高级语言编写的源程序转换为目标程序,需要使用(D)。

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

C语言程序设计教程 课后习题参考答案
}
else if( carType == 2 ) //富康
{
if( distance < 3 )
totalMoney = 8.0;
else
totalMoney = 8 + fukang * (distance – 3);
}
else if( carType == 3 ) //富康
{
if( distance < 3 )
(3) 7BAB4BAB1BC
(4) ABABABC
(5) ******
******
******
******
4.
(1) a != b
(2) n / 10
(3) scanf(“%d”, &a);
5.(3)行int fac = 1, sum = 0;
6.
(1)
#include <stdio.h>
main( )
r = 2.5;
h = 3.5;
v = 3.14*r*r*h;
printf(“v=%lf\n”, v);
}
(2)
#include <stdio.h>
main( )
{
char ch;
ch = getchar( );
printf(“%c\n”, ch + 32);
}
(3)
#include <stdio.h>
scanf("%d", &carType);
printf("请输入您乘车的总路程:");
scanf("%lf", &distance);
if( carType == 1)//夏利

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语言程序设计基础教程课后习题答案(清华大学出版社于延编)自己做欢迎校正
flag=0; } if(x>1) printf("%d \n",x); } int main() { int n; scanf("%d",&n); f(n); system("pause");} 7.输入一个正整数,输出其所有正真约数,写出 算法。 #include<stdio.h> #include<stdlib.h> void yueshu(int num) {
四、编程题 1.从键盘上输入 5 个整数, 输出最大值(要求至少用 两种方法编程)。 ① #include<stdio.h> #include<stdlib.h> int max(int *a){ int b,i; b=a[0]; for(i=1;i<5;i++) if(b<a[i]) b=a[i]; return b; } int main(){ int i,a[5]; for(i=0;i<5;i++) scanf("%d",&a[i]); printf("最大值为:%d\n",max(a)); system("pause"); }
flag=1; n+=i; //将约数累加到 n 中 } } return n; //是这个数本身时返回值为 n } int main() { int m; scanf("%d",&m); printf("真约数之和=%d\n",f(m)); system("pause");}
4.设计算法求出 10000 以内所有孪生素数对。
if(i==j) printf("%5d",i);

《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等),用来表示带小数部分的实数值。

浮点型数据可以表示较大或较小的数值,并具有一定的精度。

2.3 字符型数据类型答案:C语言提供了字符型数据类型(char),用来表示单个字符。

字符型数据可以用于表示各种字符(包括字母、数字、符号等)。

2.4 布尔型数据类型答案:C语言不直接支持布尔型数据类型,但可以使用整型数据类型来表示布尔值(0表示假、非零表示真)。

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语言程序设计教程》课后题答案第一章一选择题1.A2.B3.C4.D5.B6.C二.填空题1.程序2.算法3.main或主4.编译5.编译6. .obj7.库函数8.文本或ASCII码第二章一选择题1.B2.A3.A4.A5.D6.B7.C8.C9.D 10.B 11.A 12.C 13.B 14.C二.填空题1.int float double2.65,893.a=98,b=765.000000,c=4321.0000004.scanf("%lf%lf%lf",&a,&b,&c);第三章一选择题1.A2.C3.C4.D5.C6.B7.C8.B9.A 10.A 11.A 12.B 13.D 14.A 15.B 16.C 17.C 18.C 19.C 20.C 21.C 22.B 23.C 24.C 25.A 26.B 27.A 28.A29.C 30.A 31.C 32.C二.填空题1.非零零2.passwarm3.5252524.fabs(x)>55.x%y==06.if((1<=x&&x<=10||200<=x&&x<=210)&&x%2==1)printf("%d",x);7.k=18.Right!1Right!19.$$$ a=010.a=2,b=111.0<a<b12. t;"%f%f"a=b;13. "%c",&ch'A'<=ch&&ch<='Z'ch14.死循环15.34516. 7 3 -117.x>=0x<amin18.scanf("%f",&x);sum+=x;19.820.1121. 2.40000022.892123.i<=9j%3!=024. b=i+125. 8 5 226. d=1.0k++k<=n第四章一选择题1.A2.C3.D4.D5.B6.B7.B8.D9.B 10.A 11.C 12.D 13.C 14.A 15.D16.C 17.A 18.C 19.A 20.D 21.D 22.A二.填空题1. a=1234 b=52. Hello3.j<3; b[j][i]=a[i][j]; i<34. a[age]++i=18;i<=255.c[i]=n%base; b[d]6.break; i>=87. -850,2,08.a[i]>b[j] i<3 j<59.a[i][j] j=0;j<4;j++ j==3 printf("\n");10.fi11.GDABC12. s[i++]13.ahAMa14.LBLMNP15. '\0' i++16.b[j]=a[j][0]; b[j]=a[j][k]17.a[k++]=a[j]第五章一.选择题1-5 DDBCB 6-10 BACAA 11-15DBBCD二.填空题1. How does she2. *(p+i*4+j)printf("\n")3. *(++p)4. num+1q<num+10*q>max*q<min5.0或'\0'n++b[n]= '\0'第六章一.选择题1-5 CBCDA 6-10 AADBB 11-15BBDBD 16-20 AABAA 二.填空题1. 四auto, register, static, extern2. 5 63. 8,174. 126241205.return 1return n+sum(n-1)第七章一.选择题1-5BDDCC 6-10 BBDCB 11-15BBDCB 16-18 DBB 二.填空题1.3042. ARRAY a,b,c;3. 234. ac5.p->name&p->post_codestruct communication *p->post_code第八章一.单选题1-5 BABAD 6-10 DDDCD 11 D 二.填空题1. 二进制文本2. pf=fopen("D:\\zk04\\data\\txfile.dat","w")3. 二进制文本文件结束符非0值第九章1.(1)30 (2)3 (3)9 (4)292.(1)1 (2)1 (3)1 (4)7 (5)15 (6)6第十一章一.单选题1-5 CBBDD 6 D二.填空题1.struct link *next;2.①struct student *②tail->next③head3.Answer:34.①break②(struct data *)malloc(struct data)③while(1)④p!=NULL⑤p=p->link5.①x②p③s。

《C语言程序设计基础》教材参考答案-20140211

《C语言程序设计基础》教材参考答案-20140211

《C语言程序设计基础》教材参考答案包括各单元:一.随堂练习二.单元总结三.单元练习四.实训指导单元一程序设计宏观认识一.随堂练习【随堂练习1-1】1.根据上述示例模仿编程,输入正方形的边长,计算其面积。

#include <stdio.h>void main( ){ int a,s; //数据准备,边长a,面积sprintf("请输入正方形的边长:");scanf("%d",&a); //数据输入s=a*a; //数据计算printf("该正方形的面积为:%d.\n",s);}【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例1.2】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。

答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例1.2】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。

答:函数首部:void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为int a,b,c;,其余为可执行语句。

【随堂练习1-3】1.在VC++6.0环境中完成【例1.2】程序开发过程。

(略)2.查阅【例1.2】所对应的工程文件夹,了解相关文件的含义。

工程文件夹中:.CPP:用C/C++语言编写的源代码文件。

.DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。

项目文件,文本格式。

.DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpace中。

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

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

z习题解答目录1.2 习题解答 (3)1.2.1 选择题 (3)1.2.2 填空题 (3)1.2.3 编程题 (4)2.2 习题解答 (5)2.2.1 选择题 (5)2.2.2 填空题 (7)2.2.3 编程题 (8)3.2 习题解答 (11)3.2.1 选择题 (11)3.2.2 填空题 (12)3.2.3 编程题 (12)4.2 习题解答 (15)4.2.1 选择题 (15)4.2.2 填空题 (17)4.2.3 编程题 (18)5.2 习题解答 (29)5.2.1 选择题 (29)5.2.2 填空题 (31)5.2.3 编程题 (33)6.2 习题解答 (37)6.2.1 选择题 (37)6.2.2 填空题 (41)6.2.3 编程题 (43)7.2 习题解答 (67)7.2.1 选择题 (67)7.2.2 填空题 (68)7.2.3 编程题 (68)21.2 习题解答1.2.1 选择题1、B【分析】在一个C程序中必须有且只能有一个main函数,而且main函数可以在任何地方出现.2、C【分析】C 语言中合法以的标识符组成为:字母,数字,下划线,且数字不能打头,亦不能为关键字。

A中,-sub 不合法。

B 中4d不合法。

D 中void 为关键字。

3、【分析】4、C【分析】转义字符中,第一个\”输出“,第二\\输出\,第三个\b退格,把前一个\去掉了,第四个\’输出’,第五个\t跳格,第六个\”输出”,第七个\n输出换行。

5、C【分析】本题将10进制17,分别按8、16进制输出。

8的进制21=2*8+1*1=17(10, 16制11=1*16+1*1=17(10)1.2.2 填空题1、主【分析】一个C源程序中至少包括一个主函数,其他函数没有限制。

2、双引号。

【分析】两种写法都是允许的,使用尖括号表示在包含文件目录中去查找(包含目录是由用户在设置环境时设置的),而不在源文件目录去查找.使用双引号则表示首先在当前的源文件目录中查找,若未找到才到包含目录中去查找。

c c 程序设计教程课后习题答案

c c 程序设计教程课后习题答案

c c 程序设计教程课后习题答案C语言程序设计教程课后习题答案详解在学习C语言程序设计过程中,课后习题是加深对知识点理解和巩固编程能力的重要练习。

下面,我将为您提供一个500字的C语言程序设计教程课后习题答案详解。

1. 编写一个程序,输入一个正整数n,判断其是否为素数。

解答:#include <stdio.h>int main() {int n, i, flag = 0;printf("请输入一个正整数:");scanf("%d", &n);for (i = 2; i <= n / 2; i++) {if (n % i == 0) {flag = 1;break;}}if (flag == 0) {printf("%d是素数\n", n);} else {printf("%d不是素数\n", n);}return 0;}2. 编写一个程序,统计输入的一个字符串中的字母、数字和其他字符的个数。

解答:#include <stdio.h>int main() {char str[100];int i, letterCount = 0, digitCount = 0, otherCount = 0;printf("请输入一个字符串:");gets(str);for (i = 0; str[i] != '\0'; i++) {if ((str[i] >= 'a' && str[i] <= 'z') ||(str[i] >= 'A' && str[i] <= 'Z')) {letterCount++;} else if (str[i] >= '0' && str[i] <= '9') {digitCount++;} else {otherCount++;}}printf("字母个数:%d\n", letterCount);printf("数字个数:%d\n", digitCount);printf("其他字符个数:%d\n", otherCount);return 0;}3. 编写一个程序,求解1到100之间所有能被3和7整除的数的和。

(word完整版)C语言程序设计课后习题1-8参考答案

(word完整版)C语言程序设计课后习题1-8参考答案

C语言程序设计课后习题1—8参考答案习题1参考答案一、简答题1、冯诺依曼计算机模型有哪几个基本组成部分?各部分的主要功能是什么?答:冯诺依曼计算机模型是由运算器、控制器、存储器、输入设备、输出设备五大功能部件组成的。

运算器又称算术逻辑部件,简称ALU,是计算机用来进行数据运算的部件。

数据运算包括算术运算和逻辑运算。

控制器是计算机的指挥系统,计算机就是在控制器的控制下有条不紊地协调工作的.存储器是计算机中具有记忆能力的部件,用来存放程序和数据.输入设备是用来输入程序和数据的部件。

输出设备正好与输入设备相反,是用来输出结果的部件。

2、简述计算机的工作原理。

答:计算机的工作原理可简单地概括为:各种各样的信息,通过输入设备,进入计算机的存储器,然后送到运算器,运算完毕把结果送到存储器存储,最后通过输出设备显示出来。

整个过程由控制器进行控制。

3、计算机软件系统分为哪几类?答:软件内容丰富,种类繁多,通常根据软件用途将其分为两大类:系统软件和应用软件。

系统软件是指管理、监控、维护计算机正常工作和供用户操作使用计算机的软件。

这类软件一般与具体应用无关,是在系统一级上提供的服务。

系统软件主要包括以下两类:一类是面向计算机本身的软件,如操作系统、诊断程序等。

另一类是面向用户的软件,如各种语言处理程序(像BC、VC等)、实用程序、字处理程序等。

在操作系统的基础上运行。

4、什么叫软件?说明软件与硬件之间的相互关系。

答:软件是指计算机程序及有关程序的技术文档资料。

两者中更为重要的是程序,它是计算机进行数据处理的指令集,也是计算机正常工作最重要的因素。

在不太严格的情况下,认为程序就是软件。

硬件与软件是相互依存的,软件依赖于硬件的物质条件,而硬件则需在软件支配下才能有效地工作.在现代,软件技术变得越来越重要,有了软件,用户面对的将不再是物理计算机,而是一台抽象的逻辑计算机,人们可以不必了解计算机本身,可以采用更加方便、更加有效地手段使用计算机。

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

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

博学笃行自强不息
c语言程序设计课后习题答案
C语言程序设计课后习题答案
引言:
C语言是一种广泛应用于程序设计和系统开发的高级计算机语言。

掌握C语言的编程技巧对于学习计算机科学和软件工程至关重要。

在学习C语言的过程中,课后习题是一种很好的巩固知识和提高编程能力的方式。

本文将为读者提供一些C语言程序设计课后习题的答案,以帮助读者更好地理解和掌握C语言编程。

1. 编写一个程序,将输入的两个整数进行相加,并输出结果。

```c
#include <stdio.h>
int main() {
int num1, num2, sum;
printf(\
1。

《C语言程序设计基础》教材参考题答案_20140211

《C语言程序设计基础》教材参考题答案_20140211

《C语言程序设计基础》教材参考答案包括各单元:一.随堂练习二.单元总结三.单元练习四.实训指导单元一程序设计宏观认识一.随堂练习【随堂练习1-1】1.根据上述示例模仿编程,输入正方形的边长,计算其面积。

#include <stdio.h>ﻩﻩﻩﻩvoid main( )ﻩﻩﻩﻩﻩ{ int a,s;ﻩﻩﻩ//数据准备,边长a,面积sprintf("请输入正方形的边长:");scanf("%d",&a); ﻩﻩ//数据输入s=a*a; ﻩ//数据计算printf("该正方形的面积为:%d.\n",s);}【随堂练习1-2】1.下面哪些标识符属于合法的用户自定义标识符:Main、void、_num、my$、a*、N4、3m、a-2答:合法的用户自定义标识符是:Main、_num、N42.结合【例1.2】指出程序代码中所用到的标识符哪些是关键字,哪些是预定义标识符,哪些是用户自定义标识符。

答:关键字:void、int预定义标识符:include、main、printf、scanf用户自定义标识符:a、b、c3.分析【例1.2】中函数的结构,包括函数首部(函数返回值类型、函数名、形式参数)、函数体语句(说明语句、可执行语句)。

答:函数首部: void main( ),其中函数返回值类型为void、函数名为main、形式参数无;函数体语句:{}内的语句为函数体,其中:说明语句为inta,b,c;,其余为可执行语句。

【随堂练习1-3】1.在VC++6.0环境中完成【例1.2】程序开发过程。

(略)2.查阅【例1.2】所对应的工程文件夹,了解相关文件的含义。

工程文件夹中:.CPP:用C/C++语言编写的源代码文件。

.DSP:VC开发环境生成的工程文件,VC4及以前版本使用MAK文件来定义工程。

项目文件,文本格式。

.DSW:VC开发环境生成的WorkSpace文件,用来把多个工程组织到一个WorkSpa ce中。

程序设计基础(C语言)第3版习题及答案

程序设计基础(C语言)第3版习题及答案

第1章C语言概述【习题1-1】简述C语言的特点。

答:C语言的特点:C语言简洁、紧凑、使用灵活、方便;运算符丰富;数据结构丰富;C是结构式语言;C语法限制不太严格,程序设计自由度大;C语言允许直接访问物理地址;C语言程序生成代码质量高;C语言适用范围大,可移植性好。

【习题1-2】简述上机调试运行C程序的操作步骤。

答:上机运行C语言程序的操作步骤为:启动Visual C++ 6.0→建立工程→创建源程序文件→输入(编辑)源程序内容→保存源程序文件→编译源程序文件→连接目标程序→执行程序→开始另一个程序。

【习题1-3】上机运行本章的3个例题。

答:略。

【习题1-4】请从以下的4个选项中选择一个正确答案。

(1)A (2)A (3)C (4)B【习题1-5】参照本章例题,编写一个C语言程序,输出以下信息:**************Nice to meet you!**************编写程序如下:#include<stdio.h>void main(){printf("**************\n");printf("Nice to meet you!\n");printf("**************\n");}第2章基本数据类型和运算符【习题2-1】上机编辑并调试本章所有例题。

答:略。

【习题2-2】下面哪些是合法的常量?⑴20 0.5 012 13e5.1 E-5 8e4 5. 0x6a⑵'mn' "OK" "a" '\012' "a/b" '\\'答:⑴合法的常量有:20 0.5 012 8e4 5. 0x6a⑵合法的常量有: "OK" "a" '\012' "a/b" '\\'【习题2-3】下面的变量名中哪些是合法的?A&b abc123 abc% AbC a_b_cint _abc 123abc a\b?ca bc a*bc 'a'bc答:合法的变量名有:abc123 AbC a_b_c _abc【习题2-4】指出下面的变量定义哪些是正确的,哪些是不正确的,为什么?⑴Int i,j;⑵float a,b;⑶int a,b;float a,b;⑷float a,int b;⑸char 'a';答:⑴错误,因为关键字Int 应该全为小写字母⑵正确⑶错,因为同一变量在程序的同一处不应该声明为不同的数据类型 ⑷错,因为不同类型的变量要分别声明,其间应使用分号,而不是逗号 ⑸错,'a'表示字符常量,不能用作变量名 【习题2-5】把下列数学式子写成C 语言表达式。

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

C语言程序设计教程——课后习题答案
printf("%d / %d---> shang=%d,yushu=%d",x,y,temp2,x-y*temp2);
getch();
}
9、
#include<stdio.h>
void main()
{float x,y,m=0,n=0;
scanf("%f,%f",&x,&y);
n=(x-2)*(x-2);
3:(x<30&&x>20)||(x<-100)
4:***a=25,b=14,c=19***
5:37
6:if(a<=b) printf("1");
else printf("2");
7、
#include<stdio.h>
void main()
{char a,b,t1,t2;
scanf("%c,%c",&a,&b);
4、大小写字母在c语言中是有区别的。
5、除main函数和标准库函数以外,用户可以自己编写函数,程序一般由多个函数组成,这些函数制定实际所需要做的工作。
例如:
void main()
{
int a,b,c,s;
a=8;b=12;c=6;
s=a+b*c;
printf("s=%d\n",s);
}
3、c语言的特点:
}
10、void main()
{
int i,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");
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

z习题解答目录1.2 习题解答 (3)1.2.1 选择题 (3)1.2.2 填空题 (3)1.2.3 编程题 (4)2.2 习题解答 (5)2.2.1 选择题 (5)2.2.2 填空题 (7)2.2.3 编程题 (8)3.2 习题解答 (11)3.2.1 选择题 (11)3.2.2 填空题 (12)3.2.3 编程题 (12)4.2 习题解答 (15)4.2.1 选择题 (15)4.2.2 填空题 (17)4.2.3 编程题 (18)5.2 习题解答 (29)5.2.1 选择题 (29)5.2.2 填空题 (31)5.2.3 编程题 (33)6.2 习题解答 (37)6.2.1 选择题 (37)6.2.2 填空题 (41)6.2.3 编程题 (43)7.2 习题解答 (67)7.2.1 选择题 (67)7.2.2 填空题 (68)7.2.3 编程题 (68)21.2 习题解答1.2.1 选择题1、B【分析】在一个C程序中必须有且只能有一个main函数,而且main函数可以在任何地方出现.2、C【分析】C 语言中合法以的标识符组成为:字母,数字,下划线,且数字不能打头,亦不能为关键字。

A中,-sub 不合法。

B 中4d不合法。

D 中void 为关键字。

3、【分析】4、C【分析】转义字符中,第一个\”输出“,第二\\输出\,第三个\b退格,把前一个\去掉了,第四个\’输出’,第五个\t跳格,第六个\”输出”,第七个\n输出换行。

5、C【分析】本题将10进制17,分别按8、16进制输出。

8的进制21=2*8+1*1=17(10, 16制11=1*16+1*1=17(10)1.2.2 填空题1、主【分析】一个C源程序中至少包括一个主函数,其他函数没有限制。

2、双引号。

【分析】两种写法都是允许的,使用尖括号表示在包含文件目录中去查找(包含目录是由用户在设置环境时设置的),而不在源文件目录去查找.使用双引号则表示首先在当前的源文件目录中查找,若未找到才到包含目录中去查找。

用户编程时可根据自己文件所在的目录来选择某一种命令形式。

3、261,b1【分析】将10进制的177,按8进制和16进制两种形式输出。

4、a=3 b=7 x=8.5 y=71.82 c1=A c2=a【分析】scanf函数中,格式说明符以外的原样输入。

5、printf函数中,格式说明符以外的原样输出。

%m.nf控制输出结果中共m位,小数3占n位。

【分析】1.2.3 编程题1. #include "stdio.h"void main(){ float qianmi,yingli; //定义变量scanf("qianmi=%f",&qianmi); //输入数据printf("yingli=%f",qianmi*1.60934); //计算并输出数据}2. #include "stdio.h"void main(){char x;printf("请输出一个小写小母\n");scanf("%c",&x);printf("输出字母的大写型式为:%c",x+32);}3、#include<stdio.h>void main(){float c,f;printf("请输入一个摄氏温度:") ;scanf("%f",&c);f=32*c+9.0/5*c;4printf("华氏温度为:%5.2f\n",f);}4.#include<stdio.h>void main(){int a =3,b=4,c=5;float x=1.2,y=2.4,z=-3.6;double u=51274,n=128765;printf("a=%-3d,b=%-3d,c=%d\n",a,b,c);printf("x=%7.6f,y=%7.6f,z=%7.6f\n",x,y,z);printf("x+y= %3.2f,y+z= %3.2f, x+z=%3.2f\n",x+y,y+z,x+z);printf("u= %.0lf n= %.0lf\n",u,n);printf("c1='a' or 97\nc2='b' or 98\n");}2.2 习题解答2.2.1 选择题1、C.【分析】C语言的运算符按运算对象的个数可以分为单目、双目和三目运算符和多目运算符。

2、C.【分析】 %运算符要求参加运算的数必须是整数3、A .【分析】 B.赋值运算的作用是用将常量赋给变量,而不能给表达形式所以a*3=2 不对。

C. %运算符要求参加运算的数必须是整数,而x是float 类型所以x%(-3) 不对。

D. y=float(i),由于i是 int 类型,向 float类型转换是自由转的,不需要强制转。

4、A .【分析】因为 k=7,x=12; x%=k,则x=12%7,此时x=5,而k%=5,即k=7%5此时K=2,所以(x%=k)-(k%=5)就等价于5-2=3。

同理,x%=(k%=5)的值为0;x%=(k-k%5)的值为2;x%=k-k%5的值也为25、A.5【分析】首先通过n*100+0.5将原数扩大100,并通过+0.5判断是否进位。

之后/100进行舍去小数点后第三位的运算。

6、B.【分析】分析根据优先级别,先计算小括号里,y 与3相等成立所以表达式的值为1,再将1赋给x,而x的值就是表达式的值为1.7、A.【分析】略8、D.【分析】“a大于等于10”、“a小于等于0”两者分别为关系运算,一个“或”字又表明为逻辑或运算,所以D对。

9、B.【分析】在逻辑表达式求解中,并不是所有的逻辑运算符都被执行,对&&运算符来说,只有前一个表达式不等于0时,才继续进行右边的运算。

由于a>b为0,所以左边的表达式为0,所以右边的++n将不被计算,所以n的值不变仍为2。

10、B【分析】241的二进制形式为11110001,15的二进制形式为00011111,进行按位&运算后为00010001;a的二进制形式为01100001,z的二进制形式为01111010,进行按位|运算后为011111011。

00010001与011111011都为非0元素,所以再进行&&时结果一定为1。

11、A【分析】b>>2表示向右移动两位,相当于除以两个2结果为8/2=4;同理,b>>1相当于除一个2,结果为6,4/6为0。

12、B【分析】3的二进制数为00000011。

10的二进制为00001010,a<<2的结果为00001100,b==1的值为0,所以00001100与0按位或之后结果为00001100。

即10进进制的12。

13、D.【分析】就运算符的优先级别而言,单目>双目,算术运算>关系运算>逻辑运算。

14、B【分析】19的二制数为00010011,23的二进制数为00010100,两者进行按位与后结果为00010000十进制16,即为16进制的13。

15、C【分析】0x39的二进制形式为00111001,0xf的二进制形式为00001111,两者进行异或运算,异或结算的规则,参加运算的两个二进制位同号,则结果为假,异号则为真。

结果为:00110110即为16进制的36。

16、A6【分析】进行按位或运算,要a的低8位为1,则要求b的低8位全为1,高8位要求不变,则要求高8位全为0,即b应该为:0000000011111111,即为8进制的0377。

17、A【分析】由题得1>2不成立,所以x>y?++x:++y表达式的值为++y,则此时Y的值为3,而++x没有被执行,所以x的仍值为1,而Z的值与表达式的值相同所以选A。

18、C【分析】赋值运算符的作和是将一个表达式或一个变量,常量赋给另一个变量,赋值号的左边只能是变量,不能是常量,所以A、B、D不对。

19、B【分析】逗号运算符是级别最纸的运算符,逗号表达式也是值是所有表达式中最右边的值。

即a+b的值,由题从左向右算起,b++后b为6,则a+b为8.20、D【分析】在不同种数据类型进行计算时的转换规则是:数据类型低的全部转换成运算过程中级别最高的。

在int、long、unsigned和char四个类型中,long的类型级别最高,所以结果的类型为long.2.2.2 填空题1. -17.5【分析】“/”要求两操作数如果一个为实数结果都为实数,如果都为整数结果也为整数,所以a/4.0=2.5,a/4=2.所以原式=2.5-2*10=-17.5。

2. 5,32【分析】x++表示将x的值拿来用,然后再++;而y*=x++等价于y=y*x,即y=8*4=32,此计算结束之后x 的值才增加1,变为5。

3. -40【分析】赋值运算符的结合方向是从右向左的,所以先计算a*a=25,所以a+=a-=a*a等价于a+=(a-=25),而此时a仍为5.接下来计算a-=25得a=2-25=-20;则a+=(a-=25)等价于a+=-20,所以a=a-20=-20-20=-40。

4. 16【分析】x+=--x%--y等价于x+=(--x)%(--y),--放在变量的前面时,要先对变量进行变化,然后再用,所以原式即为x+=14%3,而14%3=2,即x+=2,而此时x=14,所以x=x+2=16。

5. x>1&&x<10 ||x<0&&x!=-1【分析】略6. 07【分析】根据运算符的优先级别,算术运算>关系运算>逻辑运算可知,要先算a+b=7,接下来计算7>c即7>5成立为1,然后计算b==c,而4==5不成立,所以值为0,即最终表达式等价于1&&0,所以结果为0.7. 0【分析】略,同第6题。

8. -17【分析】条件运算符优先级别高于赋值运算符,所以先算(a<b)?a:b的值,由于13<25成立,所以(a<b)?a:b的值为a 的值,并将a的值赋给y,此时,原式等价于(13<-17)?y:c,而13<-17不成立,所以表达式的值为C的值,即为-17。

9. 18, 3,3【分析】对逗号表达式的值,即为从左向右最后一个表达式的值,本题中表达式的值即为6*a的值即18。

相关文档
最新文档