C语言第4次作业运算符与

C语言第4次作业运算符与

目单选题:

1、若变量c为char类型,能正确判断出c为小写字母的表达式是

A. 'a'<=c<= 'z'

B. (c>= 'a')||(c<= 'z')

C. ('a'<=c)and ('z'>=c)

D. (c>= 'a')&&(c<= 'z')

学生答案:D

参考答案:D

2、以下程序的输出结果是

mai n()

{ int x=0.5; char z='a';

printf("%d\n", (x& 1)&&(z<'z') ); }

A. 0

B. 1

C. 2

D. 3

学生答案:A

参考答案:B

3、C语言中运算对象必须是整型的运算符是

A. %=

B. /

C. =

D. 〈二

学生答案:A

参考答案:A

4、有如下程序段

int a=14,b=15,x;

char c='A';

x=(a&&b)&&(cv'B');

执行该程序段后,x的值为

A. ture

B. false

C. 0

D. 1

学生答案:D

参考答案:D

5、设有int x=11; 则表达式(x++ * 1/3) 的值是

A. 3

B. 4

C. 11

D. 12

学生答案: A

参考答案: A

6、设int x=1, y=1; 表达式(!x||y--) 的值是

A. 0

B. 1

C. 2

D. -1

学生答案: B

参考答案: B

7、下列程序的运行结果是#include < stdio.h > main() { int a=2,c=5; printf("a=%d,b=%d\n",a,b);

}

A. a=%2,b=%5

B. a=2,b=5

C. a=d, b=d

D. a=%d,b=%d

学生答案: B

参考答案: B

8、判断字符型变量x 是否是大写字母的正确表达式是___

A. 'A' <= x <='z'

B. (x>=A) && (x <= Z)

C. ('A'<= x) && ('Z' >= x)

D. (x >='A') && (x <='Z')

学生答案: D

参考答案: D

9、若已定义X和丫为double型,则表达式:x=1,y=x+3/2的值是 _____

A. 1

B. 2

C. 2.0

D. 2.5

学生答案: C

参考答案: c

10、设有以下定义:

int x=10,y=3,z;

printf("%d\n",z=(x%y,x/y))

的输出结果是 ____

A. 1

B. 0

C. 4

D. 3

学生答案: D

参考答案: D

11、设ch是char型变量,其值为A,且有下面的表达式: ch=(ch>='A'&&ch<='Z')?(ch+32):ch

上面表达式的值是

A. A

B. a

C. Z

D. z

学生答案: B

参考答案: B

12、若有说明和语句:

int a=5;

a++;

此处表达式a++的值是

A. 7

B. 6

C. 5

D. 4

学生答案: C

参考答案: C

13、假定有以下变量定义:

int k=7 ,x=12;

则能使值为 3 的表达式是_________ 。

A. x%=(k%=5)

B. x%=(k-k%5)

C. x%=k-k%5

D. (x%=k)- (k%=5)

学生答案: D

参考答案: D

14、设x、y、z 和k 都是int 型变量,则执行表达式:x= (y=4, z=16, k=32)后,x 的值为________ 。

A. 4

B. 16

C. 32

学生答案: C

参考答案: C

15、设CH是字符型变量,其值为'A',下列表达式的值是

CH=(CH > =A&&CH < ='Z')?(CH+32):CH

A. A

B. a

C. z

D. Z

学生答案: B

参考答案: B

16、设有如下定义:

int a=1,b=2,c=3,d=4,m=2,n=2;

则执行表达式:(m=ad后,m的值为_____ .

A. 1

B. 2

C. 3

D. 0

学生答案: D

参考答案: D

17、_______________________________________ 设int b=2; 表达式b/(b*2) 的值是____________________________ .

A. 0

B. 0.5

C. 0.500000

D. 0.00000

学生答案: A

参考答案: A

18、设x、y、z 和k 都是int 型变量,则执行表达式:x= (y=4, z=16, k=32)后,x 的值为________________ .

A. 4

B. 16

C. 32

D. 52

学生答案: C

参考答案: C

19、阅读下列程序段, 其正确输出为( ) a=10;b=50;c=30;

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

A. a=10,b=50,c=10

B. a=10,b=30 c=10

C. a=50,b=30,c=10

D. a=50,b=30,c=50

学生答案: B

参考答案: B

20、设A=3,B=4, 执行

printf("%d,%d",(A,B),(B,A)); 的输出是___________ .

A. 3,4

B. 4,3

C. 3,3

D. 4,4

学生答案: B

参考答案: B

21、若有定义和语句:char s[10]= " abed" ;printf( " % s\n " ,s); 则结果是(以下卩代表空格);

A. 输出abcd

B. 输出a

C. 输出abcd卩卩卩卩卩

D.

学生答案: A

参考答案: A

22、以下符合C语言语法的赋值表达式是

A. d=9+e+f=d+9

B. d=9+e,f=d+9

C. d=9+e,e++,d+9

D. d=9+e++=d+7

学生答案:C

参考答案:C

23、语句:printf("%d \n",12&& 12) ;的输出结果是

A. 12

B. 1

C. 24

D. 0

学生答案:B

参考答案:B

24、以下运算符中优先级最低的是

A. &&

B. &

C. ||

D. |

学生答案:C

参考答案:C

25、printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列,如果字符串长度大于5,则输出按方式

A. 从左起输出该字符串,右补空格

B. 按原字符长从左向右全部输出

C. 右对齐输出该字串,左补空格

D. 输出错误信息

学生答案:B

参考答案:B

目多选题:目判断题:

目填空题:

1、设x和y均为int型变量,且x=1,y=2,则以下表达式:0+x/y 的值为。

学生答案:0

2、计算表达式6*7%2+7%2*5的值是______ .

参考答案: 0

学生答案: 5 参考答案: 5

3、若有说明语句int I , j ,1=6,执行j= (++I) +(l++)后,j

的值是 ___ 。

学生答案: 14

参考答案: 14

4、输出为_________

main( )

{char x,y;

x='a'; y='b'; printf("xy\bmn\r");

printf("%c\\%c\\n",x,y);

printf("%c\a\n",' \65 ');}

学生答案: a\b\n

参考答案: a\b\n 5

5、写出下列表达式运算后a 的值设原来a=12

1) a+=a

