实验三 数据类型、运算符与表达式(答案)

实验三 数据类型、运算符与表达式(答案)
实验三 数据类型、运算符与表达式(答案)

实验三数据类型、运算符与表达式

一、实验目的

1、掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。

2、学会使用C语言的算术运算符与表达式。

3、进一步熟悉C程序的编辑、编译、连接和运行的过程。

二、实验内容

1.sizeof运算符使用

格式:

sizeof(数据类型或变量)

例如,测试整型数据类型或变量所占字节数

//文件夹为:3-1.c

#include

void main()

{

int a = 5 ;

printf("The size of int is : %d\n" , sizeof(int));

printf("The size of int-variable is : %d\n" , sizeof(a));

}

请完善程序,实现求整型数据类型,字符型数据类型,单精度浮点型数据类型或双精度浮点型数据类型所占的字节数,并将代码和运行结果写在作业本上。

#include

void main()

{

int a = 5 ;

float f=64.0;

double g=22.11;

char c='a';

printf("The size of int is : %d\n" , sizeof(int));

printf("The size of int-variable is : %d\n" , sizeof(a));

printf("The size of int is : %d\n" , sizeof(float));

printf("The size of int-variable is : %d\n" , sizeof(f));

printf("The size of int is : %d\n" , sizeof(double));

printf("The size of int-variable is : %d\n" , sizeof(g));

printf("The size of int is : %d\n" , sizeof(c));

printf("The size of int-variable is : %d\n" , sizeof(char));

}

2.printf和scanf函数的使用

(1)下列的程序功能:通过调用scanf函数,使变量a,b,c 得到值分别为1,2,3

3-2-1.c

#include

// void main()

{

int a , b , c ;

printf("Please input three datas:");

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

printf("a = %d , b = %d , c = %d\n" , a , b , c );

}

请在作业本上给出3-2-1.c程序运行的结果

例如:

程序运行结果:

Please input three datas:1 2 3

a = 1 ,

b = 2 ,

c = 3

3-2-2.c

void main()

{

int a , b , c ;

printf("Please input three datas:");

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

printf("a:%d , b = %d , c:%d\n" , a , b , c );

}

请在作业本上给出3-2-2.c程序运行的结果

3-2-3.c

void main()

{

int a , b , c ;

printf("Please input three datas:");

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

printf("a-%d , b-%d , c-%d\n" , a , b , c );

}

请在作业本上给出3-2-3.c程序运行的结果

3-2-4.c

void main()

{

int a , b , c ;

printf("Please input three datas:");

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

printf("a=%d b=%d c=%d\n" , a , b , c );

}

请在作业本上给出3-2-4.c程序运行的结果

(1和2之间有输入tab键,1和2之间输入空格也是可以的,1和2之间输入回车也是可以的)

(2)文件3-3.c

void main()

{

char c1 , c2 , c3 ;

printf("Please input three characters:");

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

printf("c1=%c ,c2=%c , c3=%c\n" , c1 , c2 , c3 );

}

请在作业本上给出下列测试数据对应的输出结果

(1)测试数据1:ab c↙

例如:

运行结果:

Please input three characters:abc

c1=a ,c2=b , c3=c

(2)测试数据2:a b c↙(a和b之间两个空格)

(3)测试数据3:ab c↙(a,b和c之间两个空格)

(4)测试数据4:a b c↙(a和b之间一个tab键)

(5)测试数据5:a↙

b↙

c↙

(回车也是作为有个有效字符)

3.数学库函数的使用(sqrt ,fabs,pow)

假设a 的值为-125 ,b为225625 ,

y = | a | + b的平方根- 46

解释:

VC6.0中原型为double pow( double x, double y );

功能:计算x的y次幂。

返回值:x应大于零,返回幂指数的结果。

在VC6.0中原型是double fabs( double x );。

功能:求浮点数x的绝对值

说明:计算|x|, 当x不为负时返回x,否则返回-x

(另外,还有一个函数函数名: abs 功能: 求整型变量的绝对值,用法: int abs(int i); )sqrt功能: 计算一个非负实数的平方根

函数原型: 在VC6.0中的math.h头文件的函数原型为double sqrt(double);

#include

#include

void main()

{

int a , b , c;

a=-125;

b=225625;

c=abs(a)+sqrt(b)-pow(4,6);

printf("c=%d\n" , c );

}

请编写程序计算y的值,将代码写在作业本上

10月30日周二上午上课交

C语言试题:数据类型、运算符与表达式

3 数据类型、运算符与表达式 一、单项选择题 1、以下选项中,不正确的 C 语言浮点型常量是( C )。 A. 160. B. 0.12 C. 2e4.2 D. 0.0 分析:e 后面的指数必须为整数。 2、以下选项中,( D )是不正确的 C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" 分析:在C 语言中,’a ’表示字符常量,”a ”表示字符串。 3、 在 C 语言中,字符型数据在计算机内存中,以字符的(C )形式存储。 A.原码 B.反码 C. ASCII 码 D. BCD 码 分析:将一个字符常量放入一个字符变量中,实际上并不是将字符本身放到内存单元中,而是将字符的对应的ASCII 码放到储存单元中。 4、若x 、i 、j 和k 都是int 型变量,则计算下面表达式后,x 的值是( C )。 x=(i=4,j=16,k=32) A. 4 B. 16 C.32 D.52 分析:(i=4,j=16,k=32)的值为最后一个表达式的值,即为32,所以x=32. 5、算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B )。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 分析:算术运算符包括加法运算“+”符减法运算“-”符乘法运算符“*”以及除法运算符“/”,赋值运算符包括“=、+=、-=、*=、/=、……”,关系运算符包括“<、<=、>、>=”。 6、若有代数式bc ae 3 ,则不正确的C 语言表达式是( C )。 A.a/b/c*e*3 B. 3*a*e/b/c C.3*a*e/b*c D. a*e/c/b*3 分析:C 选项表达的是3ace/b 。 7、表达式!x||a==b 等效于( D )。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) 分析:由符优先级先后顺序在!x||a==b 中应先算“||”再算“!”,最后算“==”。选项B 不影响运算顺序。 8、设整型变量 m,n,a,b,c,d 均为1,执行 (m=a>b)&&(n=c>d)后, m,n 的值是( A )。 A. 0,0 B. 0,1 C. 1,0 D. 1,1 分析:先算括号里面的,a 不大于b ,则m=0,c 不大于d ,则n=0. 9、 设有语句 int a=3;,则执行了语句 a+=a-=a*=a;后,变量 a 的值是( B )。 A. 3 B. 0 C. 9 D. -12 分析:从后往前算,a*=a 即a=a*a ,a=9;然后a-=a=9,a=a-9,=0;a+=0,a=a+a=0. 10、在以下一组运算符中,优先级最低的运算符是( D )。

