信息学奥赛辅导(C语言一)
信奥赛一本通—c 语言运算符和表达式

信奥赛一本通—c 语言运算符和表达式(原创版)目录1.信奥赛一本通介绍2.C 语言运算符分类3.算术运算符4.关系运算符5.逻辑运算符6.位运算符7.赋值运算符8.其他运算符9.表达式的概念和分类10.表达式的求值正文【信奥赛一本通介绍】《信奥赛一本通》是一本针对信息学奥林匹克竞赛(NOI)的辅导教材,内容包括计算机编程基础、数据结构与算法、组合数学等。
本书旨在帮助学生提高编程能力,培养逻辑思维,以便在信息学竞赛中取得优异成绩。
【C 语言运算符分类】C 语言中的运算符可以分为以下几类:1.算术运算符2.关系运算符3.逻辑运算符4.位运算符5.赋值运算符6.其他运算符【算术运算符】算术运算符包括加(+)、减(-)、乘(*)、除(/)、取模(%)等,它们用于对数值进行加减乘除等运算。
【关系运算符】关系运算符包括大于(>)、小于(<)、大于等于(>=)、小于等于(<=)、等于(==)、不等于(!=)等,它们用于比较两个数值的大小或相等关系。
【逻辑运算符】逻辑运算符包括与(&&)、或(||)、非(!)等,它们用于进行逻辑运算,如判断条件是否成立等。
【位运算符】位运算符包括按位与(&)、按位或(|)、按位异或(^)、左移(<<)、右移(>>)等,它们用于对二进制数进行位运算。
【赋值运算符】赋值运算符包括等号(=)和赋值运算符(+=、-=、*=、/=、%=),它们用于给变量赋值或将一个值赋给一个表达式。
【其他运算符】其他运算符包括括号(()、[]、{})、逗号(,)、点(.)等,它们用于表示运算顺序和数据结构。
【表达式的概念和分类】表达式是计算机程序设计中用于表示数值、变量、运算符等组成的式子。
根据运算符的类型,表达式可以分为以下几类:1.算术表达式:包含算术运算符的表达式。
2.关系表达式:包含关系运算符的表达式。
3.逻辑表达式:包含逻辑运算符的表达式。
信息学竞赛c++语言教学第一课教案

信息学竞赛C++语言教学第一课教案一、教学内容1. C++语言基础知识介绍1.1 C++语言的概念1.2 C++语言的发展历史1.3 C++语言的特点和应用领域2. C++语言的基本语法2.1 数据类型和变量2.2 运算符和表达式2.3 控制结构2.4 函数和模块化编程2.5 数组和指针2.6 面向对象编程3. 算法分析与实践3.1 算法设计和分析方法3.2 常用算法的实现3.3 实际问题的算法解决方法二、教学目标1. 掌握C++语言的基本概念和特点,了解其应用领域。
2. 理解C++语言的基本语法,包括数据类型、运算符、控制结构等。
3. 掌握C++语言的函数和模块化编程、数组和指针、面向对象编程等内容。
4. 掌握算法设计和分析方法,了解常用算法的实现和实际问题的算法解决方法。
三、教学重点和难点1. C++语言的基本语法为教学重点,学生需掌握数据类型、运算符、控制结构等知识。
2. 面向对象编程和算法设计为教学难点,需要引导学生理解并掌握相关知识。
四、教学方法1. 讲授相结合的教学方法,通过讲解基础知识和案例分析引导学生深入理解。
2. 案例实践的教学方法,通过实际问题的解决来巩固学生的C++编程能力。
五、教学过程1. C++语言基础知识介绍1.1 介绍C++语言的概念,讲解其起源和发展历史,引导学生了解C++语言的特点和应用。
1.2 通过案例分析,展示C++语言在实际项目中的应用,激发学生学习的兴趣。
2. C++语言的基本语法2.1 讲解数据类型和变量的定义和使用方法,引导学生编写简单的数据类型和变量操作程序。
2.2 授予运算符和表达式的运用,通过实例讲解各种运算符的使用方法。
2.3 介绍C++语言的控制结构,包括顺序结构、选择结构和循环结构,引导学生掌握各种结构的应用。
3. 算法分析与实践3.1 讲解算法设计和分析的基本思想和方法,引导学生掌握算法设计的基本技巧。
3.2 介绍常用算法的实现,包括排序算法、查找算法等,通过实例演示算法的具体应用。
信奥赛一本通—c 语言运算符和表达式