2) a-=a

3) a/=a+a

4) a+=a-=a * = a

学生答案: 24 0 0 -132

参考答案: 24,0,0,0

&若a,b和c均是int型变量,则计算表达式后,

a 值为______ ,

b 值为 ______ ,

c 值为__________

a=(b=4)+(c=2)

学生答案: 6 4 2

参考答案: 6,4,2

7、若有定义:int a=2,b=3;float x=3.5,y=2.5; 则下面表达式的值为 _______

(float)(a+b)/2+(int)x%(int)y

学生答案: 3

参考答案: 3.500000

8、若x 和n 均是整型变量,且x 的初值为12,n 的初值为5,

则计算表达式后x 的值为____________

x%=(n%=2)

学生答案: 0

参考答案: 0

9、若有以下定义,则计算表达式y+=y-=m*=y 后的y 值是

int m=5,y=2;

学生答案: -16

参考答案: -16

10、已知字母a的ASCII码为十进制数97,且设ch为字符型变

量,

则表达式ch='a'+'8'-'3' 的值为______________

学生答案: 102

参考答案: 'f'

11、假设m是一个三位数,从左到右用a,b,c表示各位的数字,则从左到右各个数字是bac 的三位数的表达式是_____________ 学生答案: a=m/100 b=(m/10)%10 c=m%10

参考答案: (m/10)%10*100+m/100*10+m%10

12、表示"整数x的绝对值大于5"时值为"真"的C语言表达式是

学生答案: x>5||x<-5

参考答案: x>5||x<-5

C语言中的运算符

无论是加减乘除还是大于小于,都需要用到运算符,在C语言中的运算符和我们平时用的基本上都差不多。 运算符包括赋值运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运算符、关系运算符、自增自减运算符。大多数运算符都是二目运算符,即运算符位于两个表达式之间。单目运算符的意思是运算符作用于单个表达式。(具体什么是表达式下一节再说) 一、赋值运算符 赋值语句的作用是把某个常量或变量或表达式的值赋值给另一个变量。符号为‘=’。这里并不是等于的意思,只是赋值,等于用‘==’表示。 注意:赋值语句左边的变量在程序的其他地方必须要声明。 得已赋值的变量我们称为左值,因为它们出现在赋值语句的左边;产生值的表达式我们称为右值,因为她它们出现在赋值语句的右边。常数只能作为右值。 例如: count=5; total1=total2=0; 第一个赋值语句大家都能理解。 第二个赋值语句的意思是把0同时赋值给两个变量。这是因为赋值语句是从右向左运算的,也就是说从右端开始计算。这样它先total2=0;然后total1=total2;那么我们这样行不行呢? (total1=total2)=0; 这样是不可以的,因为先要算括号里面的,这时total1=total2是一个表达式,而赋值语句的左边是不允许表达式存在的。 二、算术运算符 在C语言中有两个单目和五个双目运算符。 符号功能 + 单目正 - 单目负 * 乘法 / 除法 % 取模 + 加法 - 减法 下面是一些赋值语句的例子,在赋值运算符右侧的表达式中就使用了上面的算术运算符: Area=Height*Width; num=num1+num2/num3-num4; 运算符也有个运算顺序问题,先算乘除再算加减。单目正和单目负最先运算。 取模运算符(%)用于计算两个整数相除所得的余数。例如: a=7%4; 最终a的结果是3,因为7%4的余数是3。 那么有人要问了,我要想求它们的商怎么办呢? b=7/4; 这样b就是它们的商了,应该是1。

C语言 课后作业题

C语言作业题 【输出形式】用户在下一行显示输出结果 【样例输入】3.47 【样例输出】3 【样例说明】与输入值3.47接近的整数为3和4,3.47比3.5小,舍掉小数部分,结果为3。 【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:c0104.c。 当前编程题:第一次作业--- 计算空格换行个数 5. 【问题描述】 编写一程序,分别计算所输入的字符串中空格,换行符的个数。 【输入形式】 输入可以是键盘上的任意字符。 【输出形式】 分别输出空格,换行符的个数,输出的结果一行显示,数字之间以空格格开。 【输入样例】 bb ss pp= fz 【输出样例】 2 1 【样例说明】 字符b与s之间有一个空格,s与p之间有一个空格,p与f之间有一个换行。 【评分标准】 结果完全正确得20分,每个测试点4分。提交程序名为:c0105.c。 当前编程题:第一次作业--- 整数组合(选做题) 6. 【问题描述】 假设unsigned short类型占16位,x、y、z都是short类型。编写一程序,从键盘输入x,y 的值(十进制形式),然后将x的高8位作为z的高8位,y的高8位作为z的低8位,最后输出z的值(十进制形式)。 【输入形式】 以十进制形式输入x和y的值,以空格隔开。 【输出形式】 以十进制形式在新的一行上输出z值。 【输入样例】 840 2177 【输出样例】 776 【样例说明】 840的二进制形式为:0000 0011 0100 1000

