好文档 - 专业文书写作范文服务资料分享网站

c语言

天下 分享 时间: 加入收藏 我要投稿 点赞

6.假设所有变量均为整形,则表达式(a=2,b=5,b++,a+b)的值是(b)。 a)7 b)8 c)6 d)2 逗号表达式,返回的是最后一个下面

7.四个选项中,均是不合法的用户标示符的选项是__c___ a) A P_0 do b)float la0 _A c)b-a gotoint d)_123 temp INT

C语言规定的标识符只能由字母、数字、下划线三种字符组成,第一个字符必须为字母或下划线,并且不能使用c语言中关键字作为标识符。而选项c中的goto和int是关键字,b-a中的“-”不是组成标识符的三种字符之一。

14.在c语言中,要求运算数必须是整型的运算符是__d______. a)/ b)++ c)!= d)% % 整除求余运算,两个运算数必须是整型

17.设变量a 是整型,f是实型,i是双精度型,则表达式 10+'a'+i*f值的数据类型为___c____.

a) int b)float c)double d)不确定

?

首先计算i*f,因为i为double,f是float,按照自动转换规则,编译器将其结果转换为double

?

然后计算a+i*f,此时+号后面是double,a是整形,因此编译器首相将a转换为double然后进行结算

结果是double

18.以下程序的输出结果是__d______.(注意:_表示空格) main() {

printf(\printf(\}

a)*s1=chinabeijing_ _ _* b)*s1=chinabeijing_ _ _* *s2=**chi* *s2=chi_ _*

c)*s1=*_ _chinabeijing d) *s1=_ _ _chinabeijing* *s2=**chi* *s2=chi_ _*

%ms:输出的字符串占m列,如果字符串本身长度大于m,则突破获m的限制,将字符串全部输出。若串长小于m,则左补空格。

%-ms:如果串长小于m,则在m列范围内,字符串向左靠,右补空格。

19.阅读以下程序,当输入数据的形式为:25,13,10,正确的输出结果为___d___. main() {

intx,y,z;

scanf(\,&x,&y,&z); printf(\ }

a)x+y+z=48 b)x+y+z=35 c)x+z=35 d)不确定值

25,13,10 这里的逗号, 正确的输入形式为 25 13 10 以空格或回车键分割

21.若有以下定义,则正确的赋值语句是__b________. inta,b; float x;

a)a=1,b=2, b)b++; c)a=b=5 d)b=int(x);

A是赋值语句,句子和句子之间用分号隔开。而D是强制性转化,应该写成(int)x。C中,c语言是允许这样赋值的,但是最后缺分号。至于B的话,其实,a,b都没有初始化,是一个任意值,不过语法来说的话,B是正确的相当于b=b加1 22.逻辑运算符两侧运算对象的数据类型___d_

a)只能是0或1 b)只能是0或非0正数 c)只能是整型或字符型数据 d) 可以是任何类型的数据

如果是C语言,并且不是按位逻辑运算,答案肯定是D

因为C中的规定是非零数字表示真,0表示假,而逻辑运算就是对真假进行计算,所以在C

中是任何类型的数据都可以进行逻辑运算,只要是非零数字就会被认为是真,再进行逻辑运算时按真处理。

如果是C语言,并且是按位逻辑运算(比如按位与&运算符),答案C正确,答案A肯定错。 因为对于按位逻辑,是进行的二进制按位计算,因此要求两侧操作数是整型,当然字符型数据可以按ASCII码自动转换为整型,所以字符数据也可以进行按位逻辑运算。按位逻辑运算不可能只能对0或者1进行计算,因为那样的话就失去意义了,只能对0或者1操作还有什么意义,就是4种结果,可能吗?

23.以下关于运算符优先顺序的描述中正确的是__c___. a)关系运算符 < 算术运算符 < 赋值运算符 < 逻辑与运算符 b)逻辑与运算符 < 关系运算符 < 算术运算符 < 赋值运算符 c)赋值运算符 < 逻辑与运算符 < 关系运算符 < 算术运算符 d)算术运算符 < 关系运算符 < 赋值运算符 < 逻辑与运算符

算术、关系、逻辑运算符

用来表示各种运算的符号称为运算符。例如,数值运算中经常用到的加、减、乘、除符号就是运算符。由于它们是进行算术运算的,所以称为算术运算符。

运算符必须有运算对象。C语言中的运算符的运算对象可以是一个,称单目运算符;运算对象也可以是两个,称双目运算符;运算对象还可以是三个,称三目运算符。单目运算符若放在运算对象的前面称为前缀单目运算符;若放在运算对象的后面称为后缀单目运算符。双目运算符都是放在两个运算对象的中间。三目运算符在C语言中只有一个(条件运算符),是夹在三个运算对象之间的。