《信奥赛一本通—c 语言运算符和表达式》随着信息技术的不断发展,编程语言作为计算机与人交流的桥梁,也日益受到重视。
在众多编程语言中,C语言因其简洁、高效的特点备受青睐,成为不少软件开发者的首选。
在C语言中,运算符和表达式是非常基础且重要的概念,对于初学者来说,掌握此部分知识是建立扎实的编程基础的关键。
在本篇文章中,我将从简单的运算符介绍开始,逐步深入到表达式的计算与运用,帮助我更全面、深入地理解C语言运算符和表达式这一主题。
1. 运算符的基本概念我们来了解C语言中常见的运算符,包括赋值运算符、算术运算符、关系运算符、逻辑运算符等。
其中,赋值运算符用于将右侧的数值或表达式赋给左侧的变量;算术运算符包括加法、减法、乘法、除法、取模等,用于表示基本的数学运算;关系运算符用来比较两个值之间的关系,通常返回真或假;逻辑运算符用于连接或改变关系表达式的值,包括与、或、非等。
2. 运算符的优先级和结合性在实际编程中,运算符的优先级和结合性是至关重要的。
优先级决定了表达式中运算符的执行顺序,而结合性则决定了相同优先级的运算符在没有括号的情况下如何组合。
在C语言中,乘法运算符的优先级高于加法运算符,因此在计算表达式时会先执行乘法运算。
3. 表达式的计算与运用除了掌握各类运算符的基本概念外,更重要的是理解如何运用这些运算符来构建各种复杂的表达式。
在实际编程中,我们经常需要进行变量赋值、数学运算、逻辑比较等操作,这就需要灵活运用C语言的运算符和表达式来实现。
总结回顾通过本文的阅读与学习,相信我已经对C语言运算符和表达式有了更深入的了解。
我掌握了C语言中常见的运算符,包括赋值运算符、算术运算符、关系运算符和逻辑运算符,对其基本概念有了清晰的认识。
我了解了运算符的优先级和结合性的重要性,能够在编程中灵活运用这些知识。
通过学习如何构建复杂的表达式,我对C语言运算符和表达式的应用有了更深层次的理解。
个人观点和理解对我来说,C语言运算符和表达式是建立编程基础的重要一环。
信息学竞赛C语言教学第一课

如果要输入一串英文字符,则用“”括起来
? 请编程在屏幕上输出 ? “I love C++”
#include<iostream> using namespace std; int main() {
cout<<I love C++<<endl; return 0; }
? 如果你对科技的力量充满了向往,对电脑世界充 满憧憬,请记住:信息学奥赛,梦开始的地方!
编程语言
? Pascal ?C ? C++
1、打开 c++ 软件,新建一个文件,然后在屏 幕中输入:
#include <iostream> using namespace std; int main() {
? 4、培养积极进取, 勇于拼博的精神。 ? 与体育奥林匹克一样, 学科奥林匹克也是一个拼
博的战场, 是智力、能力、品德与意志的较量。奥林 匹克精神永远伴随着参与奥赛学习的疑难解答:
? 关于信息学奥赛,很多同学和家长都有很多疑问,下面我 们挑选几个最多人问的问题做明确的回答:
? 1、参加奥赛跟学习有冲突吗?
信息学奥赛,梦开始的地方!
? 信息学奥赛简介:
? 学生可以参加的竞赛多,大大小小的竞赛令人眼 花瞭乱,但大多都是没用的。只有数学、物理学、化 学、信息学、生物学的全国奥林匹克分区联赛、全国 奥林匹克竞赛是由国家教育部主办的。一般来说,在 奥赛中获奖的同学才能得到国家教育部的表彰,才能 得到著名大学的青睐。
? 1、开发智力,提高思维。 ? 总所周知,奥赛是一种智力和潜能的挑战,在老
C语言程序设计基础 信息学奥赛