2177的二进制形式为:0000 1000 1000 0001 将840的高8位作为结果的高8位,2177的高8位作为结果的低8位, 所以结果为:0000 0011 0000 1000,即十进制形式为:776 【评分标准】 结果完全正确得20分,每个测试点4分。提交程序名为:c0106.c。 当前编程题:第二次作业--- 数字排序 1. 【问题描述】编写一个程序,将输入的三个数从小到大排列出来。 【输入形式】用户在第一行输入三个数字,每个数字用空格分开。 【输出形式】程序在下一行按照从小到大的顺序将三个数字输出出来,每个数字也用空格分开。要求程序可以处理整数和浮点数两种输入情况的比较。 【样例输入】2.4 5.6 1.5 【样例输出】1.5#2.4#5.6 #表示空格(要求输出时输出空格,而不是输出#,这里#只是表示空格而已!) 【样例说明】输入3个数字,每个数字之间用空格分开,并且进行从小到大排列,最后进行输出。这里的数字可以是整数,也可以是浮点数。 提示:输入时以%f格式读入到float类型的变量中,排完序以后,输出时以%g格式输出即可。 【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:sort.c。 当前编程题:第二次作业--- 找最大最小整数 2. 【问题描述】编写一个程序,用户输入若干整数,试找出其中的最大数和最小数。【输入形式】用户在第一行待输入数据个数,在第二行输入数据。 【输出形式】程序在下一行输出数据的最大值和最小值 【样例输入】 5 89 62 96 74 52 【样例输出】96 52 【样例说明】用户第一次输入的为数据个数,在下一行依次输入数据。输出为5个数中的最大值和最小值,输出时候两个数之间用空格分隔。 【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:getmaxandmin.c 当前编程题:第二次作业--- 日期天数转换 3. 【问题描述】编写一个程序,用户输入日期,计算该日期是这一年的第几天。 【输入形式】用户在第一行输入一个日期(年月日,中间以空格分割) 【输出形式】程序在下一行输出一个整数 【样例输入】2006 2 21 【样例输出】52 【样例说明】用户以年月日的格式输入,中间以空格分割,程序计算出该天是输入年份的第

c语言作业

