习题答案
习 题 1(参考答案)
1.程序与算法的概念及二者的区别是什么?
程序:为了实现特定目标或解决特定问题而用计算机语言偏写的指令序列,它由算法和数据结构组成。
算法:(Algorithm)是在有限步骤内求解某一问题所使用的一组定义明确的规则。通俗地讲,就是计算机解题的步骤。
算法与程序的区别:计算机程序是算法的一个实例,同一个算法可以用不同的计算机语言来表达。
c++判断素数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.以下定义语句中正确的是( )。
A.int a=b=0 ; B.char A=65+1 ; b='b';
C.float a=1,*b=&a,*c=&b ; D.double a=0.0,b=1.1;
4.已知int x = 10,y = 3,表达式x/y的值是( )。
15.在C语言中提供的合法的关键字是( )。
A.switch B.cher C.Case D.default
26.下列不可作为C语言赋值语句的是( )。
A.x=3,y=5; B.a=b=6; C.i- -; D.y=int(x);
40.下列变量定义中合法的是( )。
A.float _a = 1-.1e-1; B.double b = 1 + 5e2.5;
C.long do = 0xfdaL; D.float 2_and = 1 - e - 3;
44.以下选项中不属于字符常量的是( )。
A.'C' B."C" C.'\xCC0' D.'\072'
46题与17题重了
47题A项选择:a==1 后面加分号就合法了,所以只有“B”项合法
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
C | A | BD | C | B | B | C | B | A | D |
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
C | C | D | A | AD | B | C | A | D | C |
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 |
C | D | A | D | B | C | C | C | A | D |
31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 |
C | D | B | C | A | D | B | C | D | A |
41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 |
B | D | B | BC | A | C | B | A | D | D |
二、填空题
1. | 255 |
2. | a/(b*c) |
3. | 20 |
4. | 1.0 |
5. | x==0或(x==0)?1:0 |
6. | x<-5 || x>5 |
7. | 97或字符 ‘a’ |
8. | 0 |
9. | 2.5 |
10. | 3.5 |
11. | 3 |
12. | 9, 11, 9, 10 |
13. | a+=a;24, a-=2;10, a*=2+3;60, a%=(n%=2);0, a/=a+a;0, a+=a-=a*=a;0 |
14. | 8 |
15. | 2 |
习 题 3 (参考答案)
1.编程实现:用字符输入/输出函数输入3个字符,将它们反向输出。
参考代码(尽量运用本章所学知识)
#include <stdio.h>
main( )
{ char c1,c2,c3;
c1=getchar(); c2=getchar(); c3=getchar();
putchar(c3); putchar(c2); putchar(c1);
}
2.编程实现:用格式输入/输出函数输入3个字符,将它们反向输出并输出它们的ASCII值。
参考代码(尽量运用本章所学知识)
#include <stdio.h>
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.
习题4答案
勘误:
6.若有以下定义:中B答案的switch((int)x)
选择题
1. B 2 .A 3 . B 4.B 5. C 6.B
阅读程序,写结果
7. 12 8.13 9. *0**2*
10
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<stdio.h>
main()
{ int a,b,c,d,t;
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a<b) {t=a;a=b;b=t;}
if(a<c) {t=a;a=c;c=t;}
if(a<d) {t=a;a=d;d=t;}
if(b<c) {t=b;b=c;c=t;}
if(b<d) {t=b;b=d;d=t;}
if(c<d) {t=c;c=d;d=t;}
printf("%4d%4d%4d%4d",a,b,c,d);
}
12 据所输入的3条边长值,判断它们能否构成三角形,如能构成,再判断是等腰三角形、直角三角形还是一般三角形。
源程序:
#include<stdio.h>
#include "math.h"
main()
{float a,b,c,s,area;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论