交通大学C语言第二次作业教案资料
北京交通大学C语言课件上半部分复习题讲义

_abc x+3x1 Xf_1__4 a$#24 x__x__2 bg--1 ____ Eoof___ I am
2018/5/19
高级语言程序设计
25
标识符
1. 程序中的名字(描述对象)称为标识符 如变量名(s,a,b,c)、 函数名(add, main)等; 2. 标识符分用户定义的标识符和系统预定义的标识符 用户定义的如s,a,b,c; 系统定义的如标准函数名printf,用户不得使用; 3. 形式:字母或数字组成的连续序列,字母(下划线“_”看 作字母)开头(即以字母开头,后跟字母或数字)。 4. 标识符对字母大小写敏感:a和A是不同字母;ABC、Abc、 AbC和abc是4个不同标识符
算法的几个特性
2018/5/19
要点1:运算符及表达式?
已经学习哪几种运算符及表达式?优先级关系?
自增、自减运算符 算术运算符 关系运算符 逻辑运算符 条件运算符 赋值运算符 逗号运算符
2018/5/19
高级语言程序设计
11
运算符
算术运算 () 逻辑运算 ! ++ - 算术运算 + (类型) sizeof * / % + 括号
2018/5/19
高级语言程序设计
28
3.(课后第3题)在下列表达式的计算过程中,在哪些 地方将发生类型转换,各是从什么类型转换到什么 类型,表达式计算的结果是什么?
int to float long to float int to float int to float
c语言实训教案

时间:3月4日星期五(5,6)地点:五机房实训题目:熟练上机步骤教学目标::学生熟练掌握程序的运行,保存,调出教学难点:运行操作教学重点:上机步骤考核方式:计分制,以5分为满分。
教学过程:1录入程序2针对此程序练习保存,运行的过程,3练习三个程序,练习调出操作,巩固保存,运行实训教案二:时间:3月11日星期五(5,6)地点:五机房实训题目:数据类型的定义以及简单输出教学目标::使学生掌握几种数据的类型,并能进行定义教学难点:每种类型所占用的空间教学重点:会定义,区分每种数据类型的作用考核方式:计分制,以5分为满分。
实训教案三:时间:3月18日星期五(5,6)教学目标::掌握几种运算符和表达式的运算结果,优先级,结合性教学难点:条件运算符和表达式,教学重点:各种表达式的结果运算考核方式:计分制,以5分为满分。
教学过程:1给出一些表达式让学生们分析结果2上机运行验证结果3老师讲解实训教案四时间:3月25日星期五(5,6)地点:五机房实训题目:printf语句教学目标::掌握printf语句的格式以及几种格式符教学难点:printf语句的格式符教学重点:printf语句的格式符考核方式:计分制,以5分为满分。
教学过程:1给出多个printf语句的实例,让同学们分析2上机运行验证结果3老师讲解时间:4月1日星期五(5,6)地点:五机房实训题目:scanf语句教学目标::1掌握scanf语句的格式以及几种格式符2掌握getchar,putchar语句的格式教学难点:scanf语句的注意事项教学重点:scanf语句的注意事项考核方式:计分制,以5分为满分。
教学过程:1给出多个scanf语句的实例,让同学们分析2上机运行验证结果3老师讲解实训教案六时间:4月8日星期五(5,6)地点:五机房实训题目:if分支结构(求最大值问题;求表达式问题)教学目标::1掌握if语句执行过程2掌握if语句的几种形式教学难点:用if语句解决问题教学重点:会用if语句编程考核方式:计分制,以5分为满分。
西安交大C 程序设计第四章作业2汇总