1、用下面的scanf函数输入数据,使a=10, b=20, c1='A', c2='a', x=1.5, y=-3.75, z=67.8,请问在键盘上如何输入数据?scanf("%5d%5d%c%c%f%f%*f,%f", &a,&b,&c1,&c2,&x,&y,&z); 2、设圆半径r=1.5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf函数输入数据,输出计算结果,输出时要求有文字说明,取小数点后2位数字 第三次作业 1、有3个整数a,b,c,由键盘输入,输出其中最大的数。 2、有一个函数: x x<1 y= 2x-1 1<=x<10 3x-11 x>=10 写一段程序,输入x,输出y的值。 3、给出一百分制成绩,要求输出成绩等级A、B、C、D、E。90分以上为A,80-89分为B,70-79为C,60-69为D,60分以下为E。 4、给一个不多于5位的正整数,输出这个数是几位数。 第四次作业 1、给一个不多于5位的正整数,要求: a.求出它是几位数;+ b.分别输出每一位数字; c.按逆序输出各位数字,例如:原数为321,应输出123。 2、教材P112页第5.8题(if语句解法创建一个独立文件,switch语句解法创建一个独立文件 第五次作业 1、输入两个正整数m和n,求其最大公约数和最小公倍数。(经典题) 2、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数,并输出。 3、求s=a+aa+aaa+aaaa+....+(a...a)之值,其中a是一个数字,n表示a的位数。 1、输入两个字符串,使用指针p将两个字符串按次序复制到数组c中。例:输入“zhe"和"jiang",将"zhejiang"保存在数组c中。操作时要借助指针p。(提示:1、三个字符数组长度为多少? 2、指针p是什么类型?)2、在C盘创建一个文本文件,文件名为"1.dat",文件内容如下:1,2,3,4 编写程序自动从文件"1.dat"文件中读取数据,每个数据加100后,再以相同格式保存在"2.dat"文件中。 1、求(即求1!+2!+3!+4!+......+20!)注意:本题使用两重循环,外层控制1...20次,内层控制n 的阶乘。 2、求 n个 1. 实验一:C程序的基本编写 实验目的: 了解C语言编程环境的使用;创建自己的第一个C语言程序,并编译、调试、运行。 基本原理: 利用VC6集成开发环境,创建一个C工程,并添加C源文件。

C语言第4次作业运算符与

C语言第4次作业运算符与 目单选题: 1、若变量c为char类型,能正确判断出c为小写字母的表达式是 A. 'a'<=c<= 'z' B. (c>= 'a')||(c<= 'z') C. ('a'<=c)and ('z'>=c) D. (c>= 'a')&&(c<= 'z') 学生答案:D 参考答案:D 2、以下程序的输出结果是 mai n() { int x=0.5; char z='a'; printf("%d\n", (x& 1)&&(z<'z') ); } A. 0 B. 1 C. 2 D. 3 学生答案:A 参考答案:B 3、C语言中运算对象必须是整型的运算符是 A. %= B. / C. = D. 〈二 学生答案:A 参考答案:A 4、有如下程序段 int a=14,b=15,x;

char c='A'; x=(a&&b)&&(cv'B'); 执行该程序段后,x的值为 A. ture B. false C. 0 D. 1 学生答案:D 参考答案:D 5、设有int x=11; 则表达式(x++ * 1/3) 的值是 A. 3 B. 4 C. 11 D. 12 学生答案: A 参考答案: A 6、设int x=1, y=1; 表达式(!x||y--) 的值是 A. 0 B. 1 C. 2 D. -1 学生答案: B 参考答案: B 7、下列程序的运行结果是#include < stdio.h > main() { int a=2,c=5; printf("a=%d,b=%d\n",a,b); } A. a=%2,b=%5 B. a=2,b=5 C. a=d, b=d D. a=%d,b=%d

C语言运算符与表达式

一、分类 C语言一共有34种运算符,10种运算类型:算术运算符(+、-、*、/、%)、关系运算符(>、>=、==、!=、<、<=)、位运算符(>>、<<、==、!=、<、<=)、逻辑运算符(!、||、&&)、条件运算符、(?:)指针运算符(&、*)、赋值运算符(=)、逗号运算符(,)、求字节运算符(sizeof)、强制类型转换运算符((类型名))、其他(下标[]、分量、函数);若按参与运算的对象个数,C 语言运算符可分为单目运算符(如!)、双目运算符(如+、-)和三目运算符(如?:) 二、运算符的结合性和优先级 1. 运算符的结合性 在C语言的运算符中,所有的单目运算符、条件运算符、赋值运算符及其扩展运算符,结合方向都是从右向左,其余运算符的结合方向是从左向右。 2.运算符的优先级 初等运算符(圆括号()、下标运算符[]、结构体成员运算符->)>单目运算符>算术运算符(先乘除后加减)>关系运算符>逻辑运算符(不包括!)条件运算符>赋值运算符>逗号运算符 三、算术运算符合和算术表达式 1.基本的算数运算符 (1). +加法运算或正值运算符 4+4、+5、 (2).- 减法运算或负值运算符 6-4、-10、-29 (3). *乘法运算 注意符号,不是x,而是* (4). /除法运算 注意符号,不是÷,也不是\,而是/ 整数除于整数,还是整数。1/2的值是0,这个并不是二分之一,不会四舍五入,直接截断取值。 (5)%取余运算 取余:即两个整数相除之后的余数 注意:%两侧只能是整数,正负性取决于%左侧的数值 2.注意: (1).当运算对象是负数时,不同机器的运算结果也可能是不同的。 (2).双目运算符两边的数值类型必须一致才能进行运算,所得结果也是相同类型的数值。(3).双目运算符两边的数值类型如果不一致,必须由系统先进行一致性转换。 转换规则:char->short->int->unsigned->long->double->float

大学C语言第四章作业答案

第四章课后习题参考程序 三、编程 1、输入一个正整数,判断该数为奇数还是偶数。 参考程序:(1) #include int main() { int a; printf("Enter an integer:"); scanf("%d",&a); if(a%2==0) printf("%d是偶数\n",a); else printf("%d是奇数\n",a); return 0; } (2) #include int main() { int a; printf("please enter an integer:"); scanf("%d",&a); switch(a%2) { case 0:printf("%d是偶数\n",a);break; case 1:printf("%d是奇数\n",a);break; default:printf("error\n");break; return 0 ; } } 2、求任意三个整数中的最大数。 #include int main() { int a,b,c,max; printf("please enter three number:"); scanf("%d,%d,%d",&a,&b,&c); if(a>b) max=a; if(max

3、判别键盘上输入字符的种类(控制字符、大写字母、小写字母、数字或其它)。#include int main() { char ch; printf("please input a character:"); scanf("%c",&ch); if(ch>='A'&&ch<='Z') printf("%c是大写字母\n",ch); else if(ch>='a'&&ch<='z') printf("%c是小写字母\n",ch); else if(ch>='0'&&ch<='9') printf("%c是数字\n",ch); else printf("%c是其他字符\n",ch); return 0; } 7、某商场进行打折促销活动,消费金额p越高,折扣d越大,其标准如下: P<200 d=0% 200<=P<400 d=5% 400<=P<600 d=10% 600<=P<1000 d=15% 1000<=P d=20% 要求用switch语句编程,输入消费金额,求其实际消费金额。 #include int main() { int c,d; float w,p; printf("输入消费金额:;"); scanf("%f",&p); if(p>=1000) c=5; else c=p/200; switch(c) { case 0:d=0;break; case 1:d=5;break; case 2:d=10;break; case 3: case 4:d=15;break; case 5:d=20;break; default:printf("error");break; } w=p*(1-d/100.0); printf("实际消费金额为:%f",w); return 0; }

北航大一上c语言第四五六七八次作业

3. 字母频率统计 【问题描述】 编写程序从标准输入中读入一段英文,统计其中小写字母出现次数,并以柱状图的形式显示其出现次数。 【输入形式】 在标准输入上输入一段英文文章(可能有一行,也可能有多行),在新的一行的开头输入ctrl+z键表示结束。 【输出形式】 在屏幕上依次输出表示每个小写字母出现次数的柱状图(以“*”字符表示柱状图,空白处用空格字符表示,某个小写字母出现多少次,就显示多少“*”字符;柱状图的高度以出现最多的字母次数为准),在最后一行依次输出26个小写字母。 【样例输入】 The computing world has undergone a revolution since the publication of The C Programming Language in 1978. 【样例输出】 【样例说明】 在输入的英文短文中,小写字母a出现了6次,所以其上输出了6个字符"*"。出现次数最多的是字母n,所以柱状图的高度为9个字符。字母j没有出现,所以其上都为空格字符。 【评分标准】 该题要求输出柱状图表示的字母出现次数,共有5个测试点。上传C语言文件名为bar.c。

【输入形式】从标准输入读取顶点坐标。格式为:第一行是点的个数N(3≤N≤15),后面紧接着N 行,每行两个数字(由空格隔开),分别表示该点的X、Y坐标(0≤X,Y≤32767)。所有点的坐标互不相同,且按顺时针次序给出。 输入数据确保该多边形是一个凸多边形。 【输出形式】向标准输出打印一个浮点数,是该多边形的面积。该浮点数保留两位小数。 【输入样例】 4 3 3 30 10 1 2 【输出样例】 5.00 【样例说明】输入数据表示了如图所示的四边形。其面积为5.00。 提示:求三角形面积可用海伦公式,求平方根可用头文件中定义的sqrt函数。 【评分标准】结果完全正确得20分,每个测试点4分。提交程序名为:points.c。

C语言练习4(附参考答案)

实验4:运算符与表达式(3)实验目的: 1、熟悉逗号运算符等的基本运用和规则。 2、学会使用C语言的关系运算符和逻辑运算符,以及包含这些运算符的表达式。 3、进一步熟悉C语言程序的编辑、编译、连接和运行的方法。 实验内容: 一、选择题 1、逻辑运算符两侧运算对象的数据类型(D)。 A)只能是0或1 B)只能是0或非0正数 C)只能是整型或字符型数据D)可以是任何类型的数据 2、以下关于运算符优先顺序的描述中正确的是(C)。 A)关系运算符<算术运算符<赋值运算符<逻辑与运算符 B)逻辑与运算符<关系运算符<算术运算符<赋值运算符 C)赋值运算符<逻辑与运算符<关系运算符<算术运算符 D)算术运算符<关系运算符<赋值运算符<逻辑与运算符 3、能正确表示“当x的取值在[1,100]和[200,300]范围内为真,否则为假”的表达式是(C)。 A) (x>=1)&&(x<=100)&&(x>=200)&&(x<=300) B) (x>=1)||(x<=100)||(x>=200)||(x<=300) C) (x>=1)&&(x<=100)||(x>=200)&&(x<=300) D) (x>=1)||(x<=100)&&(x>=200)||(x<=300)