数据库实验3报告

实验三数据更新、视图、权限管理 实验3.1 数据更新 1 实验内容 (1) 使用INSERT INTO语句插入数据,包括插入一个元组或将子查询的结果插入到数据库中两种方式。 (2) 使用SELECT INTO语句,产生一个新表并插入数据。 (3) 使用UPDATE语句可以修改制定表中满足WHERE子句条件的元组,有三种修改的方式:修改某个元组的值;修改多个元组的值;带子查询的修改语句。 (4) 使用DELETE语句删除数据:删除某一个元组的值;删除多个元组的值;带子查询的删除语句。 2 实验步骤 在数据库School上按下列要求进行数据更新 可在SQL代码前加下面两句SQL语句,用于确保当前使用的是School数据库 Use School go (1)使用SQL语句向STUDENTS表中插入元组(编号:12345678 名字:LiMing EMAIL: LM@https://www.360docs.net/doc/4b7796001.html,年级:2002)。 Insert into STUDENTS values('12345678','LiMing','LM@https://www.360docs.net/doc/4b7796001.html,','2002') (2)对每个课程,求学生的选课人数和学生的最高成绩,并把结果存入数据库。使用SELECT INTO和INSERT INTO两种方法实现。 Insert into: create table Courses_maxScore(cid char(20),Count_courses int,maxScore int) insert into Courses_maxScore (cid,Count_courses,maxScore) select cid,count(*)as Count_courses,max(score)as maxScore from CHOICES group by cid select*from Courses_maxScore

习题三(运算与表达式)

习题三 一、选择题 1.若有代数式 bc ae 3,则不正确的C 语言表达式是( C )。 A. a/b/c*e*3 B. 3*a*e/b/c C. 3*a*e/b*c D. a*e/c/b*3 2.在C 语言中,要求运算数必须是整型的运算符是( D )。 A. / B. = C. ++ D. % 3.若有定义语句:int a=7;float x=2.5,y=4.7; 则表达式x+a%3*(int)(x+y)%2/4的值( A )。 A.2. B. 2. C.3. D.0. 4.若有定义int x=5,y=2,则表达式5/2的结果为(B )。 A. 2.5 B. 2 C. 2.0 D. 3 5.判断char 型变量ch 是否为大写字母的正确表达式是( C )。 A. ‘A ’<=ch<=’Z ’ B. (ch>=’A ’)&(ch<=’Z ’) C. (ch>=’A ’)&&(ch<=’Z ’) D. (ch>=’A ’)and(ch<=’Z ’) 6.为表示关系a ≥b ≥c,则正确的C 语言表达式为( C )。 A. a>=b>=c B. (a>=b)&(b>=c) C. (a>=b)&&(b>=c) D. (a>=b)||(b>=c) 7.逻辑运算符两侧运算对象的数据类型(D )。 A.只能是0或1 B.只能是0或非0正数 C.只能是整型或字符型 D.可以是任何数据类型 8.下列运算符中,优先级最高的是( B )。 A. < B. + C. && D. == 9.设x 、y 、z 是int 型变量,且有x=3,y=4,z=5,则下面表达式中值为0的是( D )。 A. ‘x ’&&’y ’ B. x<=y C. x||y+z&&y-z D. !((x=y&&ch<’B ’&&!y )的值为( B )。 A. 0 B. 1 C. “假” D. true 11.下列表达式中,不满足条件“当x 为奇数时值为真,当x 为偶数时值为假”的是( C )。 A. x%2==1 B. !(x%2==0) C. !(x%2) D. x%2 12.设有int a=1,b=2,c=3,d=4,m=2,n=2;则执行表达式(m=a>b )&&(n=c>d)后,n 的值为( C )。 A. 0 B. 1 C. 2 D. 3 13.判断char 型变量c 是否为0到9的数字的正确表达式为( C )。 A. ‘0’<=c<=’9’ B. 0<=c<=9 C. c>=’0’&&c<=’9’ D.c>=0&&c<=9 14.设有int x=3,y=4,z=5,则执行表达式!(x+y )+z-1&&y+z/2的结果是( D )。 A. 6 B. 0 C. 2 D. 1

C语言第三章表达式与运算符笔记

3.1概述 1.C语言表达式:用C语言运算符将常量、变量、函数调用连接起来的有意义的式子。.C语言的表达式为算术表达式、赋值表达式、逗号表达式、条件表达式、关系表达式和逻辑表达式。 2.表达式的值的类型取决于参与运算的数据的类型。 3.关系运算表达式成立,则结果为1,代表“真”,否则结果为0,代表“假”。4.运算符按参与运算的对象个数可以分类:单目运算符、双目运算符和三目运算符。 3.2算术运算符与算术表达式 1.除法运算:当两个操作数都是整型时,除法视为整除,运算结果舍去小数部分,只保留整数部分。 2.取模运算(求余):运算结果为一个整型,这个数是整除运算的余数,符号与被除数符号相同。例如:8%3的结果是3,8%(-5)的结果是3。 3.取负运算(单目运算),即只有一个操作数参与运算。 4.注意:’\%’与’%%’都相同于显示% 5.算术运算符的优先级:括号、函数调用、取负、*/%、+- 6.结合性:从左至右。 3.3其他运算符的应用 3.3.1赋值运算符和赋值表达式 1.一般形式:变量赋值运算符表达式例如:a=5+10 2.赋值表达式的计算过程:首先计算表达式的值,然后将该值赋给左侧的变量。 3.复合的赋值运算:+=,-=,*=,/=,%=等例如:a+=b等价于a=a+b 4.说明:(1)赋值号左边只能是变量,不允许出现常量、函数调用和表达式。 (2)赋值表达式中的“表达式”,又可以是另一个赋值表达式。 (3)当赋值号两边的数据类型不同时,一般由系统自动进行类型转换。

其原则是,赋值号右边的数据类型转换成与左边的变量相同的数据类型。 3.3.2自增自减运算符 1.功能:自增、自减运算符的作用是使变量的值增1或减1。 2.当自增、自减运算符的前置(在变量之前)变量本身先自增(或自减),然后再参与运算; 3.当自增、自减运算符的后置(在变量之后)变量先参与运算,然后变量本身再自增(或自减)。 注:自增、自减运算符只能用于整型变量,不能用于常量或表达式。 4.-i++相当于-(i++) 从右至左的右结合性 5.i+++j相当于(i++)+j 3.3.3条件运算符和条件表达式 1.一般形式:表达式1?表达式2:表达式3 2.条件表达式的执行过程:首先计算表达式1,如果非0(真)则计算表达式2,表达式2的值作为条件表达式的值;如果表达式1的值为0(假),则计算表达式3,表达式3的值作为条件表达式的值。 3.3.4逗号运算符和逗号表达式 1.一般形式:表达式1,表达式2,……,表达式n 2.逗号表达式的计算过程是:先计算表达式1,再计算表达式2,依次计算直到表达式n,表达式n,表达式n的值是整个逗号表达式的值。 3.3.5 sizeof运算符 1.一般形式:sizeof(类型名或变量名) 类型名可以是基本类型名,也可以是其他的构造类型名 2.功能:sizeof运算给出指定类型在内存中所占的字节数。 数学函数 1.fabs(x) 求x的绝对值

运算符与表达式练习题附答案

1. 以下运算符中优先级最高的是()。 A.&&B.+ C.!= D.?: 2.能正确表示逻辑关系:“a≥10或a≤0”的C语言表达式是()。 A.a>=10 or a<=0 B.a>=10| a<=0 C.a>=10 && a<=0 D.a>=10||a<=0 3. C语言中运算对象必需是整型的运算符是()。(A)+ (B)/ (C)% (D)* 4. 已知int i;float f;正确的表达式是()。 A)(int f)%i B) int(f)%i C) int(f % i) D) (int)f % i 5. 下列程序的输出结果是()。 void main( ) { int a=7,b=5; printf("%d\n",b=b%a); } (A)0 (B)1 (C)5 (D)不确定值6. 若有定义:int a=8,b=5,c;,执行语句c=a/b+0.4;