西安交通大学实验报告课程__计算机程序设计__实验名称__结构体__第 1 页共 29 页系别____ ______ 实验日期 2014 年 4月 26日专业班级__ ____组别_____________ 实验报告日期 2014 年 4 月 27日姓名___ _______学号_ _报告退发 ( 订正、重做 )同组人_________________________________ 教师审批签字一、实验目的掌握结构体的使用方法,学会用结构体的方法定义变量并对变量进行处理;掌握枚举法的使用方法。
二、实验内容(一)第一题: 1、输入某小组5个人的姓名、性别、出生年份等信息,统计男女人数以及1988年以后(含1988年)出生的人数。
1.源程序代码://输入某小组个人的姓名、性别、出生年份等信息,统计男女人数以及年以后(含年)出生的人数。
#include<iostream>using namespace std;struct xinxi{char name[20];char sex;int year;};//定义结构体xinxi,包含名称(字符串)、性别(字符)、出生时间(整数)三个变量int main(){xinxi cy[5];int i,s=0,m=0;for(i=0;i<5;i++){cout<<"请输入第"<<i+1<<"个成员的信息:\n姓名:";cin>>cy[i].name;cout<<"性别(男的输入“b”,女的输入“g”):";cin>>cy[i].sex;cout<<"出生年份:";cin>>cy[i].year;}cout<<"您输入的是:\n";for(i=0;i<5;i++)//显示输入内容cout<<cy[i].name<<"\t"<<cy[i].sex<<"\t"<<cy[i].year<<endl;for(i=0;i<5;i++)//统计男女、之后个数{if(cy[i].sex=='b')s++;if(cy[i].year>=1988)m++;}cout<<"其中男生人数为:"<<s<<"\t女生人数为:"<<5-s<<endl;cout<<"1988年以后(含)出生的的人数为:"<<m<<endl;return 0;}2.实验结果:3.问题分析:略。
工学院《VC++》第2次作业