二进制数 0~1 2
20,21,22,...
逢二进一
八进制数 0~7 8
80,81,82,...
逢八进一
十六进制数
0~9,A~F,a~f
16
160,161,162,...
逢十六进一
十进制:4956= 410³+910²+510¹+610º 二进制:1011=12³+02²+12¹+12º 八进制:4275=48³+28²+78¹+58º 十六进制:81AE=816³+116²+1016¹+1416º
#include <stdio.h> #define PI 3.14159 int main() {
float r, S; scanf("%f",&r); S=PI*r*r; printf("%f\n",S); return 0; }
16 1
余 12 7
0
2 31 C
21
(459)10=(1CB)16 0
余1
余0
余1
B
余 余
1 1
8 159
8 19 82
0
余7 余3 余2
23 7
1 1 1 (01591)101=(237)8
(59)10=(111011)2
1.2.2 进制间的相互转换
十进制转换成二进制、八进制、十六进制
步骤:首先进行整数部分转换,然后进行小数部分转换。
软件系统
软件是指计算机程序及有关 程序的技术文档资料
系统软件 应用软件
1.1.1 硬件系统
外存储器
信息
信息学奥赛辅导(C语言一)

信息学奥赛辅导(C语言一)信息学奥赛辅导:C语言复习题(一)第1~3章练习题一、选择题1、一个C语言程序总是从____A、主过程开始执行B、主函数开始执行C、子程序开始执行D、主程序开始执行2、若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32)后num的值为_A、4B、16C、32D、523、下面四个选项中,均是C语言关键字的选项是____A、auto enum includeB、switch typedef continueC、signed union scanfD、if struct type4、下面四个选项中,均是合法整型常量的选项是____A、160 -0xffff 011B、-0xcdf 01a 0xeC、-01 986,012 0668D、-0x48a 2e5 0x5、下面四个选项中,均是合法浮点数的选项是___A、+1e+1 5e-9.4 03e2B、-.60 12e-4 -8e5C、123e 1.2e-.4 +2e-1D、-e3 .8e-4 5.e-0A、'\'' '\\' '\n'B、'\' '\017' '\"'C、'\018' '\f' 'xab'D、'\\0' '\101' 'xlf'7、下面正确的字符常量是____A、'\X17'B、'\80'C、'\\'D、"\n"8、下面四个选项中,均是正确的八进制数和十六进制数的选项是____A、-10 0x8f -011B、0abc -017 0xcC、010 -0x11 0xf1D、0a12 -0x123 -0xa9、下面四个选项中,均是正确的数值常量或字符常量的选项是____A、0.0 0f 8.9e '&'B、"a" 3.9E-2.5 1e1 '\"'C、'3' 011 0xFF00 0aD、+001 0xabcd 2e2 50.10、若有代数式,则正确的C语言表达式是____A、2*ln(x)*cos(x)/3*xB、2*ln(x)*cos(x)/(3*x)C、2*log(x)*cos(x)/3*xD、2*log(x)*cos(x)/(3*x)11、若有说明语句:char ch1='\065';char ch2="2";char ch3='2';则:ch1中____,ch2中____,ch3中____A、包含1个字符B、包含2个字符C、包含3个字符D、字符个数不确定,说明不正确12、若有运算符:>、*=、?:、%、sizeof,则将它们按运算的优先级排列的正确次序为(由低至高)____A、*=→?:→%→>→sizeofB、?:→*=→>→%→sizeof13、若有以下类型说明语句:char a;int b;float c;double d;则表达式a*b+d-c的结果类型为____A、floatB、charC、intD、double14、若有变量说明:int a=0,b=0,c=0;,以下符合C语言语法的赋值表达式是____A、a=9+b+c=a+9B、a=9+b;c=a+9;C、a=(9+b,b++)D、a=9+b++=a+715、已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为____A、DB、68C、一个不确定的值D、C16、以下运算符中优先级最高的运算符是____A、&&B、++C、?:D、!=17、若有定义:int k=7;float a=2.5,b=4.7;则表达式a+k%3*(int)(a+b)%2/4的值是___A、2.500000B、2.7500000C、3.500000D、0.00000018、sizeof(float)是____A、双精度型表达式B、一个整型表达式C、一个函数调用D、一个不合法的表达式19、设变量y为float类型,x为int类型,则以下能实现将y中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是____A、y=(y*100+0.5)/100.0B、x=y*100+0.5,y=x/100.0C、y=y*100+0.5/100.0D、y=(y/100+0.5)*100.020、设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是____A、0~255B、0~65535C、-32768~+32767D、-256~+25521、若有以下定义,则能得到值为3的表达式是____(int m=7,n=12)A、n%=(m%=5)B、n%=(m-m%5)C、n%=m-m%5D、(n%=m)-(m%=5)22、若有说明:int a=1,b=2,c=3,d=4;则表达式a<b?a:c<d?c:d的值是___< bdsfid="170" p=""></b?a:c<d?c:d 的值是___<>A、4B、3C、2D、123、若x为int类型,则逗号表达式(x=4*5,x*5),x+25的结果是___,x的值是___A、20B、100C、表达式不正确D、4524、putchar函数可以向终端输出一个____A、整型变量值B、实型变量值C、字符串D、字符或字符型变量值25、若有以下变量说明和数据的输入方式,则正确的输入语句为('└─┘'代表空格)____变量说明:float x1,x2;数据的输入方式:4.52<回车>3.5<回车>A、scanf("%f,%f",&x1,&x2);B、scanf("%f%f",&x1,&x2);C、scanf("%3.2f└─┘%2.1f",&x1,&x2);D、scanf("%3.2f%2.1f",&x1,&x2);26、若运行以下程序时,从键盘输入25,13,10<回车>,则输出结果为___{int a1,a2,a3;scanf("%d%d%d",&a1,&a2,&a3);printf("a1+a2+a3=%d\n",a1+a2+a3);}A、a1+a2+a3=48B、a1+a2+a3=25B、a1+a2+a3=10D、不确定值27、已知a、b、c为int类型变量,若有输入语句:scanf("a=%db=%dc=%d",&a,&b,&c);为使a值为1,b值为3,c值为2,从键盘输入数据的正确形式应当是____A、132<回车>B、a=1b=3c=2<回车>C、1<回车>3<回车>2<回车>D、a=1<回车>b=3<回车>c=2<回车>28、以下能正确定义整型变量x、y和z并为其赋初值5的语句是____A、int x=y=z=5;B、int x,y,z=5;C、int x=5,y=5,z=5;D、x=5,y=5,z=5;29、执行下面程序段后,x的值是____int x;printf("%d\n",(x=3*5,x+5));30、下面程序段的输出结果是____int a=023;printf("%d\n",--a);A、23B、17D、2431、已知ch是字符型变量,则不正确的赋值语句是____A、ch=5+9;B、ch='\0';C、ch='7'+'9';D、ch='a+b';32、设x,y是float型变量,则不正确的赋值语句是____A、++x;B、y=int(5);C、x*=y+1;D、x=y=0;33、设有说明:double b=0.5,c=1.5;int a=10;则正确使用了C语言库函数的赋值语句是____A、c=asin(c)+fabs(a);B、b=log10(b)+pow(b);C、c=sqrt(b-c);D、a=(int)(atan2((double)a,b)+exp(b-0.2));34、以下程序段的输出结果是____int i=1,j=4,k=2;float x=5.5,y=9.0,z;z=(i+j)/k+sqrt((double)y)*1.2/k+x;printf("%f\n",z);A、9.800000B、9.300000C、8.500000D、8.00000035、若a为int类型变量,则执行以下程序段后a的值为____a=5;a*=a/=a++;B、1C、40D、336、若a和b均为int型变量,则执行以下程序断后x的输出是____x=15;y=15;printf("%d\n",x%=(y%=2));A、0B、1C、6C、1237、若x为unsigned int类型变量,则执行以下程序段后x的值是____x=65535;printf("%d\n",x);A、65535B、1C、无定值D、-138、以下语句的执行结果是____printf("%d\n",NULL);A、1B、0C、-1无定值39、若x为int类型变量,则执行以下程序段后的输出结果是____x=0xDEF;printf("%4d,%4o,%4x\n",x,x,x);A、3567,6757,defB、3567,6757,xdefC、3567,06757,0xdefD、3567,6757,0def40、若a、b、c均为int型变量,则执行以下程序段后的输出结果为____b=(a=10,a+5,c=10);printf("a=%d,b=%d,c=%d\n",a,b,c);c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",a,b,c);A、a=10,b=15,c=10B、a=10,b=10,c=10a=10,b=5,c=10 a=10,b=5,c=10C、a=10,b=10,c=10D、a=10,b=10,c=10a=10,b=5,c=15a=10,b=5,c=541、若a1、a2、a3、a4均为char类型变量,则执行以下程序段后的输出结果为____a1='1';a2='2';a3='3';a4='4';printf("%1c\n",a1);printf("%2c\n",a2);printf("%3c\n",a3);printf("%4c\n",a4);A、1B、1C、1D、输出格式的描述符不正确2 2 023 3 0034 4 000442、执行语句printf("The program's name is c:\\tools\book.txt");后的输出是____B、The program's name is c:\tools book.txtC、The program's name is c:\\tools book.txtD、The program's name is c:\toolook.txt43、设a、b、c、d均是int类型变量,为了使以下程序段的输出为:1234+123+12+1,正确的输入形式应当是____scanf("%4d+%3d+%2d+%1d",&a,&b,&c,&d);printf("%4d+%3d+%2d+%1d",a, b, c, d);A、1234123121<回车>B、1234123412341234<回车>C、1234+1234+1234+1234<回车>D、1234+123+12+1<回车>44、设c1、c2均是char类型变量,则以下不正确的函数调用是____A、scanf("c1=%cc2=%c",&c1,&c2);B、getchar( )C、putchar(c2);D、putchar(c1,c2)45、逻辑运算符两侧运算对象的数据____A、只能是0或1B、只能是0或非0正数C、只能是整型或字符型数据D、可以是任何类型的数据46、判断char型变量c1是否为大写字母的正确表达式是____A、'A'<=c1<='Z'B、(c1>='A')&(c1<='Z')C、(c1>='A')&&(c1<='Z')D、('A'<=c1) AND ('Z'>=c1)47、执行以下程序段后的a值是___,b的值是___,c的值是___int a=5,b=6,c=1,x=2,y=3,z=4;A、0B、6C、1D、548、设i、j、和k是int型变量,且i=3,j=4,k=5,则以下值为0的表达式是_A、'i'&&'j'B、i<=jC、i||j+k&&j-kD、!((i<j)&&!k||1)< bdsfid="334" p=""></j)&&!k||1)<>49、设ch是char类型变量,其值是A,则以下表达式的值是____ch=(ch>='A'&&ch<='Z')?(ch+32):chA、ZB、AC、aD、z50、若希望当num的值为奇数时,表达式的值为“真”,num 的值为偶数时,表达式的值为“假”。
信息学奥赛c语言