后,c的值为()。 (A)1.4 (B)1 (C)2.0 (D)2 7. 已知x=4.5,y=2.5,求表达式(x+y)/2+(int)y%(int)x的值()。 A) 3 B) 5 C) 3.5 D) 5.5 8. 已知各变量的类型如下 int i=8,k,a,b; unsigned long w=5; double x=1.42,y=5.2; 则以下符合C语言语法的表达式是()。 (A)a+=a-=(b=4)*(a=3)(B)a=a*3+2 (C)x%(-3)(D)y=float(i) 9. 已知int a,b;执行语句a=(b=3*2,b*4),a+6;后变量a的值为()。 A) 6 B) 12 C) 24 D)30 10. 若有以下程序 main() { int k=2,i=2,m; m=(k+=i*=k);

实验三:数据查询实验

实验三:数据查询实验 一、实验目的 了解在企业管理器或查询分析器中执行数据查询的方法;掌握SQL Server Query Analyzer中简单查询、连接查询、嵌套查询操作方法。 二、实验内容 1、使用企业管理器进行查询(验证性,了解部分) (1)查询数据表的全部数据 在企业管理器中,选择需要查询数据的表,用鼠标右键单击该表,从弹出的快捷菜单中选择“打开表”命令,这时将显示该表的全部数据。 (2)使用SELECT语句查询数据表的数据 在企业管理器中,选择需要查询数据的表,用鼠标右键单击该表,从弹出的快捷菜单中选择“打开表”命令,在打开返回表内容的子窗口中,单击工具栏按钮“显示/隐藏SQL窗格”,把子窗口分为上下两部分,上面部分能输入不同的SQL命令。执行时单击工具栏按钮“运行”即可。 (3)学习和使用QBE查询 在企业管理器中,选择需要查询数据的表,用鼠标右键单击该表,从弹出的快捷菜单中选择“打开表”命令,在打开返回表内容的子窗口中,单击工具栏按钮“显示/隐藏条件窗格”,把子窗口分为上下两部分,上面部分能选择QBE查询条件,执行时单击工具栏按钮“运行”即可。若单击工具栏按钮“显示/隐藏SQL窗格”,则在SQL窗格中会显示自动生成的对应SQL语句。 2、使用查询分析器进行查询(验证性) (1)查询Student表中所有学生的学号、姓名和性别。 SELECT Sno, Sname, Ssex FROM Student (2)可以用“*”来选取数据表的全部列 例如:查询Student表中所有学生的基本情况。 SELECT * FROM Student (3)在查询结果中增加计算列,还可修改数据列的显示名称。 例如:查询Student表中所有学生的学号、姓名、性别和出生年份。 SELECT Sno 学号, Sname 姓名, Ssex 性别, Year(GetDate()) - Sage 出生年份 FROM Student (4)使用WHERE子句,可以选择满足条件的部分记录 例如:查询成绩在85~90分之间的学生情况。

第三章 运算符和表达式

第三章运算符和表达式 3.1 运算符和表达式概述 使用运算符可以对运算对象(包括常量和变量)进行计算以得到计算结果。用运算符将运算对象连接成一个符合C语言语法规则的式称为表达式。另外,C语言中的表达式是可以嵌套的,即简单表达式经过运算符连接后还可以形成更为复杂的表达式。 根据运算符所连接的运算对象(操作数)的个数,可以将C语言中的运算符分为三类: (1) 单目(一元)运算符:只连接一个操作数的运算符。 (2) 双目(二元)运算符:带有两个操作数的运算符。 (3) 三目(三元)运算符:同时对三个操作数进行计算的运算符。 C语言中的表达式可以分为三类: (1) 单个常量或者单个变量是最简单的表达式。 (2) 带有运算符的表达式。 (3) 函数调用。 任何一种运算都是将一定的运算符作用于一定的运算对象上,得到预期的运算结果。所以运算对象、运算符和运算结果是运算的三大要素。 3.2 算术运算符和算术表达式 一、基本算术运算符和简单算术表达式 1. 基本算术运算符 C语言为用户提供的基本算术运算符包括:+(加)、-(减)、*(乘),/(除)、%(求余),这些运算符都是双目运算符,也即在生成算术表达式的时,基本算术运算符左右两侧都必须出现运算对象。 2. 简单算术表达式 当用基本算术运算符去连接常量或者变量时,就形成简单算术表达式。简单算术表达式的基本形式:data1 op data2。data1和data2表示某个常量或者变量,op代表上述5个基本算术运算符之一。假设有变量定义:int a=20,b=-5;则a+b、a-b、a*-2、20/-b、20%6、a%b等都是简单算术表达式。 3. 基本算术运算符使用说明 (1) +、-、*,/既可以连接整型数据,也可以连接实型数据。当参与这4个运算符的运算对

实验3-组合逻辑电路数据选择器实验

南通大学计算机科学与技术学院计算机数字逻辑设计 实验报告书 实验名组合逻辑电路数据选择器实验 班级_____计嵌151_______________ 姓名_____张耀_____________________ 指导教师顾晖 日期 2016-11-03

目录 实验一组合逻辑电路数据选择器实验 (1) 1.实验目的 (1) 2.实验用器件和仪表 (1) 3.实验内容 (1) 4.电路原理图 (1) 5.实验过程及数据记录 (2) 6.实验数据分析与小结 (9) 7.实验心得体会 (9)

实验三组合逻辑电路数据选择器实验 1 实验目的 1. 熟悉集成数据选择器的逻辑功能及测试方法。 2. 学会用集成数据选择器进行逻辑设计。 2 实验用器件和仪表 1、8 选 1 数据选择器 74HC251 1 片 3 实验内容 1、基本组合逻辑电路的搭建与测量 2、数据选择器的使用 3、利用两个 74HC251 芯片(或 74HC151 芯片)和其他辅助元件,设计搭建 16 路选 1 的电路。 4 电路原理图 1、基本组合逻辑电路的搭建与测量 2、数据选择器的使用

3、利用两个 74HC251 芯片(或 74HC151 芯片)和其他辅助元件,设计搭建 16 路选 1 的 电路。 5 实验过程及数据记录 1、基本组合逻辑电路的搭建与测量 用 2 片 74LS00 组成图 3.1 所示逻辑电路。为便于接线和检查,在图中要注明芯片编号及各引脚对应的编号。

图 3.1 组合逻辑电路 (2)先按图 3.1 写出 Y1、Y2 的逻辑表达式并化简。 Y1==A·B ·A =A + A·B=A + B Y2=B·C ·B·A = A · B+ B ·C (3)图中 A、B、C 接逻辑开关,Y1,Y2 接发光管或逻辑终端电平显示。(4)改变 A、B、C 输入的状态,观测并填表写出 Y1,Y2 的输出状态。 表 3.1 组合电路记录

实验三 数据保护

实验三数据保护 一、实验目的和要求 1.掌握简单数据库备份与还原; 2.掌握SQL的用户、角色和权限控制; 3.掌握SQL的完整性约束 二、实验内容 1、数据库还原 操作步骤: ①在“对象资源管理器”中右键单击“数据库”节点并在弹出菜单中选择“还原数据库” ②在“还原数据库”窗口中设置数据库的名称。 ③下一步,指定还原的源。此处,选择“源设备”。

2、创建登录用户 a)使用对象资源管理器创建通过SQL Server身份验证模式的登录,其中登录名为 Login01,密码为passwd01,默认数据库为CAP,其他保持默认值。 提示:进入对象资源管理器,展开“服务器”→“安全性”→“登录名”,右击“登录名” 项,在弹出的菜单中选择“新建登录名”选项。