4、为判断字符变量c 的值不是数字也不是字母时,应采用下述表达式( D )。 A )c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122 B )!(c<=48||c>=57&&c<=65||c>=90&&c<=97||c>=122) C )c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122 D )!(c>=48&&c<=57||c>=65&&c<=90||c>=97&&c<=122) 5、设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)的值是( C )。 A )0 B )语法错 C )1 D )“假” 7、以下正确的叙述是( D )。 A ) 在C 程序中,每行中只能写一条语句 B ) 若a 是实型变量, C 程序中允许赋值a=10,因此实型变量中允许存放整型数 C )在C 程序中,无论是整数还是实数,都能被准确无误地表示 D )在C 程序中,%是只能用于整数运算的运算符 8、以下选项中,与k=n++完全等价的表达式是( A )。 A) k=n,n=n+1 B) n=n+1,k=n C) k=++n D) k+=n+1 9、与数学式子123 x n x 对应的C 语言表达式是( C )。

c语言程序设计课后习题答案第四版

第1章程序设计和C语言1 1.1什么是计算机程序1 1.2什么是计算机语言1 1.3C语言的发展及其特点3 1.4最简单的C语言程序5 1.4.1最简单的C语言程序举例6 1.4.2C语言程序的结构10 1.5运行C程序的步骤与方法12 1.6程序设计的任务14 1-5 #include int main ( ) { printf ("**************************\n\n"); printf(" Very Good!\n\n"); printf ("**************************\n"); return 0; } 1-6#include int main() {int a,b,c,max; printf("please input a,b,c:\n"); scanf("%d,%d,%d",&a,&b,&c); max=a; if (max

2.5结构化程序设计方法34 习题36 第章最简单的C程序设计——顺序程序设计37 3.1顺序程序设计举例37 3.2数据的表现形式及其运算39 3.2.1常量和变量39 3.2.2数据类型42 3.2.3整型数据44 3.2.4字符型数据47 3.2.5浮点型数据49 3.2.6怎样确定常量的类型51 3.2.7运算符和表达式52 3.3C语句57 3.3.1C语句的作用和分类57 3.3.2最基本的语句——赋值语句59 3.4数据的输入输出65 3.4.1输入输出举例65 3.4.2有关数据输入输出的概念67 3.4.3用printf函数输出数据68 3.4.4用scanf函数输入数据75 3.4.5字符数据的输入输出78 习题82 3-1 #include #include int main() {float p,r,n; r=0.1; n=10; p=pow(1+r,n); printf("p=%f\n",p); return 0; } 3-2-1 #include #include int main() {float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5; p=1000;

