// c 语言计算:变量类型(数据类型) 与 printf 输出控制字符类型, #include <stdio.h> auto main() { int a = 20; int b = 10; float c = 15.888; float d = 5.999; float e; e = (a + b) * c / d; // ( 30 * 15 ) / 5 printf("(a + b) * c / d 的值是 %f\n", e ); e = ((a + b) * c) / d; // (30 * 15 ) / 5 printf("((a + b) * c) / d 的值是 %f\n" , e ); e = (a + b) * (c / d); // (30) * (15/5) printf("(a + b) * (c / d) 的值是 %f\n", e ); e = a + (b * c) / d; // 20 + (150/5) printf("a + (b * c) / d 的值是 %f\n" , e ); jisuan(); // 调用其他函数 return 0; } int jisuan() { float f,x=3.6,y=5.2; // 定义三个变量 f x y 为浮点型小数 int i=4,a,b; // 定义整数 a=x+y; b=(int)(x+y); // 变量b 赋值为: int 类型的 x+y 计算结果. 如果不定义则:x和y 依然为 float 浮点型 f=10/i; printf("a= %d,b= %d,f= %f,x= %f\n",a,b,f,x); } /* ---------- 变量 ----------- char 汉字,8字节 float 浮点型小数,4字节 double 双精度浮点值,双精度是1位符号,11位指数,52位小数 void 类型缺失 ---------- 常量 ------------ */ /* ----------- printf 输出控制符 ---------- 格式字符: d 有符号十进制整数。 o 无符号八进制数。 x 无符号十六进制数 (小写的x格式中用小写字母a,b,c,d,e,f来表示10到15之间的数,大写的X则用大写的ABCDEF来表示10到15之间的数) u 不带符号的十进制整数。 c 输出一个字符。 s 输出一个字符串。 e 以指数形式输出实型数。 f 以小数形式输出实型数。 g 自动决定输出格式为e和f中较短的一种,不打印无效的零。 % 输出%。 */ // gcc a.c -o a && ./a // 编译和执行文件
#---------------------------------- 研究 --------------------------------------————#
// c 语言计算:变量类型(数据类型) 与 printf 输出控制字符类型, // 循环打印: a++ 与 a-- /* ---------- 变量 ----------- char 汉字,8字节 float 浮点型小数,4字节 double 双精度浮点值,双精度是1位符号,11位指数,52位小数 void 类型缺失 ---------- 常量 ------------ #define name "my name is eisc" // 关键字 define 定义常量并赋值字符串 const int LENGTH = 10; // const 关键字定义常量 */ /* ----------- printf 输出控制符 ---------- 格式字符: d 有符号十进制整数。 o 无符号八进制数。 x 无符号十六进制数 (小写的x格式中用小写字母a,b,c,d,e,f来表示10到15之间的数,大写的X则用大写的ABCDEF来表示10到15之间的数) u 不带符号的十进制整数。 c 输出一个字符。 s 输出一个字符串。 e 以指数形式输出实型数。 f 以小数形式输出实型数。 g 自动决定输出格式为e和f中较短的一种,不打印无效的零。 % 输出%。 */ // gcc a.c -o a && ./a // 编译和执行文件 //-------------------------- c 语言存储类 ------------------------ /* 存储类 auto # 局部变量 register # 寄存器只用于需要快速访问的变量,比如计数器 static # 编译器在程序的生命周期内保持局部变量的存在 extern # 用来在另一个文件中声明一个全局变量或函数 #------------- 运算符 ---------------# 算术运算符,关系运算符,逻辑运算符,位运算,值运算符,杂项运算符 算术运算符: + - * / % ++ -- # 加减乘除,取余,自增加,自减少 关系运算符: == != > < >= <= # 相等, 不相等, 大于,小于,大等于,小等于 */ #include <stdio.h> void main() { int a = 20; int b = 10; float c = 15.888; float d = 5.999; float e; e = (a + b) * c / d; // ( 30 * 15 ) / 5 printf("(a + b) * c / d 的值是 %f\n", e ); e = ((a + b) * c) / d; // (30 * 15 ) / 5 printf("((a + b) * c) / d 的值是 %f\n" , e ); e = (a + b) * (c / d); // (30) * (15/5) printf("(a + b) * (c / d) 的值是 %f\n", e ); e = a + (b * c) / d; // 20 + (150/5) printf("a + (b * c) / d 的值是 %f\n" , e ); int es="20220714"; printf("------------开始调用算术运算符-------- %d\n", es); int jisuan(); jiajia(); } int jisuan() { float f,x=3.6,y=5.2; // 定义三个变量 f x y 为浮点型小数 int i=4,a,b; // 定义整数 a=x+y; b=(int)(x+y); // 变量b 赋值为: int 类型的 x+y 计算结果. 如果不定义则:x和y 依然为 float 浮点型 f=10/i; printf("a= %d,b= %d,f= %f,x= %f\n",a,b,f,x); return 0; } int jiajia(int a,b,c,k) { // 批量定义多个变量,并且赋值 for (int i=0; i<=10; i=i+2) { // 原来是 循环10次,设置 i 的步长为 2 ,因此 只能循环5次, c=a++; printf(" a 的值是: %d , c 的值是:%d\n", a,c); } printf(" 赋值 c 的值为a本身没有加的时候值,第一次不算 ; a 开始是本身值,循环1次就增加\n \n" ); printf("-------- 减减观察 --------\n" ); for(int i=0;i<=10;i++){ b=k--; printf(" k 的值是: %d, b 的值是:%d\n", k,b ); } return 0; }
双击表格可删除表格