资源预览内容
第1页 / 共67页
第2页 / 共67页
第3页 / 共67页
第4页 / 共67页
第5页 / 共67页
第6页 / 共67页
第7页 / 共67页
第8页 / 共67页
第9页 / 共67页
第10页 / 共67页
亲,该文档总共67页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第三章第三章 顺序程序设计顺序程序设计 3.1 3.1 顺序程序设计举例顺序程序设计举例(略) 3.2 3.2 数据的表现形式及其运算数据的表现形式及其运算 常量与变量常量与变量 常量与符号常量常量与符号常量 常量常量 在程序运行过程中其值保持不变的量。在程序运行过程中其值保持不变的量。 符号常量符号常量 用来代表一个常量的标识符。 例:例: #define #define PIPI main() main() float float r r=2,=2,c c; ; c c=2*=2*PIPI* *r r; ; printf(“%f”, printf(“%f”,c c);); 变量变量 其值可以改变的量。其值可以改变的量。 变量的三要素变量的三要素: : 变量名变量名每每个个变变量量有有一一个个名名字字,作作为为识识别别该该变变量量的的标标识符。识符。 变量的值变量的值 每每个个变变量量有有一一个个值值,变变量量的的值值是是随随时时可可以改变的。以改变的。 变量的存储单元变量的存储单元 每每个个变变量量占占据据一一个个内内存存单单元元,用用于于存存放放变变量量的值的值。 变量名 a 变量值 存储单元3 变量的命名规则:变量的命名规则: 由字母、数字和下划线组成由字母、数字和下划线组成 以字母或下划线开头以字母或下划线开头 a a、x1x1、y_2y_2、_b1_b1、_1c _1c 合法合法 1x1x、a+2a+2、 不合法不合法 变量必须先定义后使用。变量必须先定义后使用。 程序中何时使用常量?何时使用变量?程序中何时使用常量?何时使用变量? 数据类型数据类型 在程序设计中需要根据需要选择合适的在程序设计中需要根据需要选择合适的“类型类型”来定义变量。来定义变量。可选择的数据类型见图可选择的数据类型见图基本类型基本类型整型整型 浮点型浮点型 字符型字符型枚举类型枚举类型空类型空类型派生类型派生类型 3.2.3 3.2.3 整型数据整型数据 整型常量整型常量 即整常数,即整常数,c c的整常数有三种形式:的整常数有三种形式: 十进制整数十进制整数 与数学中的整数一致,如:与数学中的整数一致,如:100100,123123,1515等。等。 八进制整数八进制整数 以以0 0开头的整数,如:开头的整数,如:010,07,020010,07,020等。等。 十六进制整数十六进制整数 以以0x0x开头的整数,如:开头的整数,如:0x10,0xff,0x2a0x10,0xff,0x2a等。等。 整型变量整型变量 用于存放整数的变量。用于存放整数的变量。 分分4 4种类型:种类型: 基本型:基本型:int aint a 16 16位,可表示的数值范围:位,可表示的数值范围:-3276832767-3276832767 32 32位,数值范围:位,数值范围:-21474836482147483647-21474836482147483647 短整型:短整型:short int bshort int b 16 16位,可表示的数值范围:位,可表示的数值范围:-3276832767-3276832767 长整型:长整型:long int clong int c 32 32位,数值范围:位,数值范围:-21474836482147483647-21474836482147483647 无符号型:加上无符号型:加上 unsigned unsigned 只存放正数。只存放正数。 如:如:unsigned short int xunsigned short int x 变量变量x x为无符号整数,为无符号整数,1616位全表示数码,位全表示数码, 数值范围:数值范围:065535065535 在在程程序序设设计计中中,如如果果要要使使用用整整型型变变量量,必必须须首首先先选选择择以以上上类类型型符符来来定定义义变变量量,然然后才能使用;后才能使用; 例:例: main() main() 定义定义 int a,b,c; int a,b,c; a=100; b=50; a=100; b=50; 使用使用 c=a+b; c=a+b; printf(“%d”,c); printf(“%d”,c); 一般根据什么原则选择变量的类型?一般根据什么原则选择变量的类型?3.2.4 3.2.4 字符型数据字符型数据 字符常量字符常量 用单引号括起来的一个字符。用单引号括起来的一个字符。 a,x,*,1 a,x,*,1等等 除除 此此 外外 , 以以 开开 头头 的的 字字 符符 如如n,tn,t等等 称为转义字符,祥见书表称为转义字符,祥见书表字符型变量字符型变量 用于存放字符的变量。用于存放字符的变量。 char c1,c2 char c1,c2 定义定义c1c1和和c2c2为字符型变量为字符型变量 c1=a; c2=b; c1=a; c2=b; 字符赋值字符赋值 字符型变量存放一个字符,占据一个字节字符型变量存放一个字符,占据一个字节字符型数据的存储形式字符型数据的存储形式 存放ASCII码 不是 而是 如如字字符符aa在在内内存存中中存存放放9797,b b 存存放放9898。 与与整整数数的的存存储储形形式式一一致致,它它们们之之间间可可以以通用通用 一一个个字字符符数数据据既既可可以以作作字字符符用用,也也可可以以作整数用(取其作整数用(取其ASCIIASCII代码)。代码)。 如:如:32+a32+a相当于相当于 32+97 32+97 若若 int x; char c; int x; char c;则则 x=a; c=97; x=97; c=a; x=a; c=97; x=97; c=a; 都都允许允许 字符串常量字符串常量 用双引号括起来的字符序列。用双引号括起来的字符序列。 如:如:”abcde”abcde”, ,”china”china” ”a a”也也属属字字符符串串。 注注意意”a”a”与与aa的的区别。区别。 对于:对于: char c;char c; c=”a”; c=”a”; 用法错误用法错误字字符符串串中中每每个个字字符符各各占占一一个个字字节节,并并且且在在字字符符串结尾加上一个结束标记串结尾加上一个结束标记00 如:如:”china”china” 在内存中占在内存中占6 6个字节。个字节。 c h i n a 0 C C语语言言中中专专门门的的字字符符串串变变量量,可可用用字字符符数数组组存放(以后介绍)。存放(以后介绍)。 3.2.5 3.2.5 实型数据实型数据 实型常量实型常量 可使用两种形式表示:可使用两种形式表示: 小数形式:小数形式:如如 指数形式:指数形式:如如 1e-20 1.23e5 1e-20 1.23e5 实型变量实型变量 用于存放实数的变量用于存放实数的变量 分单精度和双精度两种:分单精度和双精度两种: float a,bfloat a,b 定义定义a a和和b b为单精度型变量为单精度型变量 32 32位,位,7 7位有效数字,位有效数字,1010-38-3810103838 double x,ydouble x,y 定义定义x x和和y y为双精度型变量为双精度型变量 64 64位,位,1515位有效数字,位有效数字,1010-308-3081010308308 例:例: main()main() float r,c; float r,c; double r,c;double r,c; r=5; r=5; c=2*3.1415926*r; c=2*3.1415926*r; printf(“%f”,c); printf(“%f”,c); 3.2.6 3.2.6 各数值型数据间的混合运算各数值型数据间的混合运算 整整型型、实实型型、字字符符型型数数据据间间可可以以进进行行混混合合运运算,如:算,如: 运运算算时时,参参加加运运算算的的两两个个数数据据如如果果类类型型不不同同,则则首首先先将将其其类类型型转转换换成成一一致致再再运运算算,转转换换规规则则是:是: 将优先级低的类型转换到优先级高的类型将优先级低的类型转换到优先级高的类型 数据类型的优先级:数据类型的优先级: 高高 double float double float long long unsignde unsignde 低低 int char int char 3.2.7 3.2.7 算术运算符与算术表达式算术运算符与算术表达式 基本的算术运算符基本的算术运算符 + - * / % 算术表达式算术表达式 用算术运算符将运算对象连接起来的式子用算术运算符将运算对象连接起来的式子 用于表达数学公式的式子用于表达数学公式的式子 如:如:2*x+y-1/a2*x+y-1/a 表达式经过运算最终得到一个值:表达式经过运算最终得到一个值: 算术表达式的值算术表达式的值 运算符的优先级与结合性运算符的优先级与结合性 优先级:优先级: 在在对对表表达达式式求求值值时时,如如果果存存在在多多个个运运算算符符,则则运运算的先后次序按运算符的优先级别从高到底进行。算的先后次序按运算符的优先级别从高到底进行。 运算符的优先级关系为:运算符的优先级关系为: 高:高:* / %* / % 低:低:+ -+ - 如:如:a-2*x a-2*x 先算先算 * * 2*(a+2) 2*(a+2) 有括号的情况?有括号的情况? 结合性:结合性: 如如果果在在一一个个运运算算对对象象两两边边的的运运算算符符的的优优先先级级相相同,则按规定的同,则按规定的“结合方向结合方向”处理。处理。 如:如:a-b+ca-b+c b b与与- -结合是从左到右,称结合是从左到右,称“左结合性左结合性”。 b b与与+ +结合是从右到左,称结合是从右到左,称“右结合性右结合性”。 每个运算符都有相应的优先级和结合性。每个运算符都有相应的优先级和结合性。 基本算术运算符都是基本算术运算符都是左结合性左结合性。 计算表达式例:计算表达式例: 2+A-1/2.0 1+3/2-12+A-1/2.0 1+3/2-1构造表达式例构造表达式例 2x2x2 2+3x-1+3x-1 a+b a-b a+b a-b x+y x-ya+b/a-b ?(a+b)/(a-b)2*x*x+3*x-1 (*不能省)(a+b)/(a-b)/(x+y)/(x-y)(a+b)/(a-b)/(x+y)/(x-y)(a+b)/(a-b)/(x+y)*(x-y) 强制类型转换强制类型转换可可以以用用强强制制类类型型转转换换运运算算符符将将一一个个表表达达式式的值转换成所需类型:的值转换成所需类型:如:如: (int)(x+y)(int)(x+y) (float)(7%3) (float)(7%3) 应用举例:应用举例: 若在若在Turbo CTurbo C下运行:下运行: int a=200,b=300,c;int a=200,b=300,c; c=a*b/100; c=a*b/100; ? ? 可知,有自动转换和强制转换,可知,有自动转换和强制转换, 当自动转换达不到目的时,可用强制转换。当自动转换达不到目的时,可用强制转换。c=(long)a*b/100;c=(long)(a*b)/100; 自增、自减运算符自增、自减运算符 自增运算符:自增运算符:+ 使变量值加使变量值加1 1 自减运算符:自减运算符:- 使变量值减使变量值减1 1 两种用法:两种用法: +i, -i +i, -i 先加(减)后用先加(减)后用 i+, i- i+, i- 先用后加(减)先用后加(减) 两种用法对两种用法对i i效果一样,但表达式的值不同。效果一样,但表达式的值不同。例例:假设:假设i i的原值为的原值为5 5: j=+i; j=?j=+i; j=? j=i+; j=?j=i+; j=? 注意:注意:+和和-只能用于变量。只能用于变量。 如:如:3+3+和(和(a+1a+1)+ 不合法不合法+和和-为右结合性。为右结合性。 (-i)+(-i)+ -i+-i+ -(i+)-(i+)若若i i的的原原值值是是5 5,则则该该表表达达式式的的值值是是多多少少? 例:分析执行下列语句后的结果:例:分析执行下列语句后的结果:a=5; a=5; a b c da b c db=a+;b=a+; c=-a-b+; c=-a-b+; d=(a+)-(+b)+c-; d=(a+)-(+b)+c-;556 506 7-26-1 两种特殊情况:两种特殊情况: k=(i+)+(i+)+(i+) k=(i+)+(i+)+(i+) i+j i+j 是是 i+(+j)i+(+j) 还是还是 (i+)+j(i+)+j ? ? i+i+虽虽然然与与i=i+1i=i+1等等效效,但但使使用用自自增增自自减减运运算算符符的的代代码码优优化化程程度度好好,因因而而经经常常使使用用;但用时需特别小心。但用时需特别小心。 3.2.8 3.2.8 赋值运算符和赋值表达式赋值运算符和赋值表达式 赋值运算符赋值运算符 “=”“=”称称赋赋值值运运算算符符,其其作作用用是是将将一一个个数数据据赋给一个变量。赋给一个变量。 如:如: a=5a=5 不要理解为不要理解为“等号等号”。 执执行行赋赋值值运运算算的的结结果果,是是将将右右边边的的数数据据存存入左边变量所对应的内存单元中。入左边变量所对应的内存单元中。 赋值规则赋值规则 如如果果赋赋值值运运算算符符两两侧侧的的类类型型不不一一致致,则则在在赋赋值时要进行类型转换,转换规则为:值时要进行类型转换,转换规则为: 实型实型整变量整变量 舍去小数部分。舍去小数部分。 int a=5.5; a int a=5.5; a中为中为5 5。 整型整型实变量实变量 数值不变,以浮点形式存储。数值不变,以浮点形式存储。 字符型字符型整变量整变量 放在整形变量低放在整形变量低8 8位。保持原值不变原则。位。保持原值不变原则。 int a=A; int a=A; 复合赋值运算符复合赋值运算符 在在赋赋值值运运算算符符前前加加上上其其它它运运算算符符,可可以以构构成成复合赋值运算符。复合赋值运算符。 a+=3 a+=3 a=a+3 a=a+3 b-=x+5 b-=x+5 b=b-(x+5) b=b-(x+5) x*=c-6 x*=c-6 x=x*(c-6) x=x*(c-6) y/=a*4 y/=a*4 y=y/(a*4) y=y/(a*4) k%=b-2 k%=b-2 k=k%(b-2) k=k%(b-2) 属于高效率运算符。属于高效率运算符。 赋值表达式赋值表达式 主要实现赋值运算的表达式。主要实现赋值运算的表达式。 一般形式:一般形式: = 如:如: a=5 y=2*x+3 a=a+1 a=5 y=2*x+3 a=a+1 不是衡等不是衡等作用:作用:将右边表达式的值赋给左边的变量将右边表达式的值赋给左边的变量。 赋值表达式的值取左边变量的值。赋值表达式的值取左边变量的值。 赋赋值值表表达达式式右右边边的的 可可以以是是任任何何表表达式,如:达式,如: a=(b=5) a=(b=5) 赋值表达式中包含赋值表达式赋值表达式中包含赋值表达式 赋赋值值运运算算符符的的优优先先级级低低于于所所有有算算术术运运算算符符,且是右结合性。且是右结合性。 a=(b=5)a=(b=5) 与与 a=b=5a=b=5 等效。等效。 例:计算以下表达式的值:例:计算以下表达式的值: a=b=c=5 a=b=c=5 a=5+(c=6) a=5+(c=6) a=(b=4)+(c=6) a=(b=4)+(c=6) a=(b=4.5)+(c=6.5) a=(b=4.5)+(c=6.5) (a a、b b、c c为整型变量)为整型变量) a+=a-=a*a a+=a-=a*a ( (设设a a的原值为的原值为3)3) 赋赋值值表表达达式式是是C C语语言言中中的的一一个个重重要要成成分分,在在赋赋值值表表达达式式后后加加一一分分号号就就成成为为常常用用的的赋赋值值语句。如语句。如 y=2*x+1;y=2*x+1; 赋赋值值表表达达式式作作为为表表达达式式的的一一种种,可可以以出出现在任何表达式中,如:现在任何表达式中,如: x+2-(b/3-( x+2-(b/3-(a=k-5a=k-5)+b)+b 3.2.9 3.2.9 逗号表达式逗号表达式 逗逗号号也也是是一一种种运运算算符符,用用它它对对两两个个表表达达式式实现连接运算。实现连接运算。 3+5,6+8 3+5,6+8 称称逗号表达式逗号表达式。 逗号表达式的一般形式:逗号表达式的一般形式: 表达式表达式1 1,表达式,表达式2 2 取取表达式表达式2 2的值作为整个逗号表达式的值。的值作为整个逗号表达式的值。 如:如: a=3*5,a*4a=3*5,a*4 逗号表达式的值为:逗号表达式的值为:6060 一一个个逗逗号号表表达达式式又又可可以以与与另另一一个个表表达达式式组组成成一个新的逗号表达式,如:一个新的逗号表达式,如: (a=3*5,a*4),a+5(a=3*5,a*4),a+5 因此,逗号表达式的一般形式可以扩展为:因此,逗号表达式的一般形式可以扩展为: 表达式表达式1 1,表达式,表达式2 2,表达式,表达式3 3,, , 表达式表达式n n 取取表达式表达式n n的值作为整个逗号表达式的值。的值作为整个逗号表达式的值。 逗号运算符的优先级最低逗号运算符的优先级最低, ,且是左结合性。且是左结合性。 逗号运算符只起到连接作用,没有实际操作逗号运算符只起到连接作用,没有实际操作。3.3 3.3 最简单的最简单的C C程序设计程序设计 C C 程序最基本的成分是语句程序最基本的成分是语句 目前我们已掌握的语句:目前我们已掌握的语句: 变量说明语句变量说明语句: : int a,b,c;int a,b,c; 表达式语句:表达式语句: x+y;x+y; 特别地:特别地: a=5;a=5; 赋值语句赋值语句 可以编写简单程序如:可以编写简单程序如: main()main() int x,y; int x,y; x=5; x=5; y=2*x*x+3*x-1; y=2*x*x+3*x-1; 该程序语法上完整,但还缺少输出。该程序语法上完整,但还缺少输出。 数据的输出数据的输出 用输出函数实现用输出函数实现, ,其中的两种输出函数:其中的两种输出函数: 1.putchar 1.putchar 函数函数 (字符输出函数)(字符输出函数) 用于输出一个字符。用于输出一个字符。 如如: : putchar (a); putchar (100); char c=b; putchar (c); 例例:输出单词:输出单词BoyBoy的完整程序:的完整程序: #include “” 注意该语句的作用注意该语句的作用 main() char a, b, c; a=B; b=o; c=y; putchar (a); putchar (b); putchar (c); 2. printf2. printf函数函数(格式输出函数)(格式输出函数) 任意类型、任意格式、任意个数。任意类型、任意格式、任意个数。 例如:例如: int a=100,b=56; int a=100,b=56; printfprintf( (“a=%d,b=%d”“a=%d,b=%d”, ,a,ba,b);); 普通字符普通字符 格式说明格式说明 格式控制格式控制 输出表列输出表列输出结果:输出结果:a=100,b=56a=100,b=56“%” “%” 后的字符称格式字符,不同格式字符对应不同的数据类型。后的字符称格式字符,不同格式字符对应不同的数据类型。 d d格式符:格式符:按整数格式输出按整数格式输出 几种用法:几种用法: %d%d 不指定宽度,按实际宽度输出不指定宽度,按实际宽度输出 %md%md 按指定宽度输出,按指定宽度输出,m m为宽度为宽度 %ld%ld 用于输出长整型数用于输出长整型数 例:例: int a=125,b=453; int a=125,b=453; long c=65535; long c=65535; printf(“a=%d,b=%5d,c=%ld”,a,b,c); printf(“a=%d,b=%5d,c=%ld”,a,b,c); 输出结果:输出结果: a=125,b= 453,c=65535 a=125,b= 453,c=65535 %ld%ld也可以按指定宽度输出:也可以按指定宽度输出: printf(“c=%8ld”,c);printf(“c=%8ld”,c); 输出结果:输出结果:c = 65535c = 65535注注意意:格格式式字字符符的的类类型型要要与与对对应应的的输输出出对对象象的类型一致。的类型一致。 c c格式符:格式符:用于输出字符用于输出字符 char c=A;char c=A; printf(“c=%c,%c”,c,B); printf(“c=%c,%c”,c,B); 输出结果输出结果:c=A,Bc=A,B 输输出出对对象象既既可可以以是是字字符符变变量量、字字符符常常量量,还还可以是整型表达式。可以是整型表达式。 如:如: int a=100;int a=100; char b=A; char b=A; printf(“n%d,%c”,a,a); printf(“n%d,%c”,a,a); printf(“n%c,%d”,b,b); printf(“n%c,%d”,b,b); 输出结果:输出结果: 100,d 100,d A,65 A,65 s s格式符:格式符:用于输出字符串用于输出字符串 %s%s 不指定宽度不指定宽度 %-ms%-ms 指定宽度,左靠齐指定宽度,左靠齐 %ms%ms 指定宽度,右靠齐指定宽度,右靠齐 指定宽度指定宽度m m,只取左端,只取左端n n个字符,个字符, 右靠齐右靠齐 指定宽度指定宽度m m,只取左端,只取左端n n个字符,个字符, 左靠齐左靠齐例:例:printf(“1:%s”,”abcd”);printf(“1:%s”,”abcd”); printf(“2:%8s”,”abcd”);printf(“2:%8s”,”abcd”); printf(“3:%-8s”,”abcd”); printf(“3:%-8s”,”abcd”); printf(“4:%8.3s”,”abcd”);printf(“4:%8.3s”,”abcd”); printf(“5:%-8.3s”,”abcd”); printf(“5:%-8.3s”,”abcd”);1:abcd2: abcd3:abcd 4: abc5:abc 1:abcd2: abcd3:abcd 4: abc5:abc f f格式符:格式符:按小数形式输出实数按小数形式输出实数 %f %f 由系统指定宽度(由系统指定宽度(6 6位小数)位小数) % % 指定宽度指定宽度m m,小数位数,小数位数n n,右靠齐,右靠齐 %- %- 指定宽度指定宽度m m,小数位数,小数位数n n,左靠齐,左靠齐 注意:宽度包括符号和小数点注意:宽度包括符号和小数点。 例:例: float a=3.141592654,b=14.326795, float a=3.141592654,b=14.326795, c=-125.2468; c=-125.2468; printf(“na=%f,b=%8.3f,c=%-printf(“na=%f,b=%8.3f,c=%-10.2f”,a,b,c);10.2f”,a,b,c); 输出结果:输出结果: 完整前面的程序:完整前面的程序:main()main() int x,y; int x,y; x=5; x=5; y=2*x*x+3*x-1; y=2*x*x+3*x-1; printf(“n y=%d”,y);printf(“n y=%d”,y); 程序设计例:程序设计例: 编写程序计算如图中的电流编写程序计算如图中的电流I I. 假设假设 U=220,R1=30,R2=60,R3=45U=220,R1=30,R2=60,R3=45UIR1R2R3算法设计算法设计: I=U/R1+U/R2+U/R3I=U/R1+U/R2+U/R3程序设计:程序设计: main() main() I=U/R1+U/R2+U/R3;I=U/R1+U/R2+U/R3;int U=220,R1=30,R2=60,R3=45;int U=220,R1=30,R2=60,R3=45;float I;float I;printf(“n printf(“n I=%f”,I);I=%f”,I); 正确的程序:正确的程序: main() main() int U=220,R1=30,R2=60,R3=45; int U=220,R1=30,R2=60,R3=45; float I; float I; I= I=(float)(float)U/R1+U/R1+(float)(float)U/R2+U/R2+(float)(float)U/R3;U/R3; printf(“n I=%f”,I); printf(“n I=%f”,I); 考虑通用考虑通用: main() main() int U,R1,R2,R3; int U,R1,R2,R3; float I; float I; 输入输入 U,R1,R2,R3 U,R1,R2,R3 I=(float)U/R1+(float)U/R2+(float)U/R3; I=(float)U/R1+(float)U/R2+(float)U/R3; printf(“n I=%f”,I); printf(“n I=%f”,I); 数据的输入数据的输入 getchar getchar函数(函数(字符输入字符输入) #include “” #include “” main() main() char c; char c; c=getchar(); c=getchar(); 等待键盘输入等待键盘输入 putchar(c); putchar(c); scanf scanf 函数函数(格式输入) 与与printfprintf函数相反。函数相反。 用于输入若干任意类型的数据。用于输入若干任意类型的数据。 scanfscanf( (“%d%d%d”“%d%d%d”, ,&a,&b,&c&a,&b,&c);); 格式控制格式控制 地址列表地址列表 scanfscanf( (“%d%d%d”“%d%d%d”, ,&a,&b,&c&a,&b,&c);); 执执行行此此函函数数时时,等等待待从从键键盘盘输输入入三三个个整整数给数给a,b,ca,b,c 若从键盘输入若从键盘输入 3 5 8 3 5 8 则则系系统统即即从从键键盘盘缓缓冲冲区区取取出出这这三三个个数数分分别赋给别赋给a,b,ca,b,c 注意与注意与printfprintf的区别,注意格式的匹配的区别,注意格式的匹配如:如: scanf(“%3d%2d%4d”,&a,&b,&c);scanf(“%3d%2d%4d”,&a,&b,&c); 若从键盘输入若从键盘输入123456789123456789 a=123,b=45,c=6789 a=123,b=45,c=6789 若想使若想使a=12,b=5,c=100a=12,b=5,c=100 则键盘输入应为:则键盘输入应为: 12 5 100 12 5 100 方便的输入格式一般不方便的输入格式一般不 指定宽度,指定宽度, 如:如: scanf(“%d%d%d”,&a,&b,&c);scanf(“%d%d%d”,&a,&b,&c); 在在键键盘盘输输入入时时,用用分分隔隔符符把把每每个个数数据据隔隔开开,标准的分隔符是空格。标准的分隔符是空格。 如:如:123 150 23123 150 23 若想用逗号作分隔符,则:若想用逗号作分隔符,则: scanf(“%dscanf(“%d,%d%d,%d”,&a,&b,&c);%d”,&a,&b,&c); 不要随便使用普通字符,如使用:不要随便使用普通字符,如使用: scanf(“a=%d scanf(“a=%d,b=%d c=%d”,&a,&b,&c)b=%d c=%d”,&a,&b,&c) 对应数据输入:对应数据输入: a=123,b=150,c=23a=123,b=150,c=23 前面的欧姆定律前面的欧姆定律: : main() main() int U,R1,R2,R3; int U,R1,R2,R3; float I; float I; scanf(“%d%d%d%d”,&U,&R1,&R2,&R3);scanf(“%d%d%d%d”,&U,&R1,&R2,&R3); I=(float)U/R1+(float)U/R2+(float)U/R3; I=(float)U/R1+(float)U/R2+(float)U/R3; printf(“n I=%f”,I); printf(“n I=%f”,I); 求三角形面积求三角形面积#include“math.h”main()floata,b,c,area,s;scanf(“%f,%f,%f”,&a,&b,&c);s=1.0/2*(a+b+c);area=sqrt(s*(s-a)*(s-b)*(s-c);printf(“narea=%f”,area);使用数学函数使用数学函数使用三角函数使用三角函数#include“math.h”main()floatx,y;scanf(“%f”,&x);y=);以弧度为单位以弧度为单位printf(“ny=%f”,y);
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号