c语言运算符及其含义

c语言运算符及其含义 C 语言中有多种运算符,它们用于执行各种操作,例如算术运算、关系运算、逻辑运算等。以下是一些常见的C 语言运算符及其含义: 1. 算术运算符: - `+`:加法运算。 - `-`:减法运算。 - `*`:乘法运算。 - `/`:除法运算。 - `%`:取模运算(求余数)。 2. 关系运算符: - `==`:等于。 - `!=`:不等于。 - `<`:小于。 - `>`:大于。 - `<=`:小于等于。 - `>=`:大于等于。 3. 逻辑运算符: - `&&`:逻辑与(and)。 - `||`:逻辑或(or)。 - `!`:逻辑非(not)。 4. 位运算符: - `&`:按位与。 - `|`:按位或。 - `^`:按位异或。 - `~`:按位取反。 - `<<`:左移位。 - `>>`:右移位。 5. 赋值运算符: - `=`:赋值。 - `+=`:加后赋值。 - `-=`:减后赋值。 - `*=`:乘后赋值。 - `/=`:除后赋值。 - `%=`:取模后赋值。 - `&=`:按位与后赋值。 - `|=`:按位或后赋值。 - `^=`:按位异或后赋值。

- `<<=`:左移位后赋值。 - `>>=`:右移位后赋值。 6. 逗号运算符: - `,`:逗号运算符,用于分隔表达式,从左到右依次执行。 7. 条件运算符: - `? :`:条件运算符(三元运算符),用于根据条件选择两个值之一。 ```c int result = (condition) ? value_if_true : value_if_false; ``` 8. sizeof 运算符: - `sizeof`:返回数据类型或对象的大小(以字节为单位)。 ```c int size = sizeof(int); ``` 这只是C 语言中一些常见的运算符,还有其他运算符和一些特殊用途的运算符。熟悉这些运算符对于理解和编写C 语言程序非常重要。

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

运算符和表达式 1、若有定主:int a=11; float x=2.8,y=5.7;则表在式x+a%3*(int)(x+y)%2/4的值是: 2、若有定义: int a=8,b=5,c; 执行语句:c=a/b+0.4;后,c的值是: 3、已有定义:int x=3; 则表达式:x=x+1.78的值是 4、已有定义:float f=13.8;,则表达式:(int)f/3的值是 5、已有定义:double x=3.5; 则表达式:x=(int)x+1的值是: 6、已有定义:int x=10, y=3,z; ,则表达式:z=(x%y, x/y)的值是 7、已有定义:int x=0,y=0;,则计算表达式:(x=x+2,y=x+3/2,y+5)后,表达式的值是,变量x的值是: 8、若x,i,j和k都是int型变量,则执行表达式x=(i=4,j=16,k=32)后,x 的值为: 9、设变量a是int型,f是float型,i是double型,则表达式10+’a’+i*f 值的数据类型为: 1、若有语句: Int x=12,y=8,z; Z=0.8+x/y;则执行语句后,z的值为: 2、若“int a; float b=12.2;”,则执行“a=(int)b%3;”后,a的值是: 3、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是 4、若有定义句语:int s=6; 则表达式s%2+(s+1)%2的值为 6、设a,b均为double型,且a=5.5;b=25;则表达式(int)a+b/b的值是:

7、已有定义:int x=110, y=017; 则计算表达式:(x++,++y)后,表达式的值是,变量k的值是,变量j的值是

C语言程序设计 第四次作业

实验报告 课程名称C语言程序设计 实验项目顺序结构程序设计 实验仪器___________________________ 系别__________自动化系__________ 专业_____自动化__________ 班级/学号自动化1907/2019010737____学生姓名________钱仪嘉_____________ 实验日期_________2019.11.28________ 成绩_______________________ 指导教师__________尤建清__________

一、实验目的 (1)掌握算术表达式、赋值表达式、关系表达式和逻辑表达式的计算。 (2)掌握常见数学库函数的使用。 (3)掌握C语言中基本输入、输出函数的使用方法。 (4)掌握选择结构程序设计的一般方法 二、实验内容 1.第一题 实验题目:编写自定义函数,函数的功能是:将华氏温度F转化为摄氏温度C。公式为:C=5/9(F-32).编写程序,输出一个华氏温度与摄氏温度对照表,其中华氏温度值为32~100,步长为4。 #include double convent(int f); int main() {int f; float c; printf("华氏温度\t摄氏温度\n"); for(f=32;f<=100;f=f+4) { c=convent(f); printf("\t%d\t%10.2f\n",f,c); } } double convent(int f) { double c; c=5.0/9*(f-32); return c; }