16
17
18 19
20
}; void main( ) {
二、分析下列程序的运行结果 1、
} (2)
A m(7,8); m.printa( );
2、
3、 哲理故事两则
#include<iostream.h>
一、有两个和尚他们分别住在相邻的两座山上的庙里。这两座
class Count{
山之间有一条溪,于是这两个和尚每天都会在同一时间下山去
启示:我们在公司领的薪水再多,那都是挑水。而把 握下班后的时间挖一口属于自己的井,培养自己另 一方面的实力,未来当我们年纪大了,体力拼不过 年轻人了,依然还是有水喝,而且还能喝得很悠闲。
A. 0 B. 1 C. 2 D. 任意
11. 类的析构函数可以带有( )个参数。
A. 0 B. 1 C. 2 D. 任意
12.下列的( )是引用调用。
A.形参是引用,实参是变量 B.形参和实参都是变量
C.形参是指针,实参是地址值 D.形参是数组名,实参是数组名
13.作用域运算符的功能是( )
A.给定作用域的大小;
B() { } B(int i,int j){a = i ;b = j;}
答题处
void printb( ){ cout<<a<<","<<b<<endl;}
一、单项选择题
};
class A{
1
2
3
4
5
private: Bc;
6
7
8
9
10
public: A(){ }
11
12
13 14
15
北京交通大学《C语言程序设计(专)》在线作业二答案答案

北交《C语言程序设计(专)》在线作业二-0010试卷总分:100得分:100一、单选题(共10道试题,共40分)L执行以下程序后,a,b的值分别为main ( ){ int a, b, k=4, m=6, *pl=&k, *p2=&m; a=pl=&m;b=(*pl ) / ( *p2 ) +7;printf (z,a=%d \ n,z, a) ; printf ("b=%d\n〃,b) ;}A.-1,51,6B.0, 74, 10 答案:C2.请选出可用作C语言用户标识符的是void, define, WORDA.a3_b3,_123, IFFOR, 一abc, CaseB.2a, Do, Sizeof答案:B3.下列程序的输出结果是main (){ double d=3. 2; int x, y;x=l. 2; y= (x+3.8) /5. 0; printfd*y) ;}A.33.2B.03. 07 答案:C4.若已定义:int a [ ] ={0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, *p=a, i; 其中0≤i≤9,则对a数组元素不正确的引用是A. a [p-a]B.* (&a [i])C.p [i]a [10]答案:D5.下面程序段的运行结果是char *format=/,%s, a=%d, b=%d \ n z,; inta=ll, b=10;a+=b; printf (format, z,a+=b,z, a, b);A. for, 〃a+=b〃, abB.format, 〃a+二b〃C. a+=b, a=21, b=10D.以上结果都不对答案:C 6.在16位C编译系统上,若定义long a.;,则能给a赋40000的正确语句是A.a=20000+20000;a=4000*10;C.a=30000+10000;D. a=4000L*10L答案:D.以下程序有错,错误原因是 main ( ){ int *p,i;char *q,ch;p=&i; q=&ch;*p=40;*p=*q; }A. p和q的类型不一致,不能执行*p二*q;语句7.*p中存放的是地址值,因此不能执行*p=40;语句C.q没有指向具体的存储单元,所以*q没有实际意义D.q虽然指向了具体的存储单元,但该单元中没有确定的值,所以执行*P二*q;没有意义,可能会影响后面语句的执行结果答案:D8.假定以下程序经编译和连接后生成可执行文件PROG. EXE,如果在此可执行文件所在目录的DOS提示符下键入:PROG ABCDEFGH IJKL〈回车》,则输出结果为main ( int argc, char *argv 口) { while (一argc>0) printf (〃%s〃,argv [argc]) ; printf (〃\n〃);}A.ABCDEFGB.IJHLC.ABCDEFGHIJKLD.IJKLABCDEFGH答案:D9.设有定义:int n=0, *p=&n, **q二&p,则下列选项中正确的赋值语句是p=l;A.*q=2;q二p;B.*p=5;答案:D10.设有int x=ll;则表达式(x++*l/3)的值是A. 3B.411C.12答案:A二、多选题(共10道试题,共40分)1L带参宏定义与函数的区别是:oA.函数调用时,先求出实参表达式的值,然后代入形参,带参的宏只是进行简单的字符替换B.函数调用是在程序运行时为形参分配临时的存储单元,而宏展开是在编译前进行的C.宏不存在类型问题,宏名和参数都不存在类型问题D.调用函数只能得到一个返回值,而使用宏可设法得到儿个结果答案:ABCD12.若定义:int a[2][3] {0, 2, 4, 6, 8, 10];以下描述正确的有A.* (a+1)为元素6的地址B.* (a[l]+l)的值为2C.** (a+1) +2的值为8D.a[0]与a相同答案:ACD13 .对静态变量的正确描述A.静态局部变量在静态存储区内分配单元B.静态外部变量可以赋初值,也可以不赋初值C.静态外部变量的作用与外部变量相同D.静态局部变量在函数调用结束时,仍保存其值,不会随着消失。
交通大学C语言第二次作业教学内容

交通大学C语言第二次作业题目1正确满分1.00标记题目题干对于传值调用(By Value)的描述,哪一个正确?()选择一项:a. 实际参数和形式参数共占相同的内存位置b. 实际参数会把内存地址传递给形式参数c. 实际参数和形式参数可以使用不同的数据类型d. 实际参数会将变量内容复制后,把副本传给形式参数题目2正确满分1.00标记题目题干关于多态,下列说法错误的是()选择一项:a. 编译时多态是在程序运行时才能确定要调用成员方法的哪个版本,而运行时多态在编译时就能确定要调用成员方法的哪个版本b. 多态和重载是两个完全不同的概念,前者是通过定义虚方法和重写虚方法来实现,后者是通过对同一个函数名编写多个不同的实现代码来完成。
c. 多态可以分为编译时多态和运行时多态。
前者的特点是在编译时就能确定要调用成员方法的哪个版本,后者则是在程序运行时才能确定要调用成员方法的哪个版本d. 多态实际上就是重载,它们本质上是一样的题目3正确满分1.00标记题目题干关于静态成员,下列说法正确的是()选择一项:a. 在类实例化后静态成员也被实例化,因此不同的对象有不同的静态成员b. 在类定义时静态成员属于类,在类实例化后静态成员属于对象c. 同一个类中的静态成员,类实例化后,在不同的对象中形成不同的静态成员d. 在类实例化后,同类型的对象都共享类的静态成员,静态成员只有一个版本题目4正确满分1.00标记题目题干假设有类C继承类B,类B继承类A,则下面说法正确的是()选择一项:a. C仅继承类A的所有成员,不继承类B的成员b. 类C仅继承类B的所有成员,不继承类A的成员c. 类C不仅继承类B的所有成员,也继承类A的所有成员d. 类C继承类A的部分成员,同时继承类B的所有成员题目5正确满分1.00标记题目题干下列对于对象的描述,哪一个正确?()选择一项:a. 使用private将对象实例化b. 一个类只能产生一个对象c. 使用new运算符来自动实现属性d. 类下可以实例化多个对象题目6正确满分1.00标记题目题干下面关于接口的说法,正确的是()选择一项:a. 接口中定义的方法可以编写其实现代码b. 接口中定义的方法都必须是虚方法c. 接口中的所有方法都必须在其派生类中得到实现d. 继承接口的类可提供被继承接口中部分成员的实现代码题目7正确满分1.00标记题目题干下面关于类的定义,错误的是()选择一项:a. class A{void f( ){ }};b. class A{private void f() {return; }}c. class A{void f( ) { }}d. class A{f( ){ }}题目8正确满分1.00标记题目题干要从派生类中访问基类的成员,应使用关键字()选择一项:a. baseb. newc. thisd. override题目9正确满分1.00标记题目题干在类A中定义了属性y:class A{public int y{get{return 1;}set{ }}}并试图通过下列代码来实现对属性y的访问A b=new A();b.y=2;int x=b.y;对此,下列说法正确的是()选择一项:a. 属性y可读、但不可写,因此语句“b.y=2;”是错误的b. 属性y可读可写,因此变量x的值为2c. 属性y可写,但不可读,因此语句“int x=b.y;”是错误的d. 属性y可读可写,变量x的值为1题目10正确满分1.00标记题目题干在类A中试图重载构造函数,并使用构造函数创建对象:class A{A( ){ } //语句1public void A(int x){ } //语句2public A(int x, int y){ } //语句3}class Program{static voidMain(string[] args){A a=new A(); //语句4A b=new A(100,200); //语句5}}其中,正确的语句包括()。
交大版《C程序设计教程》课后参考答案及更正

176 页,2.(10)main 函数第 1 行:int x[][N]={{1,2,3),{4),{5,6,7,8),{9,10}},y[N], i; 修改为:int x[][N]={{1,2,3},{4},{5,6,7,8},{9,10}},y[N], i;
填空题: (1)x%3==0&&x%7==0 (2)4
第4章 选择题:
CDADD
D
填空题:
(1)7
(2)5 (3)01123 (4)不能。因为若输入为“65”,那对于%c 的输入格式控制符而言,6 和 5 都分别代表的 是一个字符。6 被第一个 scanf 语句接收,进入 while 的条件判断,是真的,因此继续接收 5; 接着进行第二次条件判断,还是真的,则继续循环,最后接收的是回车符,条件还是真的。
因此循环没有结束。
(5)1
(6)24/n 改错:其中 main 函数的第 5 行由:if((k&2)!=0) continue;
修改为: if((k++%2)!=0) continue;
(7)labCeD12dF 改错:其中 main 函数第 5 行由:if(a&&2!=0&&(ch>'a'&&ch<='z')) ch=ch-'a'+'A'; 修改为:
228 页,2.(10)main 函数第 1 行:int a[4][4]={{1,2,3,4),...... 修改为:int a[4][4]={{1,2,3,4},......
C语言第二次大作业

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★C语言第二次大作业班级:机电***学号:*******姓名:*******★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★一、题目1、基于VC6编写一个简易菜单驱动(简易的闪烁菜单)的程序,实现求解三角形面积、一元二次方程根、判断素数、退出四个功能。
要求界面友好,光标控制(光标所在行对应文字闪烁显示),按回车键进入相应的功能,其中求解三角形面积功能中有一个子菜单以实现三种不同解法并可以返回主菜单。
至少定义5个函数,可适当加入一些趣味函数提高趣味性。
2、基于KEIL编写一个控制单片机实验系统V2数码管动态显示本人学号的程序。
应用设想:某些店面门口可以动态显示订餐、订货电话,为消费者提供便利。
当然,点阵显示效果更好,不仅可以显示数字还可以显示字母、文字。
二、题目分析及算法1、该题要求实现光标控制的闪烁菜单,并且有一个子菜单。
该题主要是对模块化程序设计进行训练。
菜单实现四种不同的功能可使用switch-case函数实现(本程序的选择分支结构均可使用该函数),为使界面友好可定义一个光标定位函数使得光标先到相应行和列再执行程序语句。
闪烁菜单可在静态菜单的基础上根据定义好的静态菜单返回的不同的函数值,巧妙结合延时函数间歇性输出菜单选项,实现闪烁。
编程时应注意数据类型(全局变量、局部变量、静态变量(关键字Static))的使用。
此外还有return、break,continue、exit()、while语句、if 语句、kbhit()、getch()等函数的使用。
求解三角形面积算法:要求实现三种不同解法(已知三边(首先要判断输入的三边长能否构成三角形)、已知两边及其夹角,已知底和对应的高)。
解法一要注意函数sin()的用法!判断素数算法: 素数(质数)指在大于1的自然数中,除了1和此整数自身外,无法被其他自然数整除的数(也可定义为只有1和本身两个因数的数)。
《C语言程序设计》课程教学大纲

《C语言程序设计》课程教学大纲一、课程性质、目的和任务《C语言程序设计》课程是理工类非计算机专业本科学生必修的专业基础课程之一。
通过本课程学习,使学生掌握结构化程序设计的方法,培养学生规范的程序设计风格,严谨的程序设计思想,初步具备较强的编程实践能力,为后续专业课程的学习及解决相关专业工程实际问题奠定基础。
二、教学内容及教学基本要求第一章软件开发简介1.软件工程:理解软件的概念;了解软件工程的相关知识。
2.程序介绍:了解程序的概念;了解程序设计过程及方法;理解并掌握算法的概念、特性以及表示方法。
3.数据结构:了解数据结构的概念及分类;理解基本的数据结构:线性表、栈、队列以及树等。
4.VC++ 6.0集成开发环境:了解C程序的运行环境;理解运行C程序的步骤;掌握运行C程序的基本方法。
第二章C语言基础知识1.C程序的基本结构:理解C程序的基本结构。
2.C语言的基本组成:了解C语言的基本字符集;掌握标识符的命名规则;理解并掌握库函数的使用。
3.C语言的基本数据类型:了解C语言数据类型的种类;理解C语言的基本数据类型及其表示形式。
4.常量和变量:理解常量和变量的特点;掌握变量的定义方法;掌握变量赋初值的方法;了解变量的作用域。
5.算术运算符和算术表达式:掌握算术运算符的运算规则和优先级别;掌握算术表达式的构成和计算。
6.赋值运算符和赋值表达式:理解赋值运算符的含义;掌握复合赋值运算符的运算规则和赋值表达式的构成及计算。
7.关系运算符和关系表达式:理解关系运算的含义;理解并掌握关系运算符的运算规则和优先级;掌握关系表达式的应用。
8.逻辑运算符和逻辑表达式:理解逻辑运算符的含义;理解并掌握逻辑运算符的运算规则和优先级;掌握逻辑表达式的应用。
9.逗号运算符和逗号表达式:掌握逗号运算符的运算规则;掌握逗号表达式的使用。
10.位运算符和位运算表达式:了解各种位运算符的运算规则;掌握位运算符运算规则和优先级。
11.各类型数据间的混合运算及数据类型转换:掌握不同类型数据间的混合运算规则。
西南交大网络教育汇编语言程序设计 第二次作业

汇编语言程序设计第二次作业11.假设下列指令中的所有标识符均为类型属性为字的变量,请指出下列哪些指令是非法的?它们的错误是什么?(1) MOV BP, AL ;(2) MOV WORD_OP [BX+4*3][DI], SP(3) MOV WORD_OP1, WORD_OP2 ;(4) MOV AX, WORD_OP1[DX] ;(5) MOV SAVE_WORD, DS(6) MOV SP, SS:DATA_WORD [BX][SI](7) MOV [BX][SI], 2 ;(8) MOV AX, WORD_OP1+WORD_OP2(9) MOV AX, WORD_OP1-WORD_OP2+100(10) MOV WORD_OP1, WORD_OP1-WORD_OP2答:假设下列指令中的所有标识符均为类型属性为字的变量,请指出下列哪些指令是非法的?它们的错误是什么?(1) MOV BP, AL ;错,寄存器类型不匹配(2) MOV WORD_OP [BX+4*3][DI], SP(3) MOV WORD_OP1, WORD_OP2 ;错,不能都是存储器操作数(4) MOV AX, WORD_OP1[DX] ;错,DX不能用于存储器寻址(5) MOV SAVE_WORD, DS(6) MOV SP, SS:DATA_WORD [BX][SI](7) MOV [BX][SI], 2 ;错,[BX][SI]未指出数据类型(8) MOV AX, WORD_OP1+WORD_OP2(9) MOV AX, WORD_OP1-WORD_OP2+100(10) MOV WORD_OP1, WORD_OP1-WORD_OP212.假设VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处:(1) ADD VAR1, VAR2 ;(2) SUB AL, VAR1 ;(3) JMP LAB [SI] ;(4) JNZ VAR1 ;(5) JMP NEAR LAB ;答:假设VAR1和VAR2为字变量,LAB为标号,试指出下列指令的错误之处:(1) ADD VAR1, VAR2 ;不能都是存储器操作数(2) SUB AL, VAR1 ;数据类型不匹配(3) JMP LAB [SI] ;LAB是标号而不是变量名,后面不能加[SI](4) JNZ VAR1 ;VAR1是变量而不是标号(5) JMP NEAR LAB ;应使用NEAR PTR13.有符号定义语句如下:BUFF DB 1, 2, 3, ‘123’EBUFF DB 0L EQU EBUFF - BUFF问L的值是多少?答:L=6。
上海交通大学数据结构与C语言程序设计习题及答案

专业课复习资料(最新版)封面数据结构与C语言程序设计一. 是非题(2’⨯10)( )1、 队列逻辑上是一个表头和表尾既能插入又能删除的线性表。
( )2、 任何一个递归过程都可以转换成非递归过程。
( )3、 与n个键值的集合{k1,k2,…,kn}相对应的堆是唯一的。
( )4、 在索引顺序表上实现分块查找,在等概率查找情况下,其查找长度只与表中元素个数有关,而与每块中元素个数无关。
( )5、 所谓加权无向图G的最小生成树T就是将G中各结点间的最短路径作为边所构造出来的G的子图。
( )6、 在10万个随机排列的数据中,要选出5个最小的数,采用快速排序比采用Shell排序、堆排序及各种直接排序法都快。
( )7、 B树查找算法的时间复杂性为O(n)。
( )8、 哈希表查找无需进行关键字的比较。
( )9、 在执行某个排序过程中,出现排序码朝着最终位置相反方向移动,则该算法是不稳定的。
( )10、任何有向图的顶点都可以按拓扑序排序。
二.填空题(2’⨯6)1.假设用于通信的电文由8个字母组成,其频率分别为0.07,0.19,0.02,0.06,0.32,0.03,0.21,0.10, 为这8个字母设计哈夫曼编码,其中编码长度最大的字母的编码是 位。
2.已知二叉树按中序遍历所得到的结点序列为DCBGEAHFIJK, 按后序遍历所得到的结点序列为DCEGBFHKJIA, 按先序遍历所得到的结点序列为 。
3. 设哈希表长度为11,散列函数H(k)=k MOD 11, 若输入顺序为(18,10,21,9,6,3,16,25,7),处理冲突方法为线性探测再散列,请构造哈希表 。
果 。
5.已知模式匹配的KMP算法中模式串t=’adabbadada’,其next函数的值为 。
6.在置换-选择排序中,假设工作区的容量为w,若不计输入、输出的时间,则对n个记录的文件而言,生成所有初始归并段所需时间为 。
三.简答题(6’⨯5)1.有n个不同的英文单词,它们的长度相等,均为m,若n>>50,m<5,试问采用什么排序方法时间复杂度最佳?为什么?2.对于一个栈,给出输入序列A,B,C,试给出全部可能的输出序列。
西安交大C++程序设计第二章作业

西安交通大学实验报告课程计算机程序设计_实验名称基本数据类型的熟悉_第 1页共12页系别__ ___________ 实验日期 2014 年 3月 4日专业班级___ ____组别_____________ 实验报告日期 2014年3月 8 日姓名___ ____学号 __ 报告退发 ( 订正、重做 )同组人_________________________________ 教师审批签字一.实验目的1.通过实验熟悉整数类型变量、字符变量、双精度类型变量等基本数据类型的使用;2.学会小数的取整(通过强制类型转换的方法)、整数的求余、表达式中算术运算符的使用;3.条件语句(if else)、循环语句(while)的使用。
二.实验内容(一)第一题:编写一个程序,要求完成以下要求:1)提示用户输入任意的三个小数;2)显示这三个小数;3)将这三个小数相加并显示结果;4)将结果四舍五入转换成整数并显示。
1.要点分析:第一步:输入三个小数;第二步:显示所输入的小数;第三步:求和并显示;第四步:对所求得的和取整(强制类型转换,将双精度类型变量转换为整数变量),再用和减去该数从而得到和的小数部分;第五步:通过判断小数部分的大小(是>=还是<)决定是“四舍”还是“五入”,根据不同的情况输出“四舍五入”所得的结果(小于则直接输出取整所得;大于等于则取整后加1);第六步:选择是否再次开始,若是,循环前五步;否则,结束程序。
2.源程序代码:#include<iostream>using namespace std;int main(){double a,b,c,sum,left;验结果:(二)第二题:输入两个角度值x、y,计算如下式子的值(C++中的三角函数的输入是弧度):1.要点分析:第一步:输入两个角度值;第二步:判断所输入的值下式子是否有意义(即x与y之和是不是90+n*360),若无,提示重新输入直至正确;若有意义,进行下一步;第三步:将所输入的角度制下的值转化为弧度制下的值(需要用到pi,只能预先输入较为精确的pi值);第四步:计算并输出结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
交通大学C语言第二次作业题目1正确满分1.00标记题目题干对于传值调用(By Value)的描述,哪一个正确?()选择一项:a. 实际参数和形式参数共占相同的内存位置b. 实际参数会把内存地址传递给形式参数c. 实际参数和形式参数可以使用不同的数据类型d. 实际参数会将变量内容复制后,把副本传给形式参数题目2正确满分1.00标记题目题干关于多态,下列说法错误的是()选择一项:a. 编译时多态是在程序运行时才能确定要调用成员方法的哪个版本,而运行时多态在编译时就能确定要调用成员方法的哪个版本b. 多态和重载是两个完全不同的概念,前者是通过定义虚方法和重写虚方法来实现,后者是通过对同一个函数名编写多个不同的实现代码来完成。
c. 多态可以分为编译时多态和运行时多态。
前者的特点是在编译时就能确定要调用成员方法的哪个版本,后者则是在程序运行时才能确定要调用成员方法的哪个版本d. 多态实际上就是重载,它们本质上是一样的题目3正确满分1.00标记题目题干关于静态成员,下列说法正确的是()选择一项:a. 在类实例化后静态成员也被实例化,因此不同的对象有不同的静态成员b. 在类定义时静态成员属于类,在类实例化后静态成员属于对象c. 同一个类中的静态成员,类实例化后,在不同的对象中形成不同的静态成员d. 在类实例化后,同类型的对象都共享类的静态成员,静态成员只有一个版本题目4正确满分1.00标记题目题干假设有类C继承类B,类B继承类A,则下面说法正确的是()选择一项:a. C仅继承类A的所有成员,不继承类B的成员b. 类C仅继承类B的所有成员,不继承类A的成员c. 类C不仅继承类B的所有成员,也继承类A的所有成员d. 类C继承类A的部分成员,同时继承类B的所有成员题目5正确满分1.00标记题目题干下列对于对象的描述,哪一个正确?()选择一项:a. 使用private将对象实例化b. 一个类只能产生一个对象c. 使用new运算符来自动实现属性d. 类下可以实例化多个对象题目6正确满分1.00标记题目题干下面关于接口的说法,正确的是()选择一项:a. 接口中定义的方法可以编写其实现代码b. 接口中定义的方法都必须是虚方法c. 接口中的所有方法都必须在其派生类中得到实现d. 继承接口的类可提供被继承接口中部分成员的实现代码题目7正确满分1.00标记题目题干下面关于类的定义,错误的是()选择一项:a. class A{void f( ){ }};b. class A{private void f() {return; }}c. class A{void f( ) { }}d. class A{f( ){ }}题目8正确满分1.00标记题目题干要从派生类中访问基类的成员,应使用关键字()选择一项:a. baseb. newc. thisd. override题目9正确满分1.00标记题目题干在类A中定义了属性y:class A{public int y{get{return 1;}set{ }}}并试图通过下列代码来实现对属性y的访问A b=new A();b.y=2;int x=b.y;对此,下列说法正确的是()选择一项:a. 属性y可读、但不可写,因此语句“b.y=2;”是错误的b. 属性y可读可写,因此变量x的值为2c. 属性y可写,但不可读,因此语句“int x=b.y;”是错误的d. 属性y可读可写,变量x的值为1题目10正确满分1.00标记题目题干在类A中试图重载构造函数,并使用构造函数创建对象:class A{A( ){ } //语句1public void A(int x){ } //语句2public A(int x, int y){ } //语句3}class Program{static voidMain(string[] args){A a=new A(); //语句4A b=new A(100,200); //语句5}}其中,正确的语句包括()。
选择一项:a. 语句1、语句2和语句3b. 语句3和语句5c. 语句2和语句4d. 语句1、语句3和语句5题目11正确满分1.00标记题目题干对于类的static成员来说,即使没有实例化类的对象,也可以通过类名来引用选择一项:对错题目12正确满分1.00标记题目题干不能直接实例化接口。
选择一项:对错题目13正确满分1.00标记题目题干抽象基类的方法中,所有方法都必须被声明为abstract选择一项:对错题目14正确满分1.00标记题目题干对象定义后,需用“new”关键字将对象实例化,这样才能为对象在内存中分配保存数据的空间选择一项:对错题目15正确满分1.00标记题目题干构造函数名字和类名相同选择一项:对错题目16正确满分1.00标记题目题干具有抽象方法的类必须声明为abstract选择一项:对错题目17正确满分1.00标记题目题干使用关键字sealed声明的类不能是基类选择一项:对错题目18正确满分1.00标记题目题干析构函数可以重载选择一项:对错题目19正确满分1.00标记题目题干在类定义中,数据成员(字段)被默认声明为public选择一项:对错题目20正确满分1.00标记题目题干在属性的声明中,set完成对数据值的设置修改,value是一个关键字,表示要写入数据成员的值选择一项:对错题目21正确满分1.00标记题目题干在一个派生类的对象被实例化以后,基类的构造函数被显式或隐式地调用,来完成在派生类对象中任何基类实例变量所需的初始化。
选择一项:对错题目22正确满分1.00标记题目题干调用方法传递参数时,形式参数和实际参数的()必须匹配。
选择一项:a. 名称b. 类型c. 地址d. 访问修饰符题目23正确满分1.00标记题目题干假设A类有如下定义,设a是A类的一个实例,下列语句调用( )是错误的。
class A{ public int i;public static String s;public void method1() { }public static void method2() { }}选择一项:a. A.method2();b. A.method1();c. Console.Writeline (a.i);d. a.method1();题目24正确满分1.00标记题目题干类ABC定义如下:1 public class ABC2 { public int max( int a, int b) { }34 }将以下()方法插入行3是不合法的。
选择一项:a. private int max(int a, int b, int c){ }b. public float max(float a, float b){ }c. public float max(float a, float b, float c){ }d. public int max (int c, int d){ }题目25正确满分1.00标记题目题干MyClass类定义如下:class MyClass{public MyClass(int x){}}使用如下方式创建对象,( )是正确的。
选择一项:a. MyClass myobj=new MyClass( );b. MyClass myobj=new MyClass;c. Myclass myobj= new MyClass(1);题目26正确满分1.00标记题目题干假设类B继承了类A,下列说法错误的是()。
选择一项:a. 类B中的成员可以访问类A中的公有成员b. 类B中的成员可以访问类A中的私有成员c. 类B中的成员可以访问类A中的保护成员题目27正确满分1.00标记题目题干为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用AB.method 就可以调用该方法。
则下列()方法的书写形式是正确的。
选择一项:a. static void method( )b. public void method( )c. final void method( )d. abstract void method( )题目28正确满分1.00标记题目题干产生继承关系的子类如果要使用基类的同名成员,要使用哪一个关键字?()选择一项:a. baseb. virtualc. newd. override题目29正确满分1.00标记题目题干下列关于面向对象的程序设计的说法中,()是不正确的。
选择一项:a. 面向对象程序设计的关键设计思想是让计算机逻辑来模拟现实世界的物理存在b. 在面向对象程序设计方法中,其程序结构是一个类的集合和各类之间以继承关系联系起来的结构c. “对象”是现实世界的实体或概念在计算机逻辑中的抽象表示d. 对象是面向对象技术的核心所在,在面向对象程序设计中,对象是类的抽象题目30正确满分1.00标记题目题干下面关于构造方法的说法不正确的是()。
选择一项:a. 构造方法不可以重载b. 构造方法没有返回值c. 构造方法也属于类的方法,用于创建对象的时候给成员变量赋值d. 构造方法一定要和类名相同题目31正确满分1.00标记题目题干下面关于命名空间的说法,错误的是()。
选择一项:a. C#中,命名空间可有可无,看需要来定义和使用b. 使用命名空间的好处是,不但在不同命名空间中的成员可以重名,而且在同一个命名空间中的成员也可以重名c. 命名空间为程序的逻辑结构提供了一种良好的组织方法d. 同一个命名空间中的成员不能重名,不同命名空间中的成员可以重名题目32正确满分1.00标记题目题干下述()说法是不正确的。
选择一项:a. 实例变量是用static关键字声明的b. 方法变量在使用之前必须初始化c. 实例变量是类的成员变量d. 方法变量在方法执行时创建题目33正确满分1.00标记题目题干现在有两个类:Person与Chinese,要使Chinese继承Person类,()写法是正确的。
选择一项:a. class Chinese extends Person{}b. class Chinese :: Person{}c. class Chinese : Person{}d. class Chinese extands Person{}题目34正确标记题目题干以下代码中,this是指()。
class bird{int x,y;void fly(int x,int y){this.x=x;this.y=y;}}选择一项:a. bird或flyb. birdc. 不一定,总是引用当前访问fly方法的那个对象d. fly题目35正确满分1.00标记题目题干以下关于继承的叙述正确的是()。