信息学奥赛c语言
信息学奥赛C语言
信息学奥赛是一项全国性的计算机竞赛,旨在培养学生的计算机科学素养和创新能力。
而C语言则是信息学竞赛中最为重要的编程语言之一。
在信息学奥赛中,C语言的应用范围非常广泛,几乎涵盖了所有的计算机科学领域。
C语言是一种高级编程语言,它具有简洁、高效、可移植等特点。
在信息学竞赛中,C语言的应用主要包括算法实现、数据结构、操作系统、网络编程等方面。
在算法实现方面,C语言可以实现各种复杂的算法,如排序、查找、图论等。
在数据结构方面,C语言可以实现各种数据结构,如链表、树、图等。
在操作系统方面,C语言可以实现各种系统调用、进程管理、内存管理等。
在网络编程方面,C语言可以实现各种网络协议、套接字编程等。
在信息学竞赛中,C语言的应用非常广泛,因此学生需要掌握C语言的基本语法和编程技巧。
首先,学生需要掌握C语言的基本语法,包括变量、数据类型、运算符、控制语句、函数等。
其次,学生需要掌握C语言的编程技巧,包括调试技巧、算法设计技巧、代码优化技巧等。
最后,学生需要掌握C语言的应用技巧,包括数据结构的实现、算法的实现、操作系统的实现、网络编程的实现等。
C语言是信息学竞赛中最为重要的编程语言之一,学生需要掌握C
语言的基本语法和编程技巧,才能在信息学竞赛中取得好成绩。
同时,学生还需要不断提高自己的编程能力和创新能力,才能在信息学竞赛中脱颖而出。
高中信息技术 信息学奥赛C语言第一章 C语言基础知识课件