实验题目:编写自定义函数,该函数有一个整型参数,函数的功能是当这个整型数的值是偶数时,函数的返回值为0,当这个整型数的值是奇数时返回值为1。编写程序从键盘输入任意10整数,统计其中奇数和偶数分别多少个。判断奇偶性使用自定义函数实现。 #include int isEven(int n); int main() { int i,n,odd=0,even=0; printf("请输入10个整数:"); for(i=1;i<=10;i++) { scanf("%d",&n); if(isEven(i)==1)odd++; else even++; } printf("其中有%d个偶数\n",even); printf("其中有%d个奇数\n",odd) ; return 0; } int isEven(int n) { if(n%2==0) return 0; else return 1; }

c语言逻辑运算符和关系运算符优先级

c语言逻辑运算符和关系运算符优先级 摘要: 一、前言 二、C 语言逻辑运算符 1.与运算符(&) 2.或运算符(|) 3.异或运算符(^) 4.非运算符(~) 三、C 语言关系运算符 1.等于运算符(==) 2.不等于运算符(!=) 3.大于运算符(>) 4.小于运算符(<) 5.大于等于运算符(>=) 6.小于等于运算符(<=) 四、运算符优先级 1.逻辑运算符优先级 2.关系运算符优先级 五、总结 正文: 【前言】

C 语言作为一门广泛应用于计算机编程的语言,逻辑运算和关系运算在程序设计中占据着重要地位。了解并熟练掌握逻辑运算符和关系运算符的优先级,有助于编写高效、正确的程序代码。 【C 语言逻辑运算符】 C 语言逻辑运算符主要包括与运算符(&)、或运算符(|)、异或运算符(^)和非运算符(~)。这些运算符用于对整数或逻辑值进行逻辑运算。 1.与运算符(&):对应位全为1 时,结果为1,否则为0。 2.或运算符(|):对应位全为0 时,结果为0,否则为1。 3.异或运算符(^):对应位相同为0,不同为1。 4.非运算符(~):对一个二进制数的每一位执行非运算,即0 变1,1 变0。 【C 语言关系运算符】 C 语言关系运算符主要包括等于运算符(==)、不等于运算符(!=)、大于运算符(>)、小于运算符(<)、大于等于运算符(>=)和小于等于运算符(<=)。这些运算符用于比较两个值的大小关系。 1.等于运算符(==):两个值相等时返回1,否则返回0。 2.不等于运算符(!=):两个值不相等时返回1,否则返回0。 3.大于运算符(>):左边的值大于右边的值时返回1,否则返回0。 4.小于运算符(<):左边的值小于右边的值时返回1,否则返回0。 5.大于等于运算符(>=):左边的值大于或等于右边的值时返回1,否则返回0。 6.小于等于运算符(<=):左边的值小于或等于右边的值时返回1,否则

c语言与运算

c语言与运算 按位与运算(&) 一个比特(Bit)位只有 0 和 1 两个取值,只有参与&运算的两个位都为 1 时,结果才为 1,否则为 0。例如1&1为 1,0&0为 0,1&0也为 0,这和逻辑运算符&&非常类似。 C语言中不能直接使用二进制,&两边的操作数可以是十进制、八进制、十六进制,它们在内存中最终都是以二进制形式存储,&就是对这些内存中的二进制位进行运算。其他的位运算符也是相同的道理。 例如,9 & 5可以转换成如下的运算: 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 1001 (9 在内存中的存储) & 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0101 (5 在内存中的存储) ----------------------------------------------------------------------------------- 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0001 (1 在内存中的存储) 也就是说,按位与运算会对参与运算的两个数的所有二进制位进行&运算,9 & 5的结果为 1。 又如,-9 & 5可以转换成如下的运算: 1111 1111 -- 1111 1111 -- 1111 1111 -- 1111 0111 (-9 在

内存中的存储) & 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0101 (5 在内存中的存储) ----------------------------------------------------------------------------------- 0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 0101 (5 在内存中的存储) -9 & 5的结果是 5。 关于正数和负数在内存中的存储形式,我们已在VIP教程《整数在内存中是如何存储的,为什么它堪称天才般的设计》中进行了讲解。 再强调一遍,&是根据内存中的二进制位进行运算的,而不是数据的二进制形式;其他位运算符也一样。以-9&5为例,-9 的在内存中的存储和 -9 的二进制形式截然不同: 1111 1111 -- 1111 1111 -- 1111 1111 -- 1111 0111 (-9 在内存中的存储) -0000 0000 -- 0000 0000 -- 0000 0000 -- 0000 1001 (-9 的二进制形式,前面多余的 0 可以抹掉) 按位与运算通常用来对某些位清 0,或者保留某些位。例如要把n 的高 16 位清 0 ,保留低 16 位,可以进行n & 0XFFFF运算(0XFFFF 在内存中的存储形式为 0000 0000 -- 0000 0000 -- 1111 1111 -- 1111 1111)。 【实例】对上面的分析进行检验。

电大《C++语言程序设计》第1、2、3、4次作业及答案

第一次作业 一、写出下列每个程序运行后的输出结果 1. #include void main() { int x=5; switch(2*x-3) { case 4:printf("%d ",x); case 7:printf("%d ",2*x+1); case 10:printf("%d ",3*x-1);break; default:printf("%s ","default\n"); } printf("%s\n","switch end."); } 2. #include void main() { int i,s=0; for(i=1;i<=6;i++) s+=i*i; printf("s=%d\n",s); } 3. #include void main() { int i,s1=0,s2=0; for(i=0;i<10;i++) if(i%2)s1+=i; else s2+=i; printf("%d %d\n",s1,s2); }