b)使用系统存储过程sp_addlogin创建登录,其登录名称为Login03密码为passwd03, 默认数据库为CAP。在SQL编辑器窗口中输入和执行语句,并在对象资源管理器 中显示结果。 EXEC sp_addlogin'login03','passwd03','CAP' c)使用对象资源管理器删除登录用户Login01和Login02。 提示:进入对象资源管理器,展开“服务器”→“安全性”→“登录名”,右击欲删除的 登录帐号,在出现的快捷菜单中单击“删除” d)使用系统存储过程sp_droplogin从SQL Server中删除登录用户Login03。在SQL 编辑器窗口中输入和执行语句,并在对象资源管理器中显示结果。 EXEC sp_droplogin'login03' 3、创建和管理数据库用户 e)创建登录名为u01、密码为passwd01、默认数据库为CAP并能连接到CAP数据 库的用户。 EXEC sp_addlogin'u01','passwd01','CAP' USE CAP EXEC sp_grantdbaccess'u01','u01' f)创建一个新用户U02。

实验三_数据选择器

深圳大学实验报告 课程名称数字电路与逻辑设计 实验名称数据选择器 学院信息工程学院 专业 指导教师周小安 报告人李城权学号 2015130156 实验时间 2016-10-26 提交时间 2016-11-9 教务处制