每个运算符都代表对运算对象的某种运算,都有自己特定的运算规则。每个运算符运算的对象都规定了数据类型,同时运算结果也有确定的数据类型。

用运算符把运算对象连接起来所组成的运算式在C语言中称为\表达式\。每个表达式都可以按照运算符的运算规则进行运算,并最终获得一个值,称为表达式的值。

当表达式中出现多个运算符,计算表达式值时,就会碰到哪个先算,哪个后算的问题,我们把这个问题称为运算符的优先级。计算表达式值时,优先级高的运算要先进行。注意,在复杂的表达式中,用圆括号括住的部分要先算,其优先级别高于任何运算符。若在圆括号中又有圆括号,则内层圆括号优先于外层圆括号。

┌基本算术运算符( +,-,*,/,% ) ┌算术运算符┤

│ └增1减1运算符( ++,-- ) │

│关系运算符( >,<,==,>=,<=,!= ) │逻辑运算符( !,&&,|| ) │

│ ┌基本赋值运算符( = ) ┌基本运算符┤赋值运算符┤

│ │ └算术自反赋值运算符( +=,-=,*=,/=,%= ) │ │

│ │逗号运算符(,) │ │条件运算符(? :) C语言运算符┤ │数据长度运算符(sizeof) │ │

│ │ ┌位逻辑运算符( ~,&,|,^ ) │ └位运算符┤位移位运算符( >>,<< )

│ └位自反赋值运算符( &=,|=,^=,>>=,<<= ) │

│ ┌强制运算符( ( ) ) └专用运算符┤下标运算符( [ ] ) │成员运算符( ->,.) └指针运算符( &,*,+,- )

C语言运算符分类

注意C语言中的运算符都是键盘上的符号(如 |、~、^ 等)或若干符号的组合(如&&、||、>>、<<、->等),书写或输入时不要出错。此外,少数运算符号有双重含义,主要有下列几个: (1)\号。在算术运算中既表示单目的取正运算,又可表示双目的加法运算,在指针运算中表示双目的加法运算。

(2)\号。在算术运算中既表示单目的取负运算,又可表示双目的减法运算,在指针运算中表示双目的减法运算。

(3)\号。在算术运算中表示双目的乘法运算,在指针运算中表示指针变量指向的变量。 (4)\号。在位逻辑运算中表示双目\与\运算,在指针运算中表示取地址的运算。 这些两重含义运算符的理解与当时的运算对象有关,在学习时要注意区分。

一、算术运算符

算术运算符包括基本算术运算符和增1、减1运算符,其中基本运算符常简称为算术运算符。

1. 基本算术运算符

基本算术运算符是对数据进行简单算术运算的。要注意字符型数据也可以看成整型数据,参加基本算术运算。

对象数 名称 运算符 运算规则 单目 正负 加 减 双目 乘 除 模 + - + - * / % 取原值 取负值 加法 减法 乘法 除法 整除取余 整型 整型 整型或实型 整型或实型 自左向右 运算对象 运算结果 结合性 自右向左 双目加(+)、减(-)、乘(*)运算和普通算术运算中的加法、减法和乘法相同。例如,2.1+3.6的结果是5.7;2.1-3.6的结果是-1.5;2.1*3的结果是6.3。

双目除运算(/)和运算对象的数据类型有关。若两个对象都是整型数据,该运算称为\整除\,即获得的商是整数。若商有小数,则截去小数部分。若两个运算对象有一个或两个都是实型,则运算结果是实型。例如,14/5,结果为2;而14/5.0,则结果为2.8。

双目模运算(%)的对象必须是整型数据,结果是整除后的余数。例如,14%5的结果为4(商为2);14%4的结果为2(商为3)。注意运算结果的符号与被除数相同,例如,13%3、13%-3的结果均为1(商分别为4、-4);-13%3、-13%-3的结果均为-1(商分别为-4、4)。 算术运算符的优先级规定如下:

⑴单目基本算术运算符 优先于 双目基本算术运算符 ⑵*、/、% 优先于 +、-

⑶同级单目基本算术运算符的结合性是自右向左 ⑷同级双目基本算术运算符的结合性是自左向右

c语言

6.假设所有变量均为整形,则表达式(a=2,b=5,b++,a+b)的值是(b)。a)7b)8c)6d)2逗号表达式,返回的是最后一个下面7.四个选项中,均是不合法的用户标示符的选项是__c___a)AP_0dob)floatla0_Ac)b-agotointd
推荐度:
点击下载文档文档为doc格式
22gu582yd50vngl59epg
领取福利

微信扫码领取福利

微信扫码分享