第3章 顺序结构程序设计
第3章 顺序结构程序设计
第三章顺序结构程序设计一、输出函数printf的使用使用的格式:printf(“输出格式串”,表达式表); /*printf要小写*/重点掌握输出格式符① 格式符:%d 以普通整型输出(不可以写成%D)%md 以普通整型输出,数据占m位,右对齐%+md 以普通整型输出,数据占m位,右对齐(正数的前面有+号)%-md 以普通整型输出,数据占m位,左对齐%hd 以短整型输出%ld(或%Ld) 以长整型输出%u 以无符号整型输出%o 以八进制形势输出%x(或%X) 以十六进制形势输出%f 以单精度小数形势输出,点后6位小数%lf(或%Lf或%f) 以双精度小数形势输出,%±m.nf 以单精度小数形势输出,点后n位小数,且进行四舍五入%.nf 以单精度小数形势输出,点后n位小数,且进行四舍五入%c 以字符形式输出%s 以字符串形式输出说明:以上的常用格式符必须和后面的变量一一对应,并且后面的变量是什么类型前面就必须用相应的格式符例:int a=-2;unsigned int b=30;float c=3.1456;printf(“%d%u%5.2f”,a,b,c); 问:输出结果是什么?(-230 3.15)②普通字符普通字符原样输出,它不控制变量的输出。
printf(“a=%d,b=%u,c=%5.2f”,a,b,c); 问:输出结果是什么?③转义字符\n 回车且换行\r 回车但不换行\b 退一个字符\t 走一个制表位(8个字符)\\ 转译成\\’转译成’\”转译成”%% 转译成%\ddd 转译成1~3位八进制所对应的ascii码值所代表的字符\xdd 转译成1~2位十六进制所对应的ascii码值所代表的字符二、输入函数scanf的使用格式:scanf(“格式串”,变量地址列表);重点掌握输入格式(有格式符和普通字符,没有转义字符)① 格式符:%d 以普通整型输入%ld(%Ld) 以长整型输入%hd 以短整形输入%md 取整型的m位%u 以无符号型输入%o 以八进制输入%x(%X) 以十六进制输入%f 以单精度小数输入%lf(%Lf) 以双精度小数输入%mf 以单精度小数输入(但是不能规定它的精度。
第3章 顺序结构程序设计
3.2 实现顺序结构程序设计的基本语 句
• 赋值语句 语句
赋值语句由赋值表达式加上一个分号构成,一般形式为: 变量=表达式; 变量=表达式; 例如: radius=14.5; i++; x+=2; 赋值语句是将右边表达式的值赋给左边的变量中去。赋值 语句要先对表达式加以计算求得其值,而后再将求得的值赋给 左边的变量中去,因此可以说赋值语句兼有计算功能。
例3.1
例3.2
例3.3
• 输出项表 输出项表中可以有多个输出项,各项之间用逗号分隔。 • 注意事项: ①格式控制中的格式说明符必须按从左到右的顺序,与输出 项表中的每个数据一一对应。 ②除x,e,g外,其他类型转换字符必须用小写字母。 ③类型转换字符紧跟在“%”后面时作为类型转换字符,否则 上一页 将 作为普通字符处理。
• 标准输入输出
C语言本身并不提供输入输出语句,其输入输出操作是由标 准库函数来实现的,在使用标准库函数时,要用预编译命令: 首页 上一页 #include将“stdio.h”文件包括到用户源文件中。
– 格式输出函数—printf()
形式: printf(“格式控制”[,输出项表]); printf( 格式控制” 输出项表] • 格式控制 ①普通字符:即需要原样输出的的字符信息。 ②格式说明符:即用%开头后面跟有一个字母,它规定了输 出项的输出形式。常用格式说明符见表3.1和表3.2。 ③转义字符:以“\”开头的字符序列。常用转义字符见表3.3。
上一页
–单个字符的输入—getchar()函数
形式: c=getchar(); c=getchar(); 执行上面的调用时,变量c将得到用户从键盘输入的一 个字符值,这里的c可以是字符型或整型变量。
C语言_第3章
简单程序的流程一般分为顺序结构、选择结构和循环结 构。其中顺序结构是最基本的控制结构,其包含的语句 是按照书写的顺序执行,且每条语句都将被执行。
程序流程如图3.1所示, #include<stdio.h> 语句按书写顺序执行。 main( ) 先执行A,再执行B。 {int a=10,x=5,y=6;
三、复合语句
用一对花括号,把若干条语句括起来,
就形成了一条复合语句。形式如下:
{[内部数据描述语句]
其中定义的变量是
语句1; …… 语句n;}
复合语句结束的 “}”之后,不需
局部变量,仅在复 合语句中有效。
要再加分号。
花括号中的语句,可以是简单语句、空语句、复合 语句、流程控制语句,所有这些语句括在一起,在 语法上看成是一条语句,执行时顺序执行花括号中 的每条语句。复合语句多用于流程控制语句中。
printf(“\n%d,%d”,a+i,i++);}
四、格式输入函数 格式输入函数一般形式 scanf(“格式控制字符串”,地址列表); 功能:按指定的格式从键盘上把数据输入到指定的 变量之中 。 在scanf语句的格式控制字符串中,有两类字符: 普通字符:必须按原样输入,不能省略; 格式说明部分:由%引导的格式字符串组成。
scanf语句格式说明部分的一般格式为: %[*][width][F|N][h|L]type type是必须的,表示输入后转换的数据类型。
d(D) o(O) x(X) i(I) u(U)
c s f,e,g F,E,G n
%
十进制整数 八进制整数 十六进制整数 自动根据数头分辨十、八、十六进制 无符号十进制整数 单个字符 字符串 实数
【最新】一章顺序结构
printf("(float)(a+b)/3+(int)x%%(int)y=%f\n",(float)(a+b)/3+(int)x%(int)y );
} 2021/2/2
8
二、格式说明
3.3 格式输出——printf函数
1. 格式字符 (1)与整型数据的格式输出有关的格式说明—— %d(%i)、 %o、 %X(%x)、%u
(2作)。转如义“字\符n”,格代以表式反回斜控车线。制“\”字开头符,后面紧跟一个特定的输字符出,用项来代表某个特定的操
(3)普通字符,在显示器上原样输出,主要起解释、说明作用。除了格式说明和转义字
符之202外1/2,/2 在格式控制中的其他字符(包含空格)均按原样输出。
5
3.3 格式输出——printf函数
出形式为[-]m.ddddddE±xxx ,共占13列宽度。
%G或%e:根据数值的大小,自动选f格式或e格式,使得数据的输出宽度最小,且
不输出无意义的零。%g对应输出的指数形式为[-]m.dddddde±xxx, %G对应输出的
指数形20式21/为2/2[-]m.ddddddE±xxx。%g格式用得较少。
5. 空语句 ——只有分号“;”组成的语句称为空语句。空语
句是什么也不执行的语句。在程序中空语句可用来
作空循环体。
2021/2/2
2
第3章 顺序结构
3.1 C语句概述
二、C语句示例
a+4*b; 算术表达式语句
4*x,4+y; 逗号表达式语句
x=4*5;
赋值表达式语句(赋值语句)
printf(“Hello Everyone!”) ;
顺序结构PPT课件
函数调 用语句
空语句
由函数调用加上分号“;”组成。其一般形式为: 函数名(实际参数表) ;
例如: printf(“hello”); scanf(“%d”,&a);
只有分号“;”组成的语句称为空语句。 空语句是什么 也不执行的语句。在程序中空语句可用来作空循环体或 程序流程的转向点。
复合语句
把多个语句用括号{ }括起来组成的一个语句称复合语 句。在程序中应把复合语句看成是单条语句,而不 是多条语句。
湖南工业大学计算机与通信学院
3.1 问题提出
顺序结构是最简单的一 种结构,即按书写的先 后顺序执行它所包含的 内容。
A
B 选择结构 顺序结构中的语句只执行一次
顺序结构
3种基本 结构
循环结构
湖南工业大学计算机与通信学院
3.1 问题提出
计算机完成一个任务的具体步骤
算法
•设计程序,也 就是设计解题 步骤
putchar(c); putchar('\n'); putchar(a);
}
控制字符, 表示换行
湖南工业大学计算机与通信学院
3.3.1 字符输入输出函数
键盘输入函数:getchar() 格式:getchar(); 功能:从键盘上输入一个字符。
说明:(1)无参数 (2)函数值是从输入设备接收的字符
功能:在显示器上输出单个字符。
如:putchar('A');
(输出大写字母 A)
putchar(x);
(输出字符变量 x 的值)
putchar('\101');
(也是输出字符 A)
putchar('\n');
('\n'是控制字符,表示换行)
第三章 输入输出函数与顺序结构程序设计
3.1格式化输出函数printf( )
案例3-1 计算三个学生的平均成绩 存放三个学生的考试成绩 显示三个学生的成绩 计算平均分后显示该信息
程序代码
/*代码文件名:code3_1.c*/ #include <stdio.h> main() { int score1=12,score2=23,score3=25; /*定义并初始化三个学生成绩 */ float avg; /*输出三个学生成绩*/ printf("score1=%d, score2=%d, score3=%d\n", score1, score2, score3); avg=( score1+ score2+ score3)/3.0;/*计算平均分*/ printf("平均分avg=%f\n",avg); /*输出平均分*/ }
非格式字符
如果格式控制串中有非格式字符则输入时也要 输入该非格式字符。 例如: scanf("%d,%d,%d",&a,&b,&c); 其中用非格式符“ , ”作间隔符,故输入 时应为: 5,6,7 又如: scanf("a=%d,b=%d,c=%d",&a,&b,&c); 则输入应为: a=5,b=6,c=7
尽量不要在输出语句中改变输出变量的值,因 为可能会造成输出结果的不确定性。例如:int k=8;printf(“%d,%d\n”,k,++k);输出结果不是8, 9,而是9,9。这是因为调用函数printf时,其 参数是从右至左进行处理的,将先进行++k运 算。 输出数据时的域宽可以改变。若变量m、n、i 和f都已正确定义并赋值,则语句 printf(%*.*f,m.n,f);将按照m和n指定的域宽 输出浮点型变量f的值,并不输出m、n的值。
高级程序语言设计第3章
或
#include "stdio.h" 1.格式输入输出(printf函数,scanf函数) (1)scanf函数 scanf函数用于输入指定类型的多个数据,函数的一般形式为:
scanf(“格式控制字符串”,地址列表);
一定要注意,地址列表中直接给变量名将会出错,因为这是非
返回本章目录
第3章 高级语言程序设计概述
l 指定数据所占字符数(宽度)
scanf("%3d%2d",&a,&b); 输入:12345678↙ 系统将把123赋值给a,把45赋值给b,而678则被丢掉。 l scanf函数中没有精度控制 scanf("%3.2f",&a); 将是非法的,即使输入12345↙,也不会将变量a赋值 为123.45; l 跳过某输入数据 scanf("%d %*d %d",&a,&b); 输入:11 22 33↙
{
char c1='H',c2='E',c3='L',c4='O'; /*定义字符变量并赋值*/
putchar(c1);
/*输出字符变量的值*/
putchar(c2);putchar(c3);putchar(c3);putchar(c4);
putchar('\t');
/*输出Tab制表键*/
putchar(87);
/*输出字符W,87是其ASCII编码值
*/ putchar('!'); putchar('\n');
/*输出字符*/ /*输出回车换行符*/
八年级信息技术教案第三章?顺藤摸瓜----顺序结构程序设计
八年级信息技术教案第三章顺藤摸瓜----顺序结构程序设计第三章顺藤摸瓜----顺序结构程序设计第一节有备而来---程序设计准备一、学习目标1.掌握进入basic环境的方法和输入、编辑、运行程序的方法。
2.初步掌握basic中的基本概念:常量、变量、函数、表达式。
3.初步掌握输出、赋值、输入语句的格式和功能。
4.初步掌握简单顺序结构程序的设计方法。
5.理解程序的顺序结构的概念。
二、教学重点掌握输出、赋值、输入语句的格式和功能。
三、教学难点掌握简单顺序结构程序的设计方法。
四、教学方法1.演示法。
2.实践法。
五、教学手段与教学媒体六、课时安排1课时。
七、教学过程二、学习指导1.basic中的科学记数法类似数学中的科学记数法例如:-3.14156e+3 —— -3.14156×1032.56e-2 一2.56×10-2其中e表示幂底数10,e后跟的整数为幂指数。
2.常见标准函数abs(x) 求x的绝对值,即|x|sqr(x) 求x的算术平方根,即。
sin(x) 求x的正弦值c角x的单位必须是弧度,l°≈3.14159/180)。
cos(x) 求x的余弦值(规定同上)。
int(x) 求不大于x的最大整数。
注意:x为负数时,其值不是去掉小数,例int(一5.99)≠一5。
int(x)用处很多:(1)对正数x四舍五入保留n位小数的表达式:int(x*10^n+0.5)/1o^n例如:对正数x四舍五入保留两位小数的表达式:int(x*100+0.5)/100(2)判断整数a能被整数b整除的条件关系式:int(a/b)=a/b(3)求整数a除以b的余数的表达式:a—int(a/b)*b.rnd(x) 产生一个o到1之间的随机小数生成(a,b)内的随机整数的表达式:int(rnd(1)*(b—a)+a)例如:二位随机整数的表达式:int(rnd(1)*90+10)3.数学式和basic表达式的对应表示应根据运算顺序,正确使用圆括号,且将所有符号写在同一行上。
C语言电子教案第3章 输入输出及顺序结构
o
o
o
在%与格式符之间插入一个整数表示指定输出的宽度.若 指定的输出宽度大于实际数据的宽度,那么数据向右靠齐, 左边补空格;若指定的宽度小于实际数据的宽度,那么按 实际数据的宽度输出. 可以采用"m.n"的格式修饰格式符来输出一个实数,这里m 和n是两个整数. 对于字符串,采用"m.n"的附加格式符来修饰格式符表示 指定字符串的总宽度为m,不足m则向右靠齐,左补空格.n 表示指定截取实际字符串的前n个字符输出.也可以省略m, 不指定总宽度. 可以在宽度之前加一个""来指定输出的数据向左靠齐.
输出表列 o 输出表列是需要输出的数据,可以是变量,常量或表达 式.输出表列可以是零项,一项或多项,若多于一项则 各项之间用逗号分隔. o 输出表列和格式说明符在个数与类型上应相匹配. 例如,printf("\n x = %d , y = %f ", x , y+1);
3.2 常用输出与输入函数 printf的格式说明符
3.2 常用输出与输入函数
程序的运行结果是: 57 5 7 67.856400,-789.124023 67.856400,-789.124023 67.86,-789.12,67.856400,789.124023,67.856400,-789.124023 6.785640e+01,-7.9e+02 A,65,101,41 1234567,4553207,d687 65535,177777,ffff,-1 COMPUTER,COM
3.2 常用输出与输入函数
printf函数在使用时的注意事项
printf函数可以输出常量,变量和表达式的值.但 格式控制中的格式符必须按从左到右的顺序,与 输出项表中每个数据在类型上一一匹配,否则将 导致数据输出错误. 类型转换字符x,e,g可以用小写字母,也可以用大 写字母.使用大写字母时,输出数据中包含的字 母也要大写.除x,e,g外,其他类型转换字符必须 用小写字母,例如%f不能写成%F. 在输入long整型数据时,一定要使用格式%ld.如 果只用了%d,将输出错误数据. 若需要输出百分号"%",则应在格式串中用连续 的两个百分号"%%"表示. 类型转换字符紧跟在"%"后面时作为类型转换字 符,否则将作为普通字符处理. printf函数的返回值通常是本次调用中输出字符的 个数.
C语言程序设计第3章 顺序结构编程2018版
类型 变量长度(单位:字节) 数值范围
short int
2
-215 ~ 215-1
4
-23311 ~ 23311-1
long
unsigned short
unsigned int
unsigned long
4
-231 ~ 231-1
2
0 ~ 216-1
4
0 ~ 232-1
4
0 ~ 232-1
➢ 整型常量三种形式
例:total = money*num; int money=10, num=10;
注:int money=num=10;
3.2.3 赋值语句
➢ 复合赋值运算符 a += b 等价于 a = a + b a -= b 等价于 a = a – b a *= b 等价于 a = a * b a /= b 等价于 a = a / b a %= b 等价于 a = a % b
案例二:共享单车费用程序运行结果
案例三:孩子身高预测
问题描述:孩子的身高可以利用遗传因素 即利用父母的身高进行预测。女儿身高计 算公式为:女儿成人时的身高=(父高× 0.96 + 母高)÷2 (注:此方法未考虑环 境因素的影响)。
第3章 顺序结构程序设计
第3章 顺序结构程序设计
【例题3.1】阅读下列程序,认识格式输出函数的用法,写结果 #include<stdio.h> int main() { int i,j,m,n; 格式控制字符串 输出列表项 i=5; j=15; m=i++; n=++j; printf("i=%d, j=%d, m=%d, n=%d\n",i,j,m,n); return 0; }
※ %s:输出一个字符串。
※ %f:按实型数据输出且有6位的小数点。 ※ %e: 按实型数据输出且按指数形式
※ %g:按实型数据输出由系统自动选择f格式或e格式。
2016年12月12日星期一 8
第3章 顺序结构程序设计
3.3.2 格式输入函数scanf
阅读下列程序,认识scanf()函数的用法
#include<stdio.h> int main() 格式控制字符串(注意表示形式) { 输入地址列表 int a,b,c; float aver; printf("请输入三个数a,b,c:"); scanf("%d%d%d",&a,&b,&c); aver=(a+b+c)/3; printf("aver=%f\n",aver); return 0; }
第3章 顺序结构程序设计
3.4 字符输入/输出函数
【例题3.4.1】 通过键盘输入一个小写字母,输出该 字母的大写。 分析:输入可采用格式输入函数scanf()实现,输出可 采用格式输出函数printf()实现,使用格式符%c。小 写字母与大写字母的ASCII码值相差32。 思考:不用格式输入/输出函数能不能完成?能,用C 语言提供的另一类函数即字符输入/输出函数。
精品课件-C语言程序设计实用教程-第3章 顺序结构的程序设计
3.printf()函数应用举例 【例3.8】 用不同的格式输出同一变量。 #include "stdio.h" main( ) {
char ch='b'; int x=65; printf("ch=%c,%4c,%d\n", ch, ch, ch); printf("x=%d,%c\n", x, x); }
【例3.9】 输出不同的数据类型的应用。
#include "stdio.h"
main()
{ int a,b;
float c;
char ch ;
a=123;
b=-1;
c=1.23;
ch='a';
printf("a=%d, a=%4d\n", a, a ); /*输出整数a的值*/
printf("%d, %o, %x, %u\n", b, b, b, b); /* 输出b的 值*/
(1)格式控制 格式控制由双引号括起来的字符串,主要包括格式说明和需要原 样输出的字符。 ①格式说明 由“%”和格式字符组成,如%d,%f等,作用是将要输出的数据转 换为指定的格式后输出。 ②普通字符 需要原样输出的字符。如“printf("radius=%f", radius);” 语句中的“radius=”就是普通字符。 (2)输出表列:是需要输出的一些数据,可以是常量、变量和 表达式。
printf("%f, %6.1f\n",c,c); c的值 */
/* 输出实数
printf("%c\n", ch);
/*输出字符
3.4.2 scanf()函数
第三章 顺序结构程序设计
步骤1:0 => s; 步骤2:1 => I; 步骤3:s+i => s; 步骤4:i+1 => I; 步骤5:如果i≤1000,转到步骤3,否则结束。 在上面的算法中,符号s、i表示变量,符号“=>” 表示给变量赋值。步骤1和步骤2表示给变量s和i 赋初始值为0和1;步骤3将变量i的当前值累加到 变量s中;步骤4使变量i在原值的基础上增加1; 步骤5判断i的值如果小于等于1000,重复做步骤 3和步骤4,构成一个循环,而当i的值不小于等于 1000时,循环结束,这时,变量s的值就是要求 的计算结果。
2.函数调用语句 函数调用语句由一次函数调用加一个分号(语句结 束标志)构成。例如: printf("This is a C Program."); 3.表达式语句 表达式语句由表达式后加一个分号构成。 表达式能构成语句是C语言的一大特色。最典型的 表达式语句是在赋值表达式后加一个分号构成的赋值 语 句 。 例 如 , “ num=5” 是 一 个 赋 值 表 达 式 , 而 “num=5;”却是一个赋值语句。
3.3 格式化输出函数printf()
程序运行中,有时候需要从外部设备(例如键盘)上得 到一些原始数据,程序计算结束后,通常要把计算结果发 送到外部设备(例如显示器)上,以便人们对结果进行分析。 我们把程序从外部设备上获得数据的操作称为“输入”, 而把程序发送数据到外部设备的操作称为“输出”。 不像其他的高级语言,C语言没有专门的输入/输出语 句,输入/输出的操作是通过调用C语言的库函数来实现的。 printf()函数是最常用的输出函数,它的作用是向计算机系 统默认的输出设备(一般指显示器)输出一个或多个任意指 定类型的数据。
3.1.2 算法的特征 通常,一个算法必须具备以下五个基本特征: (1) 有穷性。一个算法必须在它所涉及的每一种情 形下,都能在执行有限次的操作之后结束。 (2) 确定性。算法的每一步,其顺序和内容都必须 严格定义,而不能有任何的歧义。 (3) 有零个或多个输入。输入是算法实施前需要从 外界取得的信息,有些算法需要有多个输入,而有些 算法不需要输入,即零个输入。 (4) 有一个或多个输出。输出就是算法实施后得到 的结果,显然,没有输出的算法是没有意义的。 (5) 可行性。算法的每一步都必须是可行的,也就 是说,是能够由计算机执行的。
河南理工大学C语言第三章课后答案
A. a=98, b=765, c=4321
B. a=10, b=432, c=8765 C. a=98, b=765.000000, c=4321.000000
D. a=98, b=765.0, c=4321.0
第三章 顺序结构程序设计
2.解析题 (1)请写出下面程序的运行结果 #include <stdio.h> main( ) { int x=170; float a=513.789215; printf("x=%3d,x=%6d,x=%6o,x=%6u\n",x,x,x,x,x,x); printf("x=%-3d,x=%-6d,x=%6d,x=%%6d\n",x,x,x,x); printf("x=%8.6f,a=%8.2f,a=%14.8f,a=%14.8lf\n",a,a,a,a); }
#include <stdio.h> main() { int a,b; float x,y; char c1,c2; scanf("a=%d b=%d",&a,&b); scanf("x=%f y=%f",&x,&y); scanf("c1=%c c2=%c",&c1,&c2); printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c",a,b,x,y,c1,c2); }
x=170,x=ㄩㄩㄩ170,x=ㄩㄩㄩ252, x=ㄩㄩㄩ170 x=170,x=170ㄩㄩㄩ,x=ㄩㄩㄩ170,x=%6d a=513.789185,a=ㄩㄩ513.79,a=ㄩㄩ513.78918457,a=ㄩㄩ513.78918457
C语言学案(三、顺序结构程序设计)
C语⾔学案(三、顺序结构程序设计)课题3-1:顺序结构程序设计(1)——基本语句与字符输⼊输出、printf函数【知识⽬标】1.了解C语句的分类、数据输⼊输出的概念;2.掌握pritnf()格式输出函数;3.掌握字符数据的输⼊输出函数getchar()和putchar()。
【技能⽬标】1.能阅读各种格式printf的程序,并计算出数据输出的结果。
【学习⽅法】⼩组协作、⾃主探究、展⽰交流、任务驱动【学习环境】多媒体教室【学习过程】⼀、创设情境,激趣导⼊在程序中,常量、变量、运算符、表达式是构成程序的基本要素,从本章开始将深⼊介绍如何将这些基本要素有效地组合在⼀起,构成合法有意思的程序。
顺序结构是结构化程序设计中最简单、最常⽤的基本结构,也是任何应⽤程序的主体结构。
⼆、明确⽬标,⾃主学习预习教材P50-P55的内容,完成以下预习题。
1.C语⾔中语句分为简单语句、结构语句。
简单语句有____________、____________、____________、____________、____________、_____________、_____________,结构语句有____________、____________、____________。
2.字符数据的输⼊函数有_____________、_____________、_____________。
字符数据的输出函数有_____________。
3.printf函数的⼀般形式__________________________,格式控制字符串由格式字符串和_____________组成。
格式字符串以%开头,⼀般形式为__________________________。
参数列表中可给出各个输出项,输出项之间⽤_________分隔。
要求格式控制字符串和各输出项在数量和类型上应该⼀⼀对应。
输出项可以是__________、__________,甚⾄是表达式。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
f=2.45678 f * 4523.65 f ;
4、单精度变量有6
~
7位有效数字(10-37~
38
10 )
双精度变量有15
~
16位有效数字(10-307
~
308
10 )
15
六、变量赋初值
int a=3 ; float f=3.14 ; char c='a' ; int a ,b=3 ,c ; int a=3 ,b=3 ,c=3 ; 注意:变量的初始化不是在编译阶段完成 的,而是在程序运行时执行本函数时赋予 初始值的。
'A'
(d) '\0' 或'\000' ASCII值为0的空操作字符
2、变量: char c1 , c2 ;
c1='a' ; c2='b' ;
3、内存中的存储形式(以其ASCII码值存放)
c1 97
0110 0001
c2 98
0110 0010
11
4、字符型数据的使用 例: #include<stdio.h> int main() { int i ='a' ; char c=97 ; printf("c=%c , c=%d\n" , c , c ) ; printf("i=%c , i=%d\n" , i , i ) ; return 0; }
long a=123560; pprrinitnft(“f%("9d%l\ldnd\”\n,na”"),a;,)a;); 出□错□□123560 }
一个int型数 据可以用%d 或%ld格式输 出。
22
(2)O格式字符。以无符号八进制数形式输出整数。
例如: int a=-1;
输出结果:
printf("%d,%o",a,a); -1,37777777777
头文件放在本程序中。
20
3.1.3 用printf函数输出数据
即:向终端(或系统指定的输出设备)输出若干个任意类型的 数据。
一般格式为:printf(格式控制,输出列表)
(1)“格式控制”是用双引号(“ ”)括起来的一个字符串, 也称“转换控制字符串”,它包括两个信息: ① 格如式:说有明i:nt由型%a和=8格,式b=字9符, 组成。作用是将输出的数据转换
8
3、整型变量数的表示范围:(-32768~32767)
4、整型变量的分类:
有符号基本整型 [signed] int
无符号基本整型 unsigned int
有符号短整型 [signed] short [int]
无符号短整型 unsigned short [int]
有符号长整型 [signed] long [int]
字符型 char
5
③说明
★ 必须在程序执行部分之前对程序
中的所有变量进行定义
★ C语言中整型和字符型数据通用
★ 可在定义变量的同时给其赋初值
★ 变量区分大小写
★ 变量名不能用关键字
例: int a=3, b=4, c=5 ;
float x, y, z=0.5;
char w='a';
6
二、数据类型
2 2 2 2 2 2 2 2 2 22 22 2 2 2
b 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 65535
数据位
10
四、字符型数据(1字节)
1、常量:(a) 'a'、 'x'、 '?'、 '$' (b) '\n' 、 '\t' 、'\’'
十六进制
八进制
(c) '\101'、 '\x41'
如果整数比较大,则把它的最后一个字节的信息以 字符形式输出。 如:int a=377;
printf(“%c”,a); 输出结果:y
25
(6)s格式字符。用来输出一个字符串,有以下几种用法。 %s:输出字符串(不包括双引号)。
例如:printf("%s","student"); 输出结果:student 等价于:printf("student");
(5)符号常量—— #define 符号名 常量 2
例 判断下列是否是C语言的常量
'1' -123 'internet' 2/4
(字符型) (整型) () ()
100.0 (实型) -12e2.5 ()
"t" (字符串) 0.4e-4 (实型)
例 定义一个符号常量 PI,其值为 #define PI 3.1415926
3
2、变量
(1)变量名——以标识符命名
由字母、数字或下划线组成
标识符 首字符为字母或下划线
用来标识变量、符号常量、 数组、函数、文件等
例:sum good123 student_name
4
(2)变量的定义
①变量定义语句的格式
类型关键字 变量名或赋值表达式表;
②类型关键字
整型 实型
基本型 int 短整型 short 长整型 long 无符号型 unsigned 单精度型 float 双精度型 double
输出结果如下所示: 1234.567017,1234.567017,□□□1234.57,1234.57,1234.57□□□
30
无符号长整型 unsigned long [int]
双常整型
long long int
9
5、无符号和有符号数的比较:
int a ;
(-32768~32767)
unsigned int b ; (0~65535)
符号位
a 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 32767
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
为指p定ri格ntf式(“输%出d %。d格”,式a,说b)明总是由%字8符9开始的。
② 普或通p字ri符nt,f(“即a=需%要d,按b=原%样d”输,a出,b的) 字符。a=8,b=9
(2)“输出列表”是程序需要输出的一些数据,也可以是表
达式。
21
对不同类型的数据用不同的格式字符, 有以下几种格式字符:
(3)x格式字符。以无符号十六进制数形式输出整数。 例如:
int a=-1;
输出结果:
printf("%x,%o,%d",a,a,a); ffffffff,377777777777,-1
23
(4)u格式字符。用来输出无符号型数据,以十进制整数 形式输出。如:int a=-1;
输出结果:
printf(“%u\n”,a); 4294967295 (5)c格式字符。用来输出一个字符。 例如,char c='a';
运行结果: 132 x1= -1.00 x2= -2.00
19
3.1.2 有关数据输入输出的概念 (1)所谓输入输出是以计算机主体而言的。
输出
显示器、打印机等
计算机
输入
键盘、磁盘、光盘、扫描仪等
(2)C语言本身不提供输入输出语句,输入和输出操作
是由C标准函数库中的函数实现的。在使用系统库函数
时,要在程序文件的开头用预处理指令#include把有关
#include<stdio.h>
void main()
{ double a =1.0;
printf(“%20.15f\n”,a/3);}
输出结果: 0.333333333333333
(注意:0的前面有3个空格)
28
%-m.nf:与%m.nf基本相同,只是使输出的数值向左 靠,右端补空格。如: #include<stdio.h> void main() { float a; a=10000/3.0; printf(“%-25.15f,%25.15f\n”,a,a);}
%ms:输出的字符串占m列,如字符串本身长度大于m,则将 字符串全部输出;若串长小于m,则在左边补空格。
%-ms:如果串长小于m,则在m列范围内,字符串向左靠, 右补空格。
26
(7)f格式字符。用来输出实数(包括单、双精度), 以小数形式输出,有以下几种用法: %f:不指定输出数据的长度,由系统根据数据的实际
4、实型数据在内存中以规范化的二进制指数形式存放。
x+
.314159
+1
数符
小数部分
指数
+
.314159 × 101 3.14159
14
3、实型常量的类型
许多编译系统均将实型常量按照双精度数处理, 结果存入单精度变量,降低了运算速度,可以在实型 常量的后边加一个 f 或 F 以表示单精度数。
如:float f ;
12Biblioteka 5、字符串常量 "How do you do."、"CHINA"、"a"、"$12.45" 注意:(1)没有字符串变量(可用字符数组存储)
(2)字符串常量在内存中的存储形式
C
H
I
N
A
\0
(3)在输出语句中的应用
printf("How do you do.") ; printf("c=%c , c=%d\n" , c , c ) ;
printf("%c",c); 输出结果:a 也可以指定域宽。 如:char ch=‘a’;