今天学习了如何定义变量的细节处理,学到了不同类型的赋值运算,还有各种语句的具体形式和概念;同时还重点学习了输入输出的定义和类型,以及其中所用到的占位符的使用方法和细节。
可以用单词或者用缩写形式
拼音在程序中会给人一种很模糊的意思 增加了程序的可读难度
a.大驼峰 NewNumber 两个单词的第一个字母都为大写 看着更具层次感
b.小驼峰 newNumber 第二个单词的第一个字母写成大写 在程序中更突出
c.内核命名 New_Number 再两个单词中间加上下划线
在整个程序编写中尽量使用一种命名法
一般要求:左右两边类型匹配
a.高精度给低精度赋值 会出现精度丢失(损失:小数点后面位数变少) 低精度给高精度赋值 无影响
b.长类型给短类型赋值 会出现高位截断 (截断:短整型最多能放多少字节)只打印出低位数据
c.短类型赋值给长类型 会出现符号位扩展
无符号位: 结果会在前面补零
有符号位: 符号位扩展(最高位充当符号位)
(1)最高位为0 则结果前面补0
(2)最高位为1 则结果前面补1
输出中%d,%o,%#x都默认为有符号int型
如:if()
{
}else
{
}
如:printf("hello world");
如:1+2 ;2+3;
如: ; // 空 (只有一个分号 程序无法识别)
如:{
多条语组合 一起 表达一个意思
}
如:a=1; num1=36; (将一个数值或者字符赋值为一个被初始化的变量)
用过鼠标键盘将信息输入到计算器的(内存)中 再有由显示屏或外部显示器输出
c语言中输入输出的语句都是通过标准库的调用实现的,比如我们常用的scanf、printf之类的都是编写好的库函数
如我们常用的#include
int grtchar(void); // void 表示空类型
在键盘上获得一个单个字符 他有一个整形型的返回值 成功读到是时会返回从键盘输入第一个字符的ASSCII码
int putchar(void); //
向终端输出一个字符,把参数char指定的字符(无符号)写入到c的库函数中
printf("格式控制字符串",输出列表);
%开头的成为占位符 只要不是占位符其他都是普通字符(原样输出)
占位符 与 输出列表从左到右逐个匹配(如果占位符个数多余输出列表,多的输出随机值)
//整型
%d: 是以有符号的十进制形式输出
%u:是以无符号的十进制形式输出
%x:是以十六进制形式输出
%o:是以八进制形式输出
//浮点数
%f:是以小数的形式输出 单数最多保留6位
%g:是以最简洁的形式输出 小数点后面的零位都会被省略
%e:是以科学计数法的形式输出
//字符
%c:是以字符的形式输出
%s:是以字符串的形式输出
#:%[辅助控制符]x 输出十六进制的前缀
m(数字):输出宽度----默认右对齐;想要左对齐就在数字前加一个负号 如:%5d
.n(数字):控制输出小数的位数 在字符串里输出固定前多少位 如:%.3f
l // long型
ll //long long型
h // 短整型 指的是一半的意思 占两个字节 如%hc 只输出原来字符的一半 本来输出abcd 结果输出ab 在计算中本来要输出:
1111 0100 0010 0100 0000 结果输出:
0100 0010 0100 0000 (刚好输出原来数据的低两位字节)
hh // 占一个字节
注意:h和hh最后输出的结果也是有符号型 输出的结果的最高位为结果数值的符号
格式:scanf(”格式控制字符串“,地址列表)
占位符:占了一个位置,将输入的数据,转换为 占位符指定的格式 放的地址指定的空间上 所使用的占用符同时也决定能识别字符的范围
//整型
%d: 将输入的数据转换为有符号的十进制形式
%u:将输入的数据转换为无符号的十进制形式
%x:将输入的数据转换为十六进制形式
%o:将输入的数据转换为八进制形式
//浮点数
%f:将读入的数据转换成小数的形式
%g:将读入的数据转换成简洁的形式 小数点后面的零位都会被省略
%e:将读入的数据转换成科学计数法的形式
//字符
%c:将读入的数据转换成字符的形式
%s:将读入的数据转换成字符串的形式
1.参数一定要写取地址&
2.多个数据输入时以空白符号作为分隔符(空格 回车 TAB)
3.浮点数据输入时:
dobule-------%lf
int-------%d
long------%ld
long long------%lld
(总结一句话就是类型要匹配)
4.辅助控制符m(数字):输入m个字符操作结束 正常读入m个字符 超过m个字符 则值读满m字符
5.scanf匹配结束条件:scanf ("%d%d%d",&a,&b,&c); 每个%d依次对应后面的字符 多一个字符的话 多余的不会读取 少一个字符的话 则%d会随机都除一个垃圾值
a.空白符 b.指定宽度(%3d) c.非法字符(特殊字符、字母)
6.%c字符占位符:几乎可以识别键盘上的任何字符
注:一个空白符可以匹配任意多个空白符
%*c:跳过一个字符项
#include
#include
int main(void)
{
double a,b,c,s,area;
printf("输入三边长:\n");
scanf("%lf %lf %lf",&a,&b,&c);
if ((a+b)>c&&(a+c)>b&&(b+c)>a&&(a-b)