一、实验目的与要求 1.了解和正确使用MSI组合逻辑部件; 2.掌握一般组合逻辑电路的特点及分析、设计方法; 3.学会对所设计的电路进行静态功能测试的方法; 4.观察组合逻辑电路的竞争冒险现象。 二、实验内容与方法 数据选择器是常用的组合逻辑电路之一。它有若干个数据输入端,若干个数据控制端和一个输出端。在控制输入端加上适当的信号,即可从多个数据输入源中将所需要的数据信号选择出来,送到输出端。使用时也可以在控制输入端加上一组二进制编码器程序的信号,使电路按要求输出一串信号,所以它也是一钟可编程序的逻辑部件,也可以用来构造逻辑函数发生器。 如74LS153的逻辑表达式为 Y=A A D+A A D+A A D+A A D 1010 00112103 所以任意给定的三输入变量的逻辑函数军可用4选1数据选择器来实现。 用数据选择器实现单输出函数的方法主要有比较法和图表法。 比较法设计步骤如下: (1)选择接到数据选择端的函数变量。 (2)写出数据选择器输出的逻辑表达式。 (3)将要实现的逻辑函数转换为标准与或表达式。 (4)对照数据选择器输出表达式和待实现函数的表达式,确定数据输入端的值。 (5)连接电路。 图表法设计步骤如下: (1)选择接到数据选择端的函数变量。 (2)画出逻辑函数和数据选择器的真值表。 (3)确定各个数据输入端的值。 (4)连接电路。 三、实验步骤与过程 实验仪器: (1)RXB-1B数字电路实验箱; (2)集成电路74LS00(四2输入与非门)1片、74LS153(双4选1数据选择器)1片。

(完整word版)C语言运算符与表达式的练习题答案

C语言运算符与表达式的练习题 单项选择题 (1)以下选项中,正确的 C 语言整型常量是(D)。 A. 32L B. 510000 C. -1.00 D. 567 (2)以下选项中,(D)是不正确的 C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" (3)字符串的结束标志是(C)。 A. 0 B. '0' C. '\0' D. "0" (4)算术运算符、赋值运算符和关系运算符的运算优先级按从高到低依次为(B)。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运算、赋值运算 C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 (5)逻辑运算符中,运算优先级按从高到低依次为(D)。 A. && ! || B. || && ! C. && || ! D. ! && || (6)表达式!x||a==b 等效于(D)。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) (7)设整型变量 m,n,a,b,c,d 均为1,执行 (m=a>b)&&(n=c>d)后, m,n 的值是(A)。 A. 0,0 B. 0,1 C. 1,0 D. 1,1 *(8)设有语句 int a=3;,则执行了语句 a+=a-=a*=a; 后,变量 a 的值是(B)。 A. 3 B. 0 C. 9 D. -12 (9)在以下一组运算符中,优先级最低的运算符是(D)。 A. * B. != C. + D. = (10)设整型变量 i 值为2,表达式(++i)+(++i)+(++i)的结果是(B,上机13)。 A. 6 B. 12 C. 15 D. 表达式出错 (11)若已定义 x 和 y为double 类型,则表达式的值是(D)。

实验三 用户数据资料

实验三用户数据 一、目的 学习完本节,你将能掌握: 1.如何放号 2.如何进行号码分析 3.如何修改用户属性 4.如何进行用户线改号和用户号改线 二、准备工作 5.完成了系统的物理配置 6.掌握了号码分析在交换机系统中的作用 ZXJ10交换机的一个重要功能就是网络寻址,电话网中用户网络的地址就是电话号码。号码分析主要用来确定某个号码流对应网络寻址和业务处理方式。 ZXJ10交换机系统提供7种号码分析器:新业务号码分析器、CENTREX号码分析器、专网分析器、特服号码分析器、本地网号码分析器、国内长途业务号码分析器和国际长途业务号码分析器。 对于某一指定的号码分析选择子,号码按固定的顺序经过选择子规定的各种分析器。各种分析器严格按照顺序进行号码分析。 7.已做好数据备份。方法如下: 选择数据管理/数据备份/数据备份,进入数据备份与恢复页面,可进行备份与恢复。平常用得比较多的备份方式是“生成备份数据库的SQL文件”,即将数据库中的表备份成数据库文件*.SQL,存放在硬盘上的指定目录下:和“从SQL文件中恢复备份的数据库”,是“生成备份数据库的SQL文件”的逆过程,即将硬盘上某个目录下的数据库备份文件*.SQL倒回到数据库里,覆盖数据库中原有的表。 三、步骤 1.号码管理 选择数据管理/基本数据管理/号码管理/号码管理菜单,在号码管理截面中首先进入局号和百号组子页面。 1)增加局号 选择“网络类型”,一般为公众电信网;点击增加局号钮,进入增加局号窗口, 键入“局号索引”,一般从1开始编号; “局号(PQR)”,即局码,如可设为666;和 “号码长度”,一般为7或8,表示本局号码流长为7位或8位。 “描述”没有实际意义,为方便记忆。 点击确定钮,回到号码管理界面。则“局号属性”框中显示出刚刚创建的局号属性。 2)分配百号 点击分配百号钮,进入分配百号组窗口,选择刚才创建的“局号”666和“模块号”2,则左侧“可以分配的百号组:”框中列示出该局号可分配的若干百号组。以转移键将其中的一个百号组如00转移到右侧“可以释放的百号组:”框中。点击返回钮回到号码管理界面。选中“局号属性:”中的一项,则对应的百号组信息在“百号组:”框中列示出来。 注意此时该百号组的“使用情况”为空闲。 3)放号 在号码管理界面中进入用户号码子页面,点击放号钮,进入号码分配窗口。在“号码范围:”域选择“局号”如666,“百号”如00,则“可用的号码:”框中列示出该6660000

