一、基本的输入和输出函数的用法
printf() //屏幕输出
用法:
(1)printf("字符串
");
(2)printf("输出控制符", 输出参数);
(3)printf("输出控制符1 输出控制符2。。。
", 输出参数1,输出参数2,。。。);
注意后面的输出参数中间必须加 “,”
(4)printf("输出控制符 非输出控制符", 输出参数);
输出控制符包含:
%d
%ld
%c
%f
%lf
%x(或者%X或者%#x或者%#X):十六进制 2f 2F 0X2f 0X2F
推荐使用 %#x 可以看出来是十六进制输出结果
----------------------------------------------------------------
#include<stdio.h>
int main(void)
{
int a = 10;
printf("%d
%x
%X
%#x
%#X
", a, a, a, a, a);
return 0;
}
----------------------------------------------------------------
%o
%s
为什么需要输出控制符
(1)二进制代码可以表示数据也可以表示指令
(2)同样的01代码以不同的输出格式输出就会有不同的结果
scanf() //键盘输入
通过键盘将数据输入到变量中
两种用法:
(1) scanf("输入控制符", 输入参数); scanf("%d", &i);
因为键盘输入的是字符,%d是为了转换为要用的格式。 &i表示i的地址
输入123就是表示将字符123转换为int格式的123放到&i地址所在的内存空间里。
(2) scanf("非输入控制符 输入控制符", 输入参数);
如:int i; sanf("m%d", &i); 键盘输入:m123 非输入控制符必须原样输入
输入:mn 输入:123 是非法的 输入:m123n 取前三个数字
输入一般都不写非输入控制符
(3)键盘一次给多个数据赋值
scanf("%d %d", &i,&j); 输入:123 456
scanf("%d,%d", &i,&j); 输入:123,456
不要在scanf();中加/n
scanf("%d
", &i); 输入:123
最好加一个输出提示信息
--------------------------------------------------------------------
应该编写代码对用户的非法输入进行处理
int i,j;
scanf("%d", &i);
printf("i=%d
", i);
scanf("%d", &j);
printf("j=%d
", i);
键盘输入:123m 输出结果 i正确 j为非法值
改写后的代码
#include<stdio.h>
int main(void)
{
int i;
char ch;
scanf("%d", &i);
printf("i = %d
", i);
while((ch=getchar()) != '
')
continue;
int j;
scanf("%d", &j);
printf("j = %d
", j);
return 0;
}
--------------------------------------------------------------------
二、运算符
1.短路
int i = 10; int k = 15; int m;
m = (1>2) && (k=5);
m的值是0,k的值是15
m = (2>1) && (k=5);
m的值是1,k的值是5