C语言-2014
- 格式:doc
- 大小:310.50 KB
- 文档页数:35
《C语言程序设计》专升本练习题(学习资料仅供练习)目录专升本《C语言》练习题一 (1)专升本《C语言》练习题二 (9)专升本《C语言》练习题三 (17)专升本《C语言》练习题四 (24)专升本《C语言》练习题五 (31)专升本《C语言》练习题六 (42)专升本《C语言》练习题七 (48)专升本《C语言》练习题八 (58)专升本《C语言》练习题九 (65)专升本《C语言》练习题十 (72)专升本《C语言》练习题一6 10专升本《C语言》练习题二专升本《C语言》练习题三一、单项选择题1. C语言源程序文件经过编译连接之后生成一个后缀为__C__的文件。
A.”.c”B.“.obj”C.“.exe”D.“.bas”2. 以下选项中不正确的整型常量是_C____。
A. 12LB. -10C. 1,900D. 123U3. 表达式___C___的值是0。
A.3%5B.3/5.0C.3/5D.3<54. 表达式!(x>0||y>0) 等价于__D___。
A.!x>0||!y>0B.!(x>0)||!(y>0)C.!x>0&&!y>0D.!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。
A.4&&3B.+aC.a=b=5D.int(3.14)6. 若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,___B___是正确的输入。
A.2030,40B.20 30 40C.20, 30 40D.20, 30,407. 执行语句printf(”__D____”, 2); 将得到出错信息。
A.%dB.%oC.%xD.%f8. 设变量定义为“int s[ ]="hello\nworld\n";”,则数组s中有__B__个元素。
2014年C语言试题一、选择题(40*1)1 对用C语言编写的代码程序,以下叙述中正确的是(B)A、可立即执行B、是一个源程序C、经过编译即可执行D、经过编译解释才能执行2 以下选项中正确的实型常量是(D)A、0B、3. 1415C、0.03*102D、.323 C语言中不合法的字符串常量是(B)A、"\121 "B、'y= 'C、"\n\n "D、"ABCD\x6d "4 C语言中运算必须是整型的运算符是(B)A、/B、%C、*D、+5 C语言中的简单数据类型有(C)A、整型、实型、逻辑型B、整型、字符型、逻辑型C、整型、实型、字符型D、整型、实型、逻辑型、字符型6 以下选项中不合法的用户标识符是(D)A、PRINTFB、fileC、MainD、wb-17 以下非法的赋值语句是(C)A、n=(i=2,++i)B、j++C、++(i+1)D、x=i>08 C语言中不合法的常量是(D)A、'\xff 'B、'\65 'C、'& 'D、'\028 '9 C语言中,字符(char)型数据在计算机内存中的存储形式是(D)A、反码B、补码C、EBCDIC码D、ASCII码10 以下程序的输出结果是(D)void main(){ int x=10,y=3;printf("%d\n ",y=x/y);}A、0B、1C、不确定的值D、311 以下程序段的输出是(A)int x=496;printf("*%-06d*\n ",x);A、*496 *B、* 496*C、*000496*D、输出格式不合法12 若变量已经正确说明为int类型,要给a,b,c输入数据,以下正确的输入语句是(D)A、read(a,b,c);B、scanf("%d%d%d ",a,b,c);C、scanf("%D%D%D ",&a,&b,&c)D、scanf("%d%d%d",&a,&b,&c)13 以下合法的C语言赋值语句是(D)A、a=b=58B、k=int(a+b);C、a=58,b=58D、- - i;14 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是(A)A、1B、0C、2D、615 以下程序执行后输出结果是(B)void main(){ int i=10,j=1;printf("%d,%d\n ",i--,++j);}A、9,2B、10,2C、9,1D、10,116 设有语句char a= '\172 ';,则变量a(A)A、包含一个字符B、包含2个字符C、包含个字符D、说明不合法17 若变量已经正确定义,要将a和b中的数据进行交换,下面不正确的语句是(C)A、a=a+b,b=a-b,a=a-b;B、t=a;a=b;b=tC、a=t;t=b;b=a;D、t=b;b=a;a=t;18 若变量已经正确说明,要求用以下语句给c1赋值字符%,给c2赋值字符#,给a赋值2.0,给b赋值4.0,则正确的输入形式是(B)scanf("%f%c%f%c ",&a,&c1,&b,&c2);A、2.0 % 4.0 #B、2.0%4.0#C、2 % 4#D、2 % 4 #19 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D)A、6.500000B、7C、5.500000D、6.00000020 以下程序执行后的输出结果是(D)void main(){int i=1,j=1,k=2;if((j++||k++)&& i++) printf("%d,%d,%d\n ",i,j,k);}A、1,1,2B、2,2,1C、2,2,2D、2,2,321 下列运算符中优先级最高的运算符是(A)A、!B、%C、-=D、&&22 运行以下程序后,输出的结果是(A)void main(){ int k=-3;if(k<=0)printf("****\n ");elseprintf("&&&&\n ");}A、****B、&&&&C、****&&&&D、有语法错误不能通过编译23 以下程序段的输出结果是(B)void main(){ char x= 'A ';x=(x> 'A ' && x< 'Z ')?(x+32):x; printf("%c\n ",x ); }A、aB、AC、ZD、z24 以下的程序执行后输出的结果是(A)void main(){ int a=5,b=4,c=3,d=2;if(a>b>c)printf("%d\n ",d);else if((c-1>=d)==1)printf("%d\n ",d+1);else printf("%d\n ",d+2);}A、3B、2C、编译出错D、425 若执行以下程序时从键盘上输入3和4(输入方式:3 4),则输出的结果是(C)void main(){ int a,b,s;scanf("%d%d ",&a,&b);s=a;if(as*=s;printf("%d\n ",s);}A、14B、18C、16D、2026 设a、b和c都是int变量,且a=3,b=4,c=5,则以下的表达式中,值为0的表达式是(D)A、a&&bB、a<=bC、a||b+c&&b-c D、!((a<b)&&!c||1)< p="">27 以下的程序运行结果是(D)void main(){ int a=2,b=-1,c=2;if(a<b)< p="">if(b<0) c=0;else c+=1;printf("%d\n ",c);}A、0B、1C、3D、228 以下程序的输出结果是(C)void main(){ int x=1,a=0,b=0;switch(x){case 0:b++;case 1:a++;case 2:a++;b++;}printf("a=%d,b=%d\n ",a,b);}A、a=2,b=2B、a=1,b=1C、a=2,b=1D、a=1,b=029 若x是int类型变量,以下程序段的输出结果是(D)for(x=3;x<6;x++)printf((x%2)?( "**%d "):( "##%d\n "),x);A **3C ##3D **3##4##4 **4 **4##5 **5**5 ##530 以下程序的输出结果是(A)int n=10;while(n>7){ n--;printf("%d ",n);}A、987B、1098C、10987D、987631 以下程序段的输出结果是(C)int i,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4){m++;} printf("%d\n ",m);A、12B、15C、20D、2532 以下程序段的输出结果是(C)int x=3;do{ printf("%3d ",x-=2);} while(!(--x));A、1C、1 -2D、死循环33 以下的程序输出结果为(A)void main(){ int i;for(i=0;i<3;i++)switch(i){ case 1:printf("%d",i);case 2:printf("%d",i); default: printf("%d",i);}}A、011122B、012C、012020D、12034 以下程序的输出结果是(C)# includevoid man(){ int i;for(i=1;i<5;i++){if(i%2) putchar('< ');else continue;putchar('> ');}putchar('# ');}A、<><><>#B、><><><#C、<><>#D、><><#35 若想将一个字符数组a的内容存入另一个字符数组b中,下列正确的是(B)A、b=aB、strcpy(b,a)C、strcpy(a,b)D、strcat(b,a)36 下面的程序输出结果是(A)void main(){ int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf("%d\n",*(p+2));}A、3B、4C、1D、237 以下对整型数组a的正确说法是(D)A、int a(10);B、int n=10,a[n];C、int n;sacnf("%d ",&n);int a[n]D、#define SIZE 10 int a[SIZE];38 以下程序的输出结果是(B)void main(){ int i,sum;for(i=1;i<6;i++)sum+=i;printf("%d\n ",sum);}A、15B、不确定C、16D、039 以下程序的输出结果是(A)void main(){ int i,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d, ",x[i][2-i]);}A、3,5,7B、1,4,7C、1,5,9D、3,6,940 若fp是指向某文件的指针,且已经读到文件的末尾,则库函数feof(fp)的返回值是(A)A、EOFB、-1C、NULLD、非零值二、填空题(20*1)1、C语言中函数的组成部分包括函数头和函数体。
2014年9月二级C语言程序设计模拟(7)试题及答案单项选择题1.下面关于算法的叙述中,正确的是( )。
A:算法的执行效率与数据的存储结构无关B:算法的有穷性是指算法必须能在执行有限个步骤之后终止C:算法的空间复杂度是指算法程序中指令(或语句)的条数D:以上三种描述都正确参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 算法在运行过程中需辅助存储空间的大小称为算法的空间复杂度。
算法的有穷性是指一个算法必须在执行有限的步骤以后结束。
2.下列二叉树描述中,正确的是( )。
A:任何一棵二叉树必须有一个度为2的结点B:二叉树的度可以小于2C:非空二叉树有0个或1个根结点D:至少有2个根结点参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 二叉树是由n≥0个结点的有限集合构成,此集合或者为空集,或者由一个根结点及两棵互不相交的左右子树组成,并且左右子树都是二叉树。
二叉树可以是空集合,根可以有空的左子树或空的右子树。
二叉树不是树的特殊情况,它们是两个概念。
二叉树具有如下两个特点:①非空二叉树只有一个根结点。
②每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。
3.如果进栈序列为A,B,C,D,则可能的出栈序列是( )。
A: C,A,D,BB: B,D,C,AC: C,D,A,BD:任意顺序参考答案: B 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 栈的操作原则为后进先出。
选项B)中出栈顺序可按“A进,B进,B出,C进,D进,D出,C出,A出”实现。
4.下列各选项中,不属于序言性注释的是( )。
A:程序标题B:程序设计者C:主要算法D:数据状态参考答案: D 题目分值: 1.0 分您的答案: 得分: 0.0详细解答: 注释一般为序言性注释和功能性注释。
序言性注释常位于程序开头部分,它包括程序标题、程序功能说明、主要算法、接口说明、程序位置、开发简历、程序设计者、复审者、复审日期及修改日期等。
C 语言课程考试试卷课程名称:《C 语言程序设计》年级: 班级:姓名:_______________ 学号:_________________ 考试(考查) 闭卷选择题(每题2分,共计100分)1. 以下叙述正确的是( )A) 在C 程序中,main 函数必须位于程序的最前面 B) C 语言的每一行中只能写一条语句 C) C 语言本身没有输入输出语句D) 在对一个C 语言进行编译的过程中,可发现注释中的拼写错误 2. 不属于字符型常量的是__________。
A) 'B' B) 'C' C) '\n' D) P3. 判断 char 型变量ch 是否是大写字母的正确表达式是_________。
A) 'A'<=ch<='Z' B) (ch>=‘A')&(ch<='Z') C) (ch>='A')&&(ch<=‘Z') D) ('A'<=ch)AND('Z'>=ch)4. 若有说明: int a[10]; 则对 a 数组元素的正确引用是________。
A) a[10] B)a[3.5] C) a(5) D) a[10-10]5. 以下二维数组 a 的正确说明是________。
A) int a[1,1]; B) float a(3,4); C) double a[1][4]; D) float a(3)(4);6. 设有: int a=2,b=3,c=7,d=8,m=3,n=3; 执行 (m=a>b)&&(n=c>d) 后的 n 值为_________。
A) 0 B) 1 C ) 2 D) 37. 已知 int x=10,y=20,z=30; 以下语句执行后, x 、y 、z 的结果是。
2014《C语言》模拟试题及答案(经典)一、单选题1. C语言中基本数据类型有。
CA)整型、实型、逻辑型B)整型、字符型、逻辑型C)整型、实型、字符型D)整型、实型、字符型、逻辑型2. 在C语言中,数字O29是一个。
AA)八进制数 B)十进制数 C)十六进制数 D)非法数3. 在以下关于C语言的不严格的叙述中,错误的说法是。
AA)在标识符中,大写字母和小些字母的意义相同B)有些不同类型的变量可以在一个表达式中运算C)在赋值表达式中等号“=”左边的变量和右边的值可以是不同类型D)同一个运算符号在不同的场合可以有不同的含义4.下列关于C语言用户标识符的叙述中正确的是。
BA)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头【解析】考查C语言中的用户标识符规则,在C语言程序设计中,用户标识符是由字母、数字和下划线组成的,并且第一个字符必须是字母或下划线。
5. 结构化程序设计方法中有三种基本控制结构,以下不正确的是。
DA) 顺序结构B) 选择结构C) 循环结构 D) 数组结构6. C语言提供的合法关键字是。
DA) swicth B) cha C) Case D) default7.以下非法的赋值语句是CA) n=(i=2,++i); B)j++; C) ++(i+1); D)x=j>0;【解析】对表达式不能进行自加自减运算。
8.在以下一组运算符中,优先级最高的运算符是。
A) <= B) = C) % D) &&【解析】C语言常用的积累运算符的优先级关系是:逻辑非“!”>算术运算符>关系运算符>逻辑与“&&”>逻辑或“||”>赋值运算符>逗号运算符。
由于C选项为求余运算符,所以本题正确答案为C选项。
第二十届全国青少年信息学奥林匹克联赛初赛普及组C语言试题竞赛时间:2014年10月12日14:30~16:30选手注意:试题纸共有8页,答题纸共有2页,满分100分。
请在答题纸上作答,写在试题纸上的一律无效。
不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项)1. 以下哪个是面向对象的高级语言()。
A. 汇编语言B. C++C. FortranD. Basic2. 1TB代表的字节数量是()。
A. 2的10次方B. 2的20次方C. 2的30次方D. 2的40次方3. 二进制数00100100和00010101的和是()。
A. 00101000B. 001010100C. 01000101D. 001110014. 以下哪一种设备属于输出设备()。
A. 扫描仪B. 键盘C. 鼠标D. 打印机5. 下列对操作系统功能的描述最为完整的是()。
A. 负责外设与主机之间的信息交换B. 负责诊断机器的故障C. 控制和管理计算机系统的各种硬件和软件资源的使用D. 将源程序编译成目标程序6. CPU、存储器、I/O设备是通过()连接起来的。
A. 接口B. 总线C. 控制线D. 系统文件7. 断电后会丢失数据的存储器是()。
A.RAMB. ROMC. 硬盘D. 光盘8. 以下哪一种是属于电子邮件收发的协议()。
A. SMTPB. UDPC. P2PD. FTP9. 下列选项中不属于图像格式的是()。
A. JPEG格式B. TXT格式C. GIF格式D. PNG格式10. 链表不具有的特点是()。
A. 不必事先估计存储空间B. 可随机访问任一元素C. 插入删除不需要移动元素D. 所需空间与线性表长度成正比11. 下列各无符号十进制整数中,能用八位二进制表示的数中最大的是()。
A. 296B. 133C. 256D. 19912. 下列几个32位IP地址中,书写错误的是()。
2014年蓝桥杯(第5届)预赛本科B组真题解析啤酒和饮料啤酒每罐2.3元,饮料每罐1.9元。
小明买了若干啤酒和饮料,一共花了82.3元。
我们还知道他买的啤酒比饮料的数量少,请你计算他买了几罐啤酒。
注意:答案是一个整数。
请通过浏览器提交答案。
不要书写任何多余的内容(例如:写了饮料的数量,添加说明文字等)。
(1)答案。
11(2)编程思路。
把啤酒、饮料的单价和总共花的钱都乘上10,转换为整数。
然后用循环对啤酒的罐数b(1≤b<823/23)和饮料的罐数c(1≤c<823/19)进行穷举,找出满足要求的啤酒罐数b。
(3)源程序。
#include <stdio.h>int main(){int b,c;for (b=1;b<35;b++)for (c=1;c<45;c++){if((823==b*23+c*19) &&(b<c))printf("%d\n",b);}return 0;}(4)用单重循环完成穷举。
实际上,也可以只对啤酒的罐数进行穷举。
#include <stdio.h>int main(){int b,cSum;for (b=1;b<35;b++){cSum=823-23*b;if (cSum%19==0 && cSum/19>b)printf("%d\n",b);}return 0;}切面条一根高筋拉面,中间切一刀,可以得到2根面条。
如果先对折1次,中间切一刀,可以得到3根面条。
如果连续对折2次,中间切一刀,可以得到5根面条。
那么,连续对折10次,中间切一刀,会得到多少面条呢?答案是个整数,请通过浏览器提交答案。
不要填写任何多余的内容。
(1)答案。
1025(2)编程思路。
由题目可知,对折0次切一刀得到2根,对折1次切一刀得到3根,对折2次切一刀得到5根。
练习题1参考答案一、选择题二、填空题1.程序设计语言主要分为以下三类:机器语言、汇编语言和高级语言。
2.在C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。
3.C程序开发过程的一般步骤为:源程序的编辑、编译、连接和运行。
4. C程序源文件的扩展名为.c ,编译成功后产生的文件扩展名为.obj ,连接成功后产生文件扩展名为.exe 。
三、应用题略练习题2参考答案一、选择题1.通常一个字节包含8 个二进制位。
在一个字节中能存放的最大(十进制)整数是255(无符号),127(带符号),最小(十进制)整数是-128 ,它的二进制数的形式是10000000 。
2.在C语言中,十进制数30的八进制数表示形式是 036 ,十六进制数表示形式是 0x1e ,在内存中它的二进制数表示形式是 0000000000011110 。
3.条件“20<x<30或x<-100”的C语言表达式是 x>20&&x<30||x<-100 。
4.若a、b和c均是int型变量,则计算表达式a=(b=4)+(c=2)后,a值为 6 ,b 值为 4 ,c值为 2 。
5.已知int y; float x=-3; ,执行语句y=x%2; 后,变量y的值为语句出错。
6.字符串"ab\034\\\x79"的长度为 5 。
7.在C语言中(以16位PC机为例),一个float型数据在内存中所占用的字节数为4 ;一个double型数据在内存中所占的字节数为 8 。
8.若s是int型变量,且s=6,则s%2+(s+1)%2表达式的值为 1 。
9.表达式pow(2.8,sqrt(double(x)))值的数据类型为 double 。
10.若a是int型变量,则表达式(a=4*5, a*2), a+6的值为 26 。
11.若a是int型变量,则执行表达式a=25/3%3后a的值为 2 。
一、基本概念1、什么是计算机程序就是由程序员编写的用于控制计算机完成特定任务的指令。
(你试着对计算机大叫,看看它能明白你的意思吗?,比如说:“请计算5的阶乘除以3的结果是多少”)2、什么是计算机语言;语言的分类有哪些计算机语言:是一个能完整、准确和规则地表达人们如何控制计算机工作的一套“符号系统”。
语言的分类:①机器语言:二进制形式书写,计算机直接识别和执行,编写复杂容易出错。
(古代文言文)②汇编语言:助记符形式书写,需编译后执行,执行效率高,移植性查。
(现代各地方言)③高级语言:接近人类语言形式书写,需编译后执行,执行效率底(相对前两者),移植性好。
(现代普通话)3、语言与程序的区别由特定的语言来编写程序,程序就是某种语言的符号序列。
(就是用某一种语言,例如现代普通话,说出的一段即具有逻辑又有意义的话)4、C语言的起源及特点C语言是一门高级语言,由美国贝尔研究所的D.M.Ritchie于1972年推出,之后又有改进和不同版本。
其主要特点如下:(无需死记硬背,了解即可,编程久了自然明白)①简洁紧凑,使用方便、灵活②运算符丰富③数据类型丰富④是结构化语言⑤语法限制不太严格,程序设计自由度大⑥允许直接访问物理地址,可对硬件进行操作⑦生成目标代码质量高,程序执行效率高(相对别的高级语言)⑧适用范围大,可移植性好5、一个简单的hello world程序(最简单的第一印象)main(){printf("hello world!");}(虽然我不赞同死记硬背,但是这个简单结构必须记住,否则最好换专业)6、源程序的编译、连接、运行、集成开发环境等概念•源程序不能执行,需经编译连接后生成可执行二进制码(即可执行文件,后缀名为.exe),才可以执行。
(源程序是给人看的,不是给计算机看的)•集成开发环境,是方便用户编写、运行和调试程序的一套软件。
例如:TC、Win-TC、Visual C++、Dev C++等(程序员们编程的工具)注意:由于不同的集成开发环境因为使用了不同的编译器,所以相同的程序使用不同的开发软件可能会得到不同的运行结果,例如:(1)long double 变量在Win-TC中使用%Lf可以输出正确结果,但Dev C++中会出错(2)对于int型变量Win-TC使用sizeof返回为2,而Dev C++返回为4(3)Win-TC中必须将变量定义放在前面,而Dev C++却不然(初学者可以暂时忽略这方面)7、C语言最基本、最简单的结构main(){}(这是每个程序都必须写出来的结构,考试能写出这个就能得3分啦)8、等级考试中经常被考到的一些基本概念•函数是C语言的基本构成单位;•一个程序有且仅有一个main函数;•程序都是从main函数开始执行;• main函数可以放在程序任何位置;•语句必须以分号作为结束符;• C语言没有输出输入语句,其输出输入由函数完成;(在中国应试考试的选择题中经常出现,你可能不太能明白,没关系,算是先灌点应试概念吧)目标与任务:【1】建立C语言基本概念,会写简单的Hello World程序【2】掌握C语言程序的编写、编译、运行过程【3】会使用printf打印输出,会使用\n进行换行,会使用%d输出数据结果,明白getch()的作用。
二、数据类型在程序中为数据有必要区分为不同的类型以适应不同的应用场合,例如存储人的姓名(字符型)、年龄(整型)、体重(实型)就需要使用不同的数据类型。
C语言数据类型如下:(相当于小学学习汉语拼音和简单汉字,是以后作文(程序)写得好不好的关键基础,是学习编程的第一步)其中使用最多的是:整型(int、long)、实型(float、double)、字符型(char)(1)数据类型不一样,所占内存字节数不一样char:1字节;short:2字节;int:2或4字节【Win-TC中2字节,DEV C++中4字节】long:4字节;float :4字节;double: 8字节注:sizeof运算符可用来测定数据类型的字节数;(2)signed与unsignedsigned与unsigned可以放在整型变量short、int、long前,以表示该整型数为有符号数或无符号数•无符号整型:unsigned == unsigned int•无符号短整型:unsigned short == unsigned short int•无符号长整型:unsigned long == unsigned long int-----------------------------------------------•有符号整型:int == signed int•有符号短整型:short == short int == signed short int•有符号长整型:long == long int == signed long int目标与任务:【1】重点认识整型、实型、字符型【2】使用sizeof测试各种常用数据类型的字节数三、常量和变量1、什么是常量与变量例如:求半径为R高为H的圆柱体的体积V。
其中V=3.14*R*R*H 其中3.14为常量,R、H、V为变量;2、变量的定义定义格式:数据类型变量1 [ ,变量2,…,变量n ];例如:int x;int x,y,z;也可:int x=1,y=2,z;注意:多数编译器要求变量的定义置于程序的起始处,但是DEV C++例外;3、常量的两种形式•直接常量例如:56、3.14、5.1E4、’A’、…•符号常量#define PI 3.14#define true 1注意:#define定义常量时,必须置于程序起始处,且末尾不加分号4、标识符【程序中用户自定义的变量名,函数名等都属于标识符】•是由字母、数字、下划线所组成的且首字母不为数字的字符序列;•用来标识变量名、符号常量名、函数名、数组名等;•不能与C语言中的关键字相同;目标与任务:【1】能区分常量与变量,明白“赋值”的含义【2】会定义整型、实型、字符型变量,同时掌握 %d、%f、%c的使用【3】会用scanf进行基本的数据输入四、常量的书写形式1、整型常量(1)十进制:123、-756(2)八进制:0123、-0756(3)十六进制:0X123、-0x756注意:整型常量的默认类型为int;高精度可以向低精度赋值,但是会有精度损失。
(1)若以u或U结尾,则为unsigned int型(2)若以l或L结尾,则为long int型(3)若无U或L结尾,则自动按照其数值大小匹配为int或long int2、浮点型常量(1)十进制形式:.123、0.34、56.、78.9(必须有小数点出现)(2)指数的形式:123e4、34.6E7、.23E-6(E的前后都必须有数字,其后数字必须为整数)注意:浮点型常量的默认类型为double;高精度可以向低精度赋值,但是会有精度损失。
(1)若以f或F结尾,则为float型;(2)若无f或F结尾,则为double型;【如何验证?sizeof(45.6)】3、字符型常量(1)用单引号括起来的一个字符:’A’、’@’、’?’(2)用单引号括起来的八进制形式:’\123’、’\34’,…’\ddd’(ddd:1~3位8进制)(3)用单引号括起来的十六进制形式:’\x45’、’\xff’,…’\xhh’ (hh:1~2位16进制,其x只能小写)注意:字符可以当作整型运算;整型可以当作字符输出(0~255之间的数);4、字符串常量由一对双引号括起来的字符序列。
例如:”abc?f%...”、”How are you?”注意:’A’与”A”的不同目标与任务:【1】编写一个实例,要求使用上面几种实型常量【2】明白转义字符的作用和正确定义标识符的意义;举例说明五、运算符1、各种运算符的分类(1)算术运算符:( + - * / % ++ -- )(2)关系运算符:( < <= == > >= != )(3)逻辑运算符:(! && || )(4)位运算符:( << >> ~ | ^ & )(5)赋值运算符:( = 及其扩展)(6)条件运算符:( ?: )(7)逗号运算符:( , )(8)指针运算符:( * & )(9)求字节数:( sizeof )(10)强制类型转换:( (类型) )(11)分量运算符:( . -> )(12)下标运算符:( [] )(13)其它:(函数调用运算符( ) )2、基本运算符介绍(1)/ :除法运算符,若被除数与除数均为整数则商也为整数。
例如:5/2结果为2;(2)% :求余运算符,要求被除数与除数均为整数。
例如:7%4结果为3;(3)++:自加1运算符,例如:X++或++X;X++:X先参与运算,之后自加1;++X:X先自加1,之后参与运算;(4)+=:复合运算符,例如:A+=B等价于A=A+B;X+=Y-B等价于X=X+(Y-B)(5)/=:复合运算符,例如:A/=B等价于A=A/B;X/=Y-B等价于X=X/(Y-B)3、运算符的优先级和结合性参考教材附录D,不必死记,在应用中理解记忆。
目标与任务:【1】下面是计算10的阶乘程序,分析其在Win-Tc和DEV C++中的执行结果,为什么?main(){int x;x=10*9*8*7*6*5*4*3*2*1;printf("%d",x);getch();}提示:int、long、%d、%ld、L【2】掌握 / % 的用法。
输入一个3位整数,然后将其各位数字反向输出,例如123输出为321。
六、输入输出函数详解1、输出函数printf()printf(“%d”,x);printf(“%d%f”,x,y);printf(“width=%d length=%f”,x,y);重点掌握:%d、%f、%c重点掌握:.n 、l特别说明:printf函数输出表列中的求值顺序,不同的编译系统不一定相同,可以从左到右,也可从右到左。
Turbo C是按从右到左进行的。
例如:int i=0; printf("%d%d%d",i++,i++,i++);的打印结果为2102、输入函数scanf()scanf(“%d”,&x);scanf(“%d%f”,&x,&y);scanf(“%d,%f”,&x,&y);错误用法:scanf(“width=%d length=%f”,&x,&y);重点掌握:%d、%f、%c重点掌握:l3、printf()与scanf()中的常见错误(1)“”所括的位置不正确;(2)丢失输入变量名前的&;(3)连续输入数据时如何正确分割;4、字符输入输出getchar与putchar(1)getchar用法char ch;ch = getchar();printf(“%c”,ch);(2)putchar用法char ch;ch = ‘A’;putchar(ch);目标与任务:【1】使用getchar连续输入3个数字字符,以这三个数字字符分别作为百位、十位、个位,则其对应了一个三位10进制数,请分别以8进制、10进制、16进制的形式输出该数字。