作业━━第 1 章(2)━━运算符与表达式

运算符与表达式 【学习要点】 1.掌握运算符的目数、优先级、结合性等概念。 2.掌握算术运算及其应用。 3.掌握自增、自减运算及其应用。 4.掌握关系、逻辑运算及其应用。 5.掌握位运算及其应用。 6.掌握赋值、复合赋值运算及其应用,掌握赋值兼容时的类型转换。 7.掌握表达式求值时类型的自动转换和强制转换。 8.掌握表达式的组成,掌握逻辑表达式的优化及其副作用。 9.掌握逗号运算符、sizeof运算符、条件运算符及其应用。 ------------------------------------------------------------------------------------------------------------------------------------------------- 【例题分析】 1.若int x,y,z;下列表达式中运算结果与x=y=24相同的是______。 A.x=(y=z=8,4*6) B.x=y=(z=8,4*6) C.x=y=z=8,4*6 D.x=(y=z=8),4*6 【答案】B 【解析】 ①C++语言的赋值运算有别于其它高级语言,逗号运算又是其它高级语言所没有的。 ②在赋值表达式中,可以有多个赋值运算符,计算顺序自右向左,运算优先级低,仅高于逗号运算符。 ③逗号既是分隔符,又是运算符,可以用一个逗号运算符或多个逗号运算符将多个表达式连接成逗号表达式,计算顺序自左向右,并将最后一个表达式的值作为整个逗号表达式的值,逗号运算优先级最低。 2.若int i=6,k=0;下列表达式中运算结果使k=7的是______。 A.k=i+++k B.k=k+i++ C.k=++i+k D.k=k+++i 【答案】C 【解析】 ①自增++、自减--运算符是C++语言特有的。 ②运算符++、--出现在变量的前面或后面,其运算结果是不同的。若++、--出现在变量前,则先将变量的值加1(或减1)后,再将变量的值参加运算;反之则先将变量的值参加运算,再将变量的值加1(或减1)。 ③自增、自减运算符的优先级高于算术运算符,因此对于k=i+++k:解释为i++,再加k;对于k=k+++i:解释为k++,再加i。 3.表达式‘A’+’B’+20的值是______。 【答案】151 【解析】不同类型的数据混合运算时,系统可以自动进行类型转换,将表示范围小的数据类型转换成另一操作数的相同类型后再参与运算,则转换为65+66+20=151。 4.若int e=8;double f=6.4,g=8.9;则f+int(e/3*int(f+g)/2)%4的值是______。 【答案】9.4 【解析】 ①不同类型的数据混合运算时,可以使用强制类型转换符,将一种数据类型强制转换成另一种数据类型后再参与运算。 ②表达式中:e/3的值是整型数2,int(f+g)的值是整型数15,int(e/3*int(f+g)/2)的值是整型数15,15%4的值是整型数3,最后加上实型数f,得到最终值是实型数9.4。 1

实验三 数据通路(总线)实验

实验三数据通路(总线)实验 一、实验目的 (1)将双端口通用寄存器堆和双端口存储器模块联机; (2)进一步熟悉计算机的数据通路; (3)掌握数字逻辑电路中故障的一般规律,以及排除故障的一般原则和方法; (4)锻炼分析问题与解决问题的能力,在出现故障的情况下,独立分析故障现象,并排除故障。 二、实验电路 图8示出了数据通路实验电路图,它是将双端口存储器实验模块和一个双端口通用寄存器堆模块(RF)连接在一起形成的。双端口存储器的指令端口不参与本次实验。通用寄存器堆连接运算器模块,本实验涉及其中的操作数寄存器DR2。 由于双端口存储器RAM是三态输出,因而可以将它直接连接到数据总线DBUS上。此外,DBUS上还连接着双端口通用寄存器堆。这样,写入存储器的数据可由通用寄存器提供,而从存储器RAM读出的数据也可送到通用寄存器堆保存。 双端口存储器RAM已在存储器原理实验中做过介绍,DR2运算器实验中使用过。通用寄存器堆RF(U32)由一个ISP1016实现,功能上与两个4位的 MC14580并联构成的寄存器堆类似。RF内含四个8位的通用寄存器R0、RI、R2、R3,带有一个写入端口和两个输出端口,从而可以同时写入一路数据,读出两路数据。写入端口取名为WR端口,连接一个8位的暂存寄存器(U14)ER,这是一个74HC374。输出端口取名为RS端口(B端口)、RD端口(A端口),连接运算器模块的两个操作数寄存器DR1、DR2。RS端口(B端口)的数据输出还可通过一个8位的三态门RS0(U15)直接向DBUS输出。 双端口通用寄存器堆模块的控制信号中,RS1、RS0用于选择从RS端口(B 端口)读出的通用寄存器,RD1、RD0用于选择从RD端口(A端口)读出的通用寄存器。而WR1、WR0则用于选择从WR端口写入的通用寄存器。WRD是写入控制信号,当WRD=1时,在T2上升沿的时刻,将暂存寄存器ER中的数据写入通用寄存器堆中由WR1、WR0选中的寄存器;当WRD=0时,ER中的数据不写入通用寄存器中。LDER信号控制ER从DBUS写入数据,当LDER=1时,在T4的上升沿,DBUS上的数据写入ER。RS_BUS#信号则控制RS端口到DBUS的输出三态门,是一个低电平有效信号。以上控制信号各自连接一个二进制开关K0—Kl5。

