C语言习题答案2023年版

发布 2020-05-16 23:25:28 阅读 5259

习题答案。

习题 1(参***)

1.程序与算法的概念及二者的区别是什么?

程序:为了实现特定目标或解决特定问题而用计算机语言偏写的指令序列,它由算法和数据结构组成。

算法:(algorithm)是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地讲,就是计算机解题的步骤。

算法与程序的区别:计算机程序是算法的一个实例,同一个算法可以用不同的计算机语言来表达。

2.简述程序设计语言发展的过程。

程序设计语言经过最初的机器**到今天接近自然语言的表达,经过了四代的演变。一般认为机器语言是第一代,符号语言即汇编语言为第二代,面向过程的高级语言为第三代,面对象的编程语言为***。

3.简述高级程序设计语言中面向过程与面向对象的概念。

面向过程”是一种以过程为中心的编程思想。首先分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步地实现,使用的时候依次调用函数即可。一般的面向过程是从上往下步步求精,所以面向过程最重要的是模块化的思想方法。

面向对象”是一种以事物为中心的编程思想。面向对象的方法主要是将事物对象化,对象包括属性与行为。

面向过程与面向对象的区别:在面向过程的程序设计中,程序员把精力放在计算机具体执行操作的过程上,编程关注的是如何使用函数去实现既定的功能;而在面向对象的程序设计中,技术人员将注意力集中在对象上,把对象看做程序运行时的基本成分。编程关注的是如何把相关的功能(包括函数和数据)有组织地**到一个对象身上。

4.c语言程序的特点是什么?

1)c语言非常紧凑、简洁,使用方便、灵活,有32个关键字,有9种流程控制语句。

2)c语言运算符丰富,共有45个标准运算符,具有很强的表达式功能,同一功能表达式往往可以采用多种形式来实现。

3)数据类型丰富。c语言的数据类型有整型、实型、字符型、数组类型、结构类型、共用类型和指针类型,而且还可以用它们来组成更复杂的数据结构,加之c语言提供了功能强大的控制结构,因而使用c语言能非常方便地进行结构化和模块化程序设计,适合于大型程序的编写、调试。

4)用c语言可直接访问物理地址,能进行二进制位运算等操作,即可直接同机器硬件打交道。它具有“高级语言”和“低级语言”的双重特征,既能用于系统软件程序设计,又能用于通用软件程序设计。

5)c语言生成的目标**质量高、程序执行速度快。一般只比用汇编语言生成的目标**的效率低20%左右。

6)可移植性好。

5.源程序执行过程中,有哪些步骤?

c语言源程序的执行要经过:编辑、编译、链接、运行等步骤。

6.简述matlab的主要应用领域有哪些?

matlab软件是矩阵实验室(matrix laboratory)的简称,是美国mathworks公司开发的商业数学软件,主要包括matlab和simulink两大部分。它和mathematica、maple并称为三大数学软件。matlab软件可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序,主要应用于工程计算、控制设计、信号处理与通信、图像处理、信号检测、金融建模设计与分析等领域,代表了当今国际科学计算软件的先进水平。

习题 2(参***)

一、选择题。

二、填空题。

习题 3 (参***)

1.编程实现:用字符输入/输出函数输入3个字符,将它们反向输出。

参考**(尽量运用本章所学知识)

#include <>

main()

char c1,c2,c3;

c1=getchar();c2=getchar();c3=getchar();

putchar(c3); putchar(c2); putchar(c1);

2.编程实现:用格式输入/输出函数输入3个字符,将它们反向输出并输出它们的ascii值。

参考**(尽量运用本章所学知识)

#include <>

main()

char c1,c2,c3;

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

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

3.变量k为float 类型,调用函数:

scanf("%d", k);

不能使变量k得到正确数值的原因是:

scanf("%d", k);中的格式控制类型与变量k的定义类型不匹配,应将%d改为%f.

选择题。1. b 2. a 3. b 4. b 5. c 6. b

阅读程序,写结果。

if(s>=90)

m=4;else if(s>=80)

m=3;else if(s>=70)

m=2;else if(s>=60)

m=1;else

m=0;11.输入4个整数a,b,c,d,编写程序,将它们按从大到小顺序输出。

#include<>

main()

int a,b,c,d,t;

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

if(aif(aif(aif(bif(bif(cprintf("%4d%4d%4d%4d",a,b,c,d);

12.据所输入的3条边长值,判断它们能否构成三角形,如能构成,再判断是等腰三角形、直角三角形还是一般三角形?

源程序:#include<>

#include ""

main()

float a,b,c,s,area;

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

if((a+b>c)&&a+c>b)&&b+c>a)&&fabs(a-b)

else printf("不能组成三角形");

13.输入一个整数,如果能被3,4,5同时整除,则输出“yes”,否则输出“no”。

#include<>

main()

int t,flag;

scanf("%d",&t);

if(t%3==0&&t%4==0&&t%5==0)

printf("yes");

elseprintf("no");

14.输入年号,判断是否为闰年。判别闰年的条件是:能被4整除但不能被100整除,或者能被400整除。

#include<>

main()

int year;

printf("input the year:")

scanf("%d",&year);

if(year%4==0&&year%100!=0||year%400==0

printf(" d is leap year",year);

elseprintf(" d is't leap year",year);

15.编写程序。根据以下函数关系,对输入的每个x值进行计算,并输出相应的y值。

#include<>

main()

double x,y;

scanf("%lf",&x);

if(x>10) y=3*x+10;

else if(x>1) y=x*x+2*x;

else y=x*x-3*x+10;

printf(" lf ",y);

选择题。1. a 2. a 3. d 4. c 5. d

6. a 7. d 8. d 9. b 10. c

阅读程序,写结果。

17.利用近似公式求π的值,直到最后一项的绝对值小于10-6为止。

#include<>

#include<>

main()

double pi=0,i=1,j=1,k;

dok=i/j;

pi=pi+k;

i=-i;j=j+2;

}while (fabs(k)>1.0e-6);

C语言 数组 习题与答案

一 单选题。1 下列描述中不正确的是 a.字符串的结束符是 0 b.可以对字符型数组进行整体输入 输出。c.字符型数组中能存放字符串。d.字符串函数声明在中。正确答案 d2 下面是有关c语言字符数组的描述,其中错误的是 a.不可以用赋值语句给字符数组名赋字符串。b.可以用输入语句把字符串整体输入给字...

C语言基础习题作业 无答案

说明 1 并非严格单选题 2 请将所选答案填至下划线处,并提交word文档 3 提交的word文档命名规则为 学号 姓名拼音首字母。1.若以下选项中的变量已正确定义,则正确的赋值语句是 a x1 26.8 3 b 1 2 x2 c x3 0x12 d x4 1 2 3 2.若有以下程序段 int c...

c语言大学第2章习题答案

1 在c语言中,用户能使用的正确标识符是。a 5f b.for d.f.5 答案 b分析 标识符只能由字母 数字 下划线组成,且第一个字母必须是字母或下划线 大小写敏感 不能使用关键字 最长32个字符。2.以下为正确的c语言常量的是。a.0678 b.0101 c.1.2e3.5 d.123 答案 ...