目录
printf
输出控制符 | 输出参数类型 |
%d | int |
%ld | long int |
%c | char |
%f | float |
%lf | double |
%d | 输出十进制参数 |
%x | 输出十六进制参数 |
%o | 输出八进制参数 |
%s | 输出字符串 |
//目的:测试printf 十六进制输出符%x %X %#x %#X 和八进制输出符%o %#o的用法
#include<stdio.h>
int main()
{
int i = 47;
printf("输出该数字的十六进制\n");
printf("%x\n", i);//输出2f
printf("%X\n", i);//输出2F
printf("%#x\n", i);//输出0x2f
printf("%#X\n", i);//输出0X2F
printf("输出该数字的八进制\n");
printf("%o\n", i);//输出57
printf("%#o\n", i);//输出057
return 0;
}
//总结
//注意区分并记住各进制在printf输出时的输出控制符
//设置多行注释
//十六进制最好的输出控制符为%#X
//八进制%o或者%#o其中都是小写字母o
/*
为什么要输出控制符
1.01组成的代码可以表示数据也可以表示指令
2.如果01组成的代码表示的是数据的话,那无同样的01代码组合以不同的输出格式输出就会有不同的输出结果
*/
运行结果:
scanf
通过键盘将数据输入到变量中
//目的:不含有控制符的scanf的用法
#include<stdio.h>
int main()
{
int i;
scanf_s("%d", &i);
printf("%d",i);
return 0;
}
/*
总结
1.输入控制符和输出控制符一样,如%d %c之类的
2.运用scanf时要注意后面有&
3.scanf("输入控制符",&输入参数); eg scanf("%d",&i);
将从键盘输入的字符转化为输入控制符所规定的格式的数据,然后存入以输入参数的值为地址的变量中
*/
运行结果:
scanf中含有非输入控制符时
//了解scanf中含有非输入控制符时的用法
#include<stdio.h>
int main()
{
int i;
scanf_s("m%d",&i);
//输入m666 ,666看看谁是正确的
printf("i=%d",i);
return 0;
}
/*
输入m666运行结果正确
--------------------------
666
666
D:\vs\郝斌c\scanf\x64\Debug\scanf 不含有控制符.exe (进程 4652)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
--------------------------
输入666时运行结果错误
-----------------------------
666
i=-858993460
D:\vs\郝斌c\scanf 含有非输入控制符\x64\Debug\scanf 含有非输入控制符.exe (进程 10764)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
-----------------------------
*/
//总结:一般情况下我们都不含有非控制符
// 如果有非控制符,一定要原样输入
//ctrl+k+c注释选中行 ctrl+k+u取消注释
//当输入/*会自动补全*/