实验三选数据选择器实验报告

实验三选数据选择器实 验报告 集团公司文件内部编码:(TTT-UUTT-MMYB-URTTY-ITTLTY-

实验三、八选一数据选择器 一、实验目的: 1.熟悉Quartus II6.0软件的使用和FPGA设计流程 2.用VHDL语言进行八选一数据选择器的设计 二、实验步骤: 一.建立文件夹:在D盘“xingming”的文件夹下建立一个名为“choice8”的文件夹。 二.建立新工程 1.双击桌面上Quartus II6.0 的图标,启动该软件。 2.通过File => New Project Wizard… 菜单命令启动新项目向导。在 随后弹出的对话框上点击Next按钮,在 What is the working directory for this project 栏目中设定新项目所使用的路径:D:\xingming\choice8;在 What is the name of this project 栏目中输入新项目的名字:choice8,点击 Next 按钮。在下一个出现的对话框中继续点击Next,跳过这步。 3.为本项目指定目标器件:选择器件系列为ACEX1K ,选择具体器件为 EP1K30TC144-3 1728 24576 ,再点击Next。在弹出的下一对话框中继续点击Next ,最后确认相关设置,点击Finish按钮,完成新项目创建。 三.设计输入 1.建立一个VHDL文件。通过 File => New 菜单命令,在随后弹出的对 话框中选择 VHDL File选项,点击 OK 按钮。通过 File => Save As 命令,将其保存,并加入到项目中。 2.在VHDL界面输入8选1数据选择器程序,然后通过File => Save

C详细答案复习题c

第3章运算符和表达式 丰富的运算符可使表达式方便、简捷。初学者一下掌握这么多操作符会有压力。可通过写或计算表达式的练习,以及各章程序实例中出现的表达式,进一步熟悉运算符。 3.1 表达式的基本概念 对数据进行各种运算的符号为运算符,参与运算的数据为操作数。表达式构成:常量、变量、有返回值的函数调用是表达式,表达式加圆括号、或用运算符作正确连接后也是表达式。 圆括号左、右括号个数要相同,多层括号时内层括号中的运算优先;整个表达式必须写在同一行上。 a·x3+b·x2+c·x+d 写作 a*x*x*x+b*x*x+c*x+d 或 ((a*x+b)*x+c)*x+d; 写作 1/(1+1/(1+x));等等。 C运算符:算术、关系、逻辑、条件、赋值、逗号运算符,等等。 根据参与运算的操作数个数,运算符可分为单目、双目以及三目运算符。两个操作数的运算符是双目运算符,“单目运算符”只有一个操作数。三目运算符是C语言所特有的,它有三个操作数。 不同运算符参与运算时有优先级问题。如先乘除、后加减。 同级运算一般是从左向右进行。特例如赋值“x=y=3”,先计算y=3、再计算x=y。特例将特别指出,一般按缺省。 主要介绍算术(包括自增自减)、关系、逻辑、赋值、逗号运算符,以及由这些运算符构成的各类表达式。 3.2 算术运算符与算术表达式 内容:算术运算符及其功能,算术表达式,优先级、运算时的类型转换规则。 3.2.1 算术运算符 1. 算术运算符 C的算术运算符有:+ - * / %(取余) 其中“-”可作单目运算符,如-5,表达式3*-5值为-15。 各运算符优先级:先乘除、后加减;取余的优先级和乘除相同。 优先级的讨论,应限于同一层括号内,同级运算一般从左到右执行。具体规则如下:

第三章 数据类型、运算符与表达式 练习与答案

第三章数据类型、运算符与表达式 [试题分类]: 1.{ 下列程序执行后的输出结果是________________。 #define MA(x) x*(x-1) mian() \{int a=1,b=2; pirntf(“%d\n”,MA(1+a+b));\} } 试题编号:E54749 答案:8 题型:填空题 2.C语言中基本数据类型包括整型、实型、字符型。() 试题编号:E57279 答案:正确 题型:判断题 3.{ 要得到下列结果: a, b A, B 97,98,65,66 请按要求完善程序。 main( ) \{char c1,c2; c1=’a’;c2=’b’; printf(“%c,%c ”,c1,c2); printf(“%c,%c\n”, ___); printf(“%d,%d,%d,%d\n”,_c1,c2,c1-32,c2-32); \} } 试题编号:E55118 答案:c1-32,c2-32 题型:填空题 4.能表示“整型变量x的绝对值小于5”的表达式是___。(注意本题答案中规定不得使用系统函数)。 试题编号:E55113 答案:(x<5)&&(x>-5) 题型:填空题

5.设有定义"int a,b=10;",则执行语句"a=b<<2+1;"后a的值___。试题编号:E55111 答案:80 题型:填空题 6.设有定义"int x=4;",则表达式"x+=x*=x+1"的值是___。 试题编号:E55110 答案:40 题型:填空题 7.有下列运算符:>>、&&、|、!=,优先级别最高的是___。 试题编号:E55109 答案:>> 题型:填空题 8.用十进制来表示无符号短整型数据的数值范围是___。 试题编号:E55108 答案:0~65535 题型:填空题 9.{ 设有以下变量说明语句 char w='A'; int x=10; float y=20; double z=30; 则执行赋值语句 x=w*x+z-y; 之后x所得值的数据类是___。 } 试题编号:E55106 答案:int型 & 整型 题型:填空题 10.{ 设有变量说明语句 double d=5.4; int a,b; 则执行下述语句组的输出结果是___。 b=((a=2.1)+1.5)/3.6; d*=b; printf("%f\n",d); } 试题编号:E55104

表达式与语句

表达式与语句 前面已经提到过表达式,相信大家对表达式也有了一个初步的认识,它是由常量、变量、运算符组合(到以后讲函数时,函数也可以是组成表达式的元素),计算以后返回一个结果值。表达式的结束标志是分号(;),C语言中所有的语句和声明都是用分号结束,在分号出现之前,语句是不完整的。例如: 1+2; Counter/3+5; Height*Width; 表达式本身什么事情都不做,只是返回结果值。在程序不对返回的结果值做任何操作的情况下,返回的结果值不起任何作用,表达式的作用有两点,一个是放在赋值语句的右边,另一个是作为函数的参数(以后再介绍)。 表达式返回的结果值是有类型的。表达式隐含的数据类型取决于组成表达式的变量和常量的类型。因此,表达式的返回值有可能是某种大小的整型,或者是某精度的浮点型,或者是某种指针类型。 这里面就有类型转化的问题了,在前面说整型运算的时候也提到过。类型转化的原则是从低级向高级自动转化(除非人为的加以控制)。计算的转换顺序基本是这样的:

字符型-->整型-->长整型-->浮点型-->单精度型-->双精度型 就是当字符型和整型在一起运算时,结果为整型,如果整型和浮点型在一起运算,所得的结果就是浮点型,如果有双精度型参与运算,那么答案就是双精度型了。 强制转换是这样的,在类型说明符的两边加上括号,就把后面的变量转换成所要的类型了。如: (int) a; (float) b; 第一个式子是把a转换成整型,如果原先有小数部分,则舍去。 第二个式子是把b转换成浮点型,如果原先是整数,则在后面补0。 每一个表达式的返回值都具有逻辑特性。如果返回值为非0,则该表达式返回值为真,否则为假。这种逻辑特性可以用在程序流程控制语句中。 有时表达式也不参加运算,如: if(a||b) ………… 5>3?a++:b++; 当a为真时,b就不参加运算了,因为不管b如何,条件总是真。 二、语句 (一)、赋值语句

数电 实验四 数据选择器及其应用 实验报告

实验四数据选择器及其应用 一、实验目的 1.掌握中规模集成数据选择器的逻辑功能及使用方法 2.学习用数据选择器构成组合逻辑电路的方法 二、实验设备与器件 1.+5V直流电源 2.逻辑电平开关 3.逻辑电平显示器 4.74LS151 三、实验原理 数据选择器又叫“多路开关”。数据选择器在地址码(或叫选择控制)电位的控制下,从几个数据输入中选择一个并将其送到一个公共的输出端。数据选择器的功能类似一个多掷开关,如图7-1所示,图中有四路数据D0~D3,通过选择控制信号A1、A0(地址码)从四路数据中选中某一路数据送至输出端Q。 数据选择器为目前逻辑设计中应用十分广泛的逻辑部件,它有2选1、4选1、8选1、16选1等类别。 数据选择器的电路结构一般由与或门阵列组成,也有用传输们开关和门电路混合而成的。 八选一数据选择器74LS151 74LS151为互补输出的8选1数据选择器,引脚排列如图4-2,功能如表4-1。 选择控制端(地址端)为A2~A0,按二进制姨妈,从8个输入数据D0~D7中,选择一个需要的数据送到输出端A, S为使能端,低电平有效。

1)使能端?S=1时,无论A2~A0状态如何,均无输出(Q=0,?Q=1),多路开关被禁止。2)使能端S=0时,多路开关正常工作。根据地址码A1、A2、A3的状态选择D0~D7中某一个通道的数据输送到输出端Q。 此处以A2A1A0=010为例,则选择D2数据到输出端,即Q=D2。 D2为0,?Q亮。D2为1,Q亮。 使能端为1,D2为1,?Q亮。使能端为1,D2变为0,?Q仍然亮。