在C语言中用于标识名字的有效字符序列称 为标识符。 标识符可以用作常量名、变量名、符号名、 函数名和指针名等等。 C语言的命名规则如下: (1)标识符只能由字母、数字和下划线组成 (2)标识符的第一个字符必须是字母或下滑 线。 C语言中字母的大小写是有区别的。
二、标识符
合法的标识符:
a x sum spels _to file_5
三、常量
1.整型常量
整型常量也称整数,包括正整数、负整数和零。 如:3、10、100、-5、-35等。
2.实型常量
实型常量即实数,又称为浮点数。 如:3.1415926、-15.25等。 整型常量和实型常量又称为数值型常量。
3.字符常量
字符常量使用一对单引号括起来的一个字 符。如‘a’、‘B’、‘?’等。 以下是关于字符常量的几点说明。 (1)单引号只是作为定界符使用,并不是字 符常量的组成部分。 (2)单引号内的字符不允许是单引号或反斜 杠。 (3)字符常量具有数值,这个值就是该字符 在规定的字符集中的ASCII代码值。P140 (4)字符常量在机器内以整型常量的形式存 放,因此字符常量与整型常量等价。
C语言程序设计
第 1章
第一节 第二节 第三节 第四节 第五节 第六节
C语言基础知识
C语言程序的结构 整型数据 实型数据 算术表达式 赋值表达式 Turbo C的基本操作
第一节 C语言程序的结构
C语言程序的总体结构
一个完整的C语言程序,是由一个 main() 函数(又称主函数)和若干个其它函数结合而成 的,或仅由一个main()函数构成。
非法的标识符: yes? 234a yes no yes/no
标识符的分类
(1)关键字
关键字在程序中代表着固定的含义。 如标识符char、float以及for、if等都已有专 门的用途,它们不能用作变量名或函数名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息学奥赛辅导:C语言复习题(一)第1~3章练习题一、选择题1、一个C语言程序总是从____A、主过程开始执行B、主函数开始执行C、子程序开始执行D、主程序开始执行2、若num、a、b和c都是int型变量,则执行表达式num=(a=4,b=16,c=32)后num的值为_A、4B、16C、32D、523、下面四个选项中,均是C语言关键字的选项是____A、auto enum includeB、switch typedef continueC、signed union scanfD、if struct type4、下面四个选项中,均是合法整型常量的选项是____A、160 -0xffff 011B、-0xcdf 01a 0xeC、-01 986,012 0668D、-0x48a 2e5 0x5、下面四个选项中,均是合法浮点数的选项是___A、+1e+1 5e-9.4 03e2B、-.60 12e-4 -8e5C、123e 1.2e-.4 +2e-1D、-e3 .8e-4 5.e-06、下面四个选项中,均是合法转义字符的选项是____A、'\'' '\\' '\n'B、'\' '\017' '\"'C、'\018' '\f' 'xab'D、'\\0' '\101' 'xlf'7、下面正确的字符常量是____A、'\X17'B、'\80'C、'\\'D、"\n"8、下面四个选项中,均是正确的八进制数和十六进制数的选项是____A、-10 0x8f -011B、0abc -017 0xcC、010 -0x11 0xf1D、0a12 -0x123 -0xa9、下面四个选项中,均是正确的数值常量或字符常量的选项是____A、0.0 0f 8.9e '&'B、"a" 3.9E-2.5 1e1 '\"'C、'3' 011 0xFF00 0aD、+001 0xabcd 2e2 50.10、若有代数式,则正确的C语言表达式是____A、2*ln(x)*cos(x)/3*xB、2*ln(x)*cos(x)/(3*x)C、2*log(x)*cos(x)/3*xD、2*log(x)*cos(x)/(3*x)11、若有说明语句:char ch1='\065';char ch2="2";char ch3='2';则:ch1中____,ch2中____,ch3中____A、包含1个字符B、包含2个字符C、包含3个字符D、字符个数不确定,说明不正确12、若有运算符:>、*=、?:、%、sizeof,则将它们按运算的优先级排列的正确次序为(由低至高)____A、*=→?:→%→>→sizeofB、?:→*=→>→%→sizeofC、*=→>→?:→sizeof→%D、*=→?:→>→%→sizeof13、若有以下类型说明语句:char a;int b;float c;double d;则表达式a*b+d-c的结果类型为____A、floatB、charC、intD、double14、若有变量说明:int a=0,b=0,c=0;,以下符合C语言语法的赋值表达式是____A、a=9+b+c=a+9B、a=9+b;c=a+9;C、a=(9+b,b++)D、a=9+b++=a+715、已知字母A的ASCII码为(65)10,变量ch1为字符型,则执行语句ch1='A'+'6'-'3';后,ch1中的值为____A、DB、68C、一个不确定的值D、C16、以下运算符中优先级最高的运算符是____A、&&B、++C、?:D、!=17、若有定义:int k=7;float a=2.5,b=4.7;则表达式a+k%3*(int)(a+b)%2/4的值是___A、2.500000B、2.7500000C、3.500000D、0.00000018、sizeof(float)是____A、双精度型表达式B、一个整型表达式C、一个函数调用D、一个不合法的表达式19、设变量y为float类型,x为int类型,则以下能实现将y中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是____A、y=(y*100+0.5)/100.0B、x=y*100+0.5,y=x/100.0C、y=y*100+0.5/100.0D、y=(y/100+0.5)*100.020、设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是____A、0~255B、0~65535C、-32768~+32767D、-256~+25521、若有以下定义,则能得到值为3的表达式是____(int m=7,n=12)A、n%=(m%=5)B、n%=(m-m%5)C、n%=m-m%5D、(n%=m)-(m%=5)22、若有说明:int a=1,b=2,c=3,d=4;则表达式a<b?a:c<d?c:d的值是___A、4B、3C、2D、123、若x为int类型,则逗号表达式(x=4*5,x*5),x+25的结果是___,x的值是___A、20B、100C、表达式不正确D、4524、putchar函数可以向终端输出一个____A、整型变量值B、实型变量值C、字符串D、字符或字符型变量值25、若有以下变量说明和数据的输入方式,则正确的输入语句为('└─┘'代表空格)____变量说明:float x1,x2;数据的输入方式:4.52<回车>3.5<回车>A、scanf("%f,%f",&x1,&x2);B、scanf("%f%f",&x1,&x2);C、scanf("%3.2f└─┘%2.1f",&x1,&x2);D、scanf("%3.2f%2.1f",&x1,&x2);26、若运行以下程序时,从键盘输入25,13,10<回车>,则输出结果为___main( ){int a1,a2,a3;scanf("%d%d%d",&a1,&a2,&a3);printf("a1+a2+a3=%d\n",a1+a2+a3);}A、a1+a2+a3=48B、a1+a2+a3=25B、a1+a2+a3=10D、不确定值27、已知a、b、c为int类型变量,若有输入语句:scanf("a=%db=%dc=%d",&a,&b,&c);为使a值为1,b值为3,c值为2,从键盘输入数据的正确形式应当是____A、132<回车>B、a=1b=3c=2<回车>C、1<回车>3<回车>2<回车>D、a=1<回车>b=3<回车>c=2<回车>28、以下能正确定义整型变量x、y和z并为其赋初值5的语句是____A、int x=y=z=5;B、int x,y,z=5;C、int x=5,y=5,z=5;D、x=5,y=5,z=5;29、执行下面程序段后,x的值是____int x;printf("%d\n",(x=3*5,x+5));A、10B、15C、20D、5 30、下面程序段的输出结果是____int a=023;printf("%d\n",--a);A、23B、17C、18D、2431、已知ch是字符型变量,则不正确的赋值语句是____A、ch=5+9;B、ch='\0';C、ch='7'+'9';D、ch='a+b';32、设x,y是float型变量,则不正确的赋值语句是____A、++x;B、y=int(5);C、x*=y+1;D、x=y=0;33、设有说明:double b=0.5,c=1.5;int a=10;则正确使用了C语言库函数的赋值语句是____A、c=asin(c)+fabs(a);B、b=log10(b)+pow(b);C、c=sqrt(b-c);D、a=(int)(atan2((double)a,b)+exp(b-0.2));34、以下程序段的输出结果是____int i=1,j=4,k=2;float x=5.5,y=9.0,z;z=(i+j)/k+sqrt((double)y)*1.2/k+x;printf("%f\n",z);A、9.800000B、9.300000C、8.500000D、8.00000035、若a为int类型变量,则执行以下程序段后a的值为____a=5;a*=a/=a++;A、2B、1C、40D、336、若a和b均为int型变量,则执行以下程序断后x的输出是____x=15;y=15;printf("%d\n",x%=(y%=2));A、0B、1C、6C、1237、若x为unsigned int类型变量,则执行以下程序段后x的值是____x=65535;printf("%d\n",x);A、65535B、1C、无定值D、-138、以下语句的执行结果是____printf("%d\n",NULL);A、1B、0C、-1无定值39、若x为int类型变量,则执行以下程序段后的输出结果是____x=0xDEF;printf("%4d,%4o,%4x\n",x,x,x);A、3567,6757,defB、3567,6757,xdefC、3567,06757,0xdefD、3567,6757,0def40、若a、b、c均为int型变量,则执行以下程序段后的输出结果为____b=(a=10,a+5,c=10);printf("a=%d,b=%d,c=%d\n",a,b,c);c=(a=10,b=5,a+b);printf("a=%d,b=%d,c=%d\n",a,b,c);A、a=10,b=15,c=10B、a=10,b=10,c=10a=10,b=5,c=10 a=10,b=5,c=10C、a=10,b=10,c=10D、a=10,b=10,c=10a=10,b=5,c=15a=10,b=5,c=541、若a1、a2、a3、a4均为char类型变量,则执行以下程序段后的输出结果为____a1='1';a2='2';a3='3';a4='4';printf("%1c\n",a1);printf("%2c\n",a2);printf("%3c\n",a3);printf("%4c\n",a4);A、1B、1C、1D、输出格式的描述符不正确2 2 023 3 0034 4 000442、执行语句printf("The program's name is c:\\tools\book.txt");后的输出是____A、The program's name is c:tools book.txtB、The program's name is c:\tools book.txtC、The program's name is c:\\tools book.txtD、The program's name is c:\toolook.txt43、设a、b、c、d均是int类型变量,为了使以下程序段的输出为:1234+123+12+1,正确的输入形式应当是____scanf("%4d+%3d+%2d+%1d",&a,&b,&c,&d);printf("%4d+%3d+%2d+%1d",a, b, c, d);A、1234123121<回车>B、1234123412341234<回车>C、1234+1234+1234+1234<回车>D、1234+123+12+1<回车>44、设c1、c2均是char类型变量,则以下不正确的函数调用是____A、scanf("c1=%cc2=%c",&c1,&c2);B、getchar( )C、putchar(c2);D、putchar(c1,c2)45、逻辑运算符两侧运算对象的数据____A、只能是0或1B、只能是0或非0正数C、只能是整型或字符型数据D、可以是任何类型的数据46、判断char型变量c1是否为大写字母的正确表达式是____A、'A'<=c1<='Z'B、(c1>='A')&(c1<='Z')C、(c1>='A')&&(c1<='Z')D、('A'<=c1) AND ('Z'>=c1)47、执行以下程序段后的a值是___,b的值是___,c的值是___int a=5,b=6,c=1,x=2,y=3,z=4;c=(a=c>x)&&(b=y>z);A、0B、6C、1D、548、设i、j、和k是int型变量,且i=3,j=4,k=5,则以下值为0的表达式是_A、'i'&&'j'B、i<=jC、i||j+k&&j-kD、!((i<j)&&!k||1)49、设ch是char类型变量,其值是A,则以下表达式的值是____ch=(ch>='A'&&ch<='Z')?(ch+32):chA、ZB、AC、aD、z50、若希望当num的值为奇数时,表达式的值为“真”,num的值为偶数时,表达式的值为“假”。