资源描述
,#,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,任务,1,学生成绩的输入、输出,一、问题情景,一个班进行了一次考试,现要将几个学生的成绩输入电脑,并按要求输出。,二、具体实现,#include stdio.h /,文件预处理,main()/,函数名,/,函数体开始,int x,y,z;/,定义三个变量,x,y,z,printf(,请输入三个学生的成绩,);,scanf(%d%d%d,/*,输入三个学生的成绩*,/,printf(,输出三个学生的成绩,);,printf(x=%d,y=%d,z=%dn,x,y,z);/,输出三个变量,x,y,z,的值,/,函数体结束,程序运行结果:,从上面这段程序可分析出:,首先,要了解,C,语言的结构;,第二,要了解,C,语言的运行环境;,第三,要懂得如何定义变量,输入输出语句。,任务1 学生成绩的输入、输出一、问题情景从上面这段程序可分,1,相关知识,(,一,)C,程序的结构,#include“stdio.h”,int x,y;,main(),x=1;,y=x+2;,printf(“x=%dny=%dn”,x,y);,文件预处理,主函数,数据声明部分,语句部分,相关知识(一)C程序的结构#include“stdio,2,(,二,)C,程序运行环境及运行方法,点击,【,文件,】【,新建,】,,出现的对话框中用鼠标点击,【,文件,】【C+Source File】,,然后更改文件所保存的目录(若需要更改),需入文件名,然后点击,【,确定,】,。输入程序。当程序输入完毕后,点击 或按,F7,,进行编译和连接。如果没有错误,点击 或按,Ctrl+F5,,进行运行,就能得出程序运行的结果。,(二)C程序运行环境及运行方法 点击【文件】【新,3,(,三,),数据类型,C,语言的数据类型可分为:,基本类型:又分为整型、实型、字符型和枚举型四种。其中枚举型这里暂不介绍。,构造类型:又分为数组类型、结构类型和共用类型三种。,指针类型。,空类型。,【,常量,】,在程序运行中,其值不能被改变的量称为常量。,常量可分为:,整型常量。例,1,,,23,,,-8,。,实型常量。例,1.23,,,-9.8,,,.123,,,23.,,,0.0,,,2.23e-4,(表示,2.2310-4,),,0.23e3(,表示,0.23103),,,0.23E-3(,表示,0.2310-3),,,1.23E3(,表示,1.23103),。,字符常量。例,A,,,+,,,8,。,符号常量。例,#define PI 3.14,。则,PI,是一个符号常量,其值为,3.14,,,它不能在程序中被改变。(请见任务三中的例,1-15,改),【,变量,】,所谓变量就是在程序运行过程中,其值可以被改变的量。,一个变量由两个要素组成。即变量名和变量值。,变量名:每一个变量都必须有一个名字,即变量名。变量名的命名规则:,由字母或下划线开头,后面跟字母、数字和下划线。其有效长度,,随系统而异,但至少前,8,个字符有效。如果超长,则超长部分被舍弃。,C,语言的变量名区分大小写。,即同一字母的大小写,被认为给是两个不同的变量。,例,Total,、,total,、,toTal,是不同的变量名。,给变量名命名时,最好遵循“见名知意”这一基本原则。,例如,,name/xm(,姓名,),、,sex/xb(,性别,),、,age/nl(,年龄,),、,salary/gz(,工资,),。,【,变量,】,所谓变量就是在程序运行过程中,其值可以被改变的量。,一个变量由两个要素组成。即变量名和变量值。,变量名:每一个变量都必须有一个名字,即变量名。变量名的命名规则:,由字母或下划线开头,后面跟字母、数字和下划线。其有效长度,,随系统而异,但至少前,8,个字符有效。如果超长,则超长部分被舍弃。,【,变量定义与初始化,】,数据类型 变量名,=,初值,变量名,2=,初值,2;,例如:,int x=1,y=2,z=3;,float a=1.1,b=1.2,c=-0.1;,char ch1=A,ch2=*;,(三)数据类型C语言的数据类型可分为:【常量】【变量】C语,4,(,四,),格式化输出,printf(),函数,printf(),函数的一般格式,printf(“,格式字符串”,输出项表,);,1.,常用的格式字符串有:,(1),格式指示符:,%d,带符号十进制整数。,%f,带符号十进制小数形式(默认,6,位小数)。,%c,输出一个字符。,(2),转义字符,例,1-1,中的,printf(),函数中的”,n”,就是转义字符,输出时产生一个“换行”。,(3),普通字符除格式指示符和转义字符之外的其它字符。例,1-1,中的,printf(“x=%d,y=%d,z=%dn”,x,y,z);,的“,x=”,、“,y=”,、“,z=”,格式字符串中的普通字符,原样输出。在汉字系统环境下,允许使用汉字。,2.,输出项表,输出项表是可选的。在输出项中,列出要输出的任意类型的数据。如果要输出的数据不止一个,相邻,2,个之间用逗号分开。,(,1,),printf(“,我是一个学生,n”);,/,没有输出项,(,2,),printf(“%d”,1+2);,/,输出,1+2,的值,(,3,),printf(“a=%d b=%dn”,1,1+3);,/,输出,1,的值和,1+3,的值,注意:,printf(“%d%fn”,1.212,5);,是错误的。,#include“stdio.h”,main(),printf(“%d%fn”,1.234,6);,(四)格式化输出printf()函数printf()函,5,【,例,1-3】,格式化输出。,#include stdio.h,main(),int x=1,y=2,z=3;/*,定义,x,y,z,三个整型变量,并将它们的初值赋为,1,2,3*/,float a=1.1,b=2.3;,char c1=A,c2=B;/*,定义,c1,c2,二个字符型变量,并将它们的初值赋为,A,和,B*/,printf(,输出,x,y,z,的值,n);/,原样,输出,x,y,z,的值,后换行,printf(x=%d,y=%d,z=%dn,x,y,z);/,输出,x=1,y=2,z=3,后换行,printf(,输出,a,b,的值,n);,printf(a=%f,b=%fn,a,b);,printf(,输出,c1,c2,的值,n);,printf(c1=%c,c2=%cn,c1,c2);/,输出,c1=A,,,c2=B,后换行,程序的运行结果为:,【例1-3】格式化输出。#include stdio.h,6,(,五,),格式化输入,scanf(),函数,1.scanf(),函数的功能:从键盘上接收格式化输入。,2.scanf(),函数的一般格式,scanf(“,格式字符串”,输入项首地址表,);,格式字符串。格式字符串可以包含,3,种类型的字符:格式字符,空白字符(空格、,Tab,键和回车键)和非空白字符(又称普通字符)。,格式指示符与,printf(),函数的相似:,%d,,十进制带符号的整型数;,%f,,十进制带符号的实型数;,%c,,输入一个字符。,空白字符作为相邻,2,个输入数据的缺省分隔符。,非空白字符在输入数据时,必须原样一起输入。,输入项首地址表由若干个输入项首地址组成,相邻,2,个输入项地址之间用逗号分开。变量首地址的表示方法如下:,&,变量名,其中“,&”,是地址运算符。例如,在例,1-1,中,scanf(“%d%d%d”,&x,&y,&z),中的“,&x”,是指变量,x,在内存中的首地址。其功能是从键盘上输入,3,个整型数,分别存入,&x,,,&y,,,&z,起始的存储单元中,即输入三个整数分别赋给,x,,,y,,,z,。,scanf(“%d,%d”,scanf(“%d%d”,(五)格式化输入scanf()函数1.scanf()函,7,有两个人,A,,,B,,在数学考试中获得,87,和,76,的成绩,请输入,A,,,B,两人的代号及成绩,输出成绩,。,分析:此题就是考查输入输出语句,注意整数输入,/,输入的格式用,%d,,字符变量的输入,/,输出格式用,%c,,同时注意输入语句中的两个数据之间用什么符号隔开,则在程序运行输入数据时也要用同样的符号隔开两个数据。,#include stdio.h,main(),char c1,c2;,int x,y;,printf(,请输入,A,的成绩及代号:,);,scanf(%d:%c,printf(,请输入,B,的成绩及代号:,);,scanf(%d:%c,printf(,输出,A,的代号及成绩:,);,printf(%c:%dn,c1,x);,printf(,输出,B,的代号及成绩:,);,printf(%c:%dn,c2,y);,程序运行结果为:,有两个人A,B,在数学考试中获得87和76的成绩,请输入A,,8,任务,2,总分及平均分的计算,一、问题情景,一个班进行了一次考试,现要将几个学生的成绩输入电脑,并计算他们的平均分及总分,然后按要求输出。,二、具体实现,#include stdio.h,main(),int x,y,z;,float sum,avg;/,定义二个实型变量,sum,avg,printf(,请输入三个学生的成绩,);,scanf(%d%d%d,/*,输入三个学生的成绩*,/,sum=x+y+z;/,将,x+y+z,的值赋给,sum,avg=sum/3;/,将,sum/3,的值赋给,avg,printf(,请输出三个学生的总成绩及平均分为,);/,输出提示,printf(sum=%.2f,avg=%.2fn,sum,avg);/,输出二个变量,sum,及,avg,的值,程序的执行情况如下:,首先,算术运算和算术表达式;,第二,赋值运算和赋值表达式;,另外,还需掌握在本任务中没有体现,但在,C,程序中却经常要用到的,C,语言特有的运算和运算符。,任务2 总分及平均分的计算一、问题情景首先,算术运算和算术,9,三、相关知识,(,一,),算术运算与算术表达式,1.,五种基本的算术运算符,+,(加法)、,-,(减法)、*(乘法)、,/,(除法)、,%,(求余数),这里,需要特别提出的是:,(,1,)关于除法运算,/,C,语言规定,两个整数相除,其商为整数,小数部分被舍弃。例如:,5/2=2,。,如果商为负数,则取整的方向随系统而异。但大多数的系统采取“向零取整”原则,换句话说,取其整数部分。例如:,-5/3=-1,。,(,2,)关于求余数运算,%,要求两侧的操作数均为整型数据,否则出错。例如:,5%3=2,,,3%5=3,,,-5%3=-2,,,-5%,(,-3,),=-2,。但是,,5.2%3,是语法错。,三、相关知识(一)算术运算与算术表达式,10,(,一,),算术运算与算术表达式,2.,表达式和算术表达式,(,1,)表达式的概念,用运算符和括号将运算对象(常量、变量和函数)连接起来的、符合,C,语言语法规则的式子,称为表达式。,单个常量、变量,可以看作是表达式的一种特例。将单个常量、变量构成的表达式称为简单表达式,其他表达式称之为复杂表达式。,(,2,)算术表达式的概念,表达式中的运算符都是算术运算符。例如:,3+2*5,、(,x+y,),/2+3,、,5%2+3,都是算术表达式。,3.,运算符的优先级与结合性,(,1,)算术运算符的优先级是:先*,,/,,,%,,再,+,,,-,。,(,2,)有括号的先做括号。,(一)算术运算与算术表达式2.表达式和算术表达式,11,(,一,),算术运算与算术表达式,4.,数据类型转换,高,double,float,long,unsigned,低,int,char,
展开阅读全文