概述
1、输入输出的作用
输入:将键盘上输入的数据取出来保存到内存中的变量里
输出:将内存中变量里保存的数据取出来输出到终端上
2、格式化输入输出函数
格式化输出函数:printf
格式化输入函数:scanf
3、格式化输出函数
数据类型:
基本数据类型
整型
字符型(char) char a; scanf(“%c”, &a); printf(“%c”, a);
短整形(short) short b;scanf(“%hd”, &b);printf(“%hd”, b);
整型(int) int c;scanf(“%d”, &c);printf(“%d”, c);
长整型(long) long d;scanf(“%ld”, &d);printf(“%ld”, d);
浮点型
单精度(float) float e; scanf(“%f”, &e);printf(“%f”,e);
双精度(double) double f;scanf(“%lf”, &f);printf(“%lf”, f);
派生数据类型
数组([])
指针(*)
函数
结构体(struct)
公用体(union)
枚举(enum)
空类型(void)
格式化输出函数:printf
作用:将内存中变量里保存的数据取出来输出到终端上
格式:printf(格式控制,输出列表);
注意:格式控制和输出列表必须一一对应
练习:每种基本类型变量定义一个,并初始化,用printf输出该变量的值
#include <stdio.h>
int main(int argc, const char * argv[])
{
char a='A';
short b=1;
int c=2;
long d=3;
float e=4.5;
double f=5.6;
printf("a=%cn",a);
printf("b=%hdn",b);
printf("c=%dn",c);
printf("d=%ldn",d);
printf("e=%fn",e);
printf("f=%lfn",f);
printf("a=%cn b=%hdn c=%dn d=%ldn e=%fn f=%lfn",a,b,c,d,e,f);
return 0;
}
4、格式化输入函数
格式化输入函数:scanf
作用:将键盘上输入的数据取出来保存到内存中的变量里
格式:scanf(格式控制,地址列表);
#include <stdio.h>
int main(int argc, const char *argv[])
{
char a;
short b;
int c;
long d;
float e;
double f;
#if 0
scanf("%c", &a);
scanf("%hd", &b);
scanf("%d", &c);
scanf("%ld", &d);
scanf("%f", &e);
scanf("%lf", &f);
printf("a = %cn", a);
printf("b = %hdn", b);
printf("c = %dn", c);
printf("d = %ldn", d);
printf("e = %fn", e);
printf("f = %lfn", f);
#endif
scanf("%c%hd%d%ld%f%lf", &a, &b, &c, &d, &e, &f);
printf("a = %cnb = %hdnc = %dnd = %ldne = %fnf = %lfn", a, b, c, d, e, f);
return 0;
}
5、格式化输入输出的整个过程
输入的过程:键盘输入的数据——>缓冲区——>scanf——>内存中的变量
输出的过程:内存中的变量——>printf——>缓冲区——>终端上
6、单个字符的输入输出
单个字符的输入:getchar
单个字符的输出:putchar
7、单个字符的输入
格式:getchar()
作用:从终端上获取一个字符,如果想使用该字符,需要定义一个字符变量包接受函数的返回值
例子:char ch;ch=getchar();
8、单个字符的输出
格式:putchar()
作用:将单个字符输出到终端上
例子:
1:字符常量:putchar('A');
2:字符变量:char ch='A';putchar(ch);
课堂练习:
1、用getchar输入boy,并用putchar输出
#include <stdio.h>
int main(int argc, const char * argv[])
{
char ch[3];
int i;
for (i=0; i<3; i++) {
ch[i]=getchar();
}
for (i=0; i<3; i++) {
putchar(ch[i]);
}
return 0;
}
2、从键盘输入一个大写字母,输出与其对应的小写字母。
#include <stdio.h>
int main(int argc, const char * argv[])
{
char ch;
ch=getchar();
ch+=32;
putchar(ch);
return 0;
}
3、编程序,用getchar函数读入两个字符c1和c2,然后分别用putchar函数和printf函数输出这两个字符
思考下面的问题:
1:变量c1和c2应定义成字符型还是整型?或二者皆可? 都可以
2:要求输出c1和c2的ASCII码,应如何处理?用putchar函数还是printf函数 %d printf
3:整型变量与字符型变量是否在任何情况下都可以相互替代? 不可以 字符型变量为1个字节 整型变量为4个字节
如:char c1,c3;与int c1,c2是否无条件的等价?
9、c语言中的程序结构
种类:
1:顺序
2:分支
3:循环
10、为什么要使用分支?分支的要素?
结婚��
1:暖男 ———————>不用干家务
2:高大帅气男 ———————>不用看韩剧,不用犯花痴
3:成熟富有男 ———————>刷卡
4:都不要 ———————>孤独终老
为什么使用分支:当程序面临选择的时候,每种选择对应不同的操作
分支的要素:
1:面临的选择————>()
2:该选择下的操作——>{}
if(选择){
操作;
}
11、常见分支的种类
1:if构成的分支
1:if单分支
2:if-else
3:if-else if
4:if-else嵌套
2:switch构成的分支
12、if单分支
格式:
if(表达式){//选择
语句1;//操作
语句2;
……
语句n;
}
表达式:一般是关系表达式或逻辑表达式
执行过程:当程序执行到if时,首先判断if后面小括号里的表达式是否为真(非0),如果为真执行表达式后面大括号里的操作,如果为假(0),跳过if,执行后面的语句
c语言中的零:
1:数值0
2:字符串结束标识'