4. #include void main() { int n=10,y=1; while(n--){y++;y++;} printf("y=%d\n",y); } 5. #include void main() { int f,f1,f2,i; f1=f2=1; printf("%d %d ",f1,f2); for(i=3;i<=10;i++){ f=f1+f2; printf("%d ",f); if(i%5==0)printf("\n"); f1=f2; f2=f; } printf("\n"); } 6. #include #include void main() { int i,n; for(n=2;n<=20;n++){ int temp=(int)sqrt(n);//sqrt(n)求出n的平方根并取整 for(i=2;i<=temp;i++) if(n%i==0)break;

C语言运算符大全

C语言运算符大全

C语言运算符大全 C语言的内部运算符很丰富,运算符是告诉编译程序执行特定算术或逻辑操作的符号。C语言有三大运算符:算术、关系与逻辑、位操作。另外,C还有一些特殊的运算符,用于完成一些特殊的任务。 2.6.1算术运算符 表2-5列出了C语言中允许的算术运算符。在C语言中,运算符“+”、“-”、“*”和“/”的用法与大多数计算机语言的相同,几乎可用于所有C语言内定义的数据类型。当“/”被用于整数或字符时,结果取整。例如,在整数除法中,10/3=3。 一元减法的实际效果等于用-1乘单个操作数,即任何数值前放置减号将改变其符号。模运算符“%”在C 语言中也同它在其它语言中的用法相同。切记,模运算取整数除法的余数,所以“%”不能用于float和double类型。 最后一行打印一个0和一个1,因为1/2整除时为0,余数为1,故1%2取余数1。 2.6.2自增和自减 C语言中有两个很有用的运算符,通常在其它计算机语言中是找不到它们的—自增和自减运算符,++和--。运算符“++”是操作数加1,而“--”是操作数减1,换句话说:x=x+1;同++x;x=x-1;同--x; 自增和自减运算符可用在操作数之前,也可放在其后,例如:x=x+1;可写成++x;或x++;但在表达式中这两种用法是有区别的。自增或自减运算符在操作数之前,C语言在引用操作数之前就先执行加1或减1操作;运算符在操作数之后,C语言就先引用操作数的值,而后再进行加1或减1操作。请看下例: x=10; ;y=++x; 此时,y=11。如果程序改为: x=10;y=x++; 则y=10。在这两种情况下,x都被置为11,但区别在于设置的时刻,这种对自增和自减发生时刻的控制是非常有用的。在大多数C编译程序中,为自增和自减操作生成的程序代码比等价的赋值语句生成的代码 要快得多,所以尽可能采用加1或减1运算符是一种好的选择。 。下面是算术运算符的优先级:

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)。

C语言第三、四章作业题答案

东华理工大学:C语言第三章作业题 C程序设计第三章闭/开卷课程类别:考试/考查 第三章顺序结构程序设计 一、选择题 1。C语言中调用printf进行输出时需要注意,在格式控制串中,格式说明与输出项的个数必须相同。如果格式说明的个数小于输出项的个数,多余的输出项将 A ;如果格式说明的个数多于输出项的个数,则对于多余的格式将输出不定值(或0)。 A)不予输出B)输出空格 C)照样输出D)输出不定值或0 2.在scanf函数的格式控制中,格式说明的类型与输入的类型应该一一对应匹配.如果类型不匹配,系统 B 。 A)不予接收 B)并不给出出错信息,但不可能得出正确信息数据 C)能接受正确输入 D)给出出错信息,不予接收输入 3。下列说法正确的是 D 。 A)输入项可以是一个实型常量,如scanf(”%f",4。8); B)只有格式控制,没有输入项也能进行正确输入,如scanf(”a=%d,b=%d”); C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(”%5。 3f",&f); D)当输入数据时,必须指明变量的地址,如scanf("%f”,&f); 4。根据题目中已给出的数据的输入和输出形式,程序中输入/输出语句的正确是B 。 main() {int a;float x; printf("input a,x:”); 输入语句输出语句 } 输入形式input a,x:3 2.1 输出形式a+x=5。10 A)scanf("%d,%f",&a,&x); printf("\na+x=%4。2f",a+x); B)scanf(”%d %f",&a。&x); printf("\na+x=%4。2f”,a+x); C)scanf(”%d %f”,&a,&x); printf(”\na+x=%6。1f",a+x); D)scanf("%d %3.1f”,&a,&x); printf(”\na+x=%4。2f",a+x); 5.以下程序的输出结果是 A . main() { int i=010,j=10,k=0x10; printf("%d,%d,%d\n",i,j,k); A)8,10,16 B)8,10,10 C)10,10,10 D)10,10,16 6.以下程序的输出结果是 A 。 main() { int i=011,j=11,k=0x11; printf(”%d,%d,%d\n",i,j,k); } A)9,11,17 B)9,11,11 C)11,11,11 D)11,11,16 7。以下程序的输出结果是 B 。 #include main() {printf(”%d\n”,NULL);} A)不确定的值(因变量无定义) B)0 C)-1 D)1 8.以下程序的输出结果是 B . main() { char c1=’6',c2=’0’; printf(”%c,%c,%d,%d\n",c1,c2,c1—c2,c1+c2); }

相关主题
相关文档
最新文档