74LS151功能测试结果表4-1 实现逻辑函数F(AB)=A?B+?AB+A B 设计过程:逻辑表

C语言运算符与表达式的练习题

C语言运算符与表达式的练习题 (作业写到纸质作业本上,在规定时间内交给助教批阅,不要 再网上提交) 一、单项选择题 (1) 以下选项中,正确的C 语言整型常量是。 A. 32L B. 510000 C. -1.00 D. 567 (2) 以下选项中,是不正确的C 语言字符型常量。 A. 'a' B. '\x41' C. '\101' D. "a" (3) 在C 语言中,字符型数据在计算机内存中,以字符 的形式存储。 A. 原码 B. 反码 C. ASCII 码 D. BCD码 (4) 字符串的结束标志是。 A. 0 B. '0' C. '\0' D. "0" (5) 算术运算符、赋值运算符和关系运算符的运算优先级按 从高到低依次为。 A. 算术运算、赋值运算、关系运算 B. 算术运算、关系运 算、赋值运算

C. 关系运算、赋值运算、算术运算 D. 关系运算、算术运算、赋值运算 (6) 逻辑运算符中,运算优先级按从高到低依次为。 A. &&,!,|| B. ||,&&,! C. &&,||,! D. !,&&,|| (7) 表达式!x||a==b 等效于。 A. !((x||a)==b) B. !(x||y)==b C. !(x||(a==b)) D. (!x)||(a==b) (8) 设整型变量m,n,a,b,c,d 均为1,执行(m=a>b)&&(n=c>d)后, m,n 的值是。 A. 0,0 B. 0,1 C. 1,0 D. 1,1 (9) int b=0,x=1;执行语句if(x++) b=x+1; 后,x,b 的值依次为。 A. 2,3 B. 2,0 C. 3,0 D. 3,2 (10) 设有语句int a=3;,则执行了语句a+=a-=a*=a; 后,变量 a 的值是。 A. 3 B. 0 C. 9 D. -12 (11) 在以下一组运算符中,优先级最低的运算符是。 A. * B. != C. + D. =

相关文档
最新文档