第一、二章
关于C语言学习的时候遇到的细节问题和容易出现理解错误的地方,以及当时学习的疑惑。
程序结构
程序:算法+数据结构
(C语言是函数语言)
程序结构
- 预处理指令
- 函数(c语言调用预处理指令后,写的第一行main就是在调用函数)
- 变量
- 想要达成目的的算法(语句、表达式)
- 注释(解释代码,或者做标记以防在大量代码中无法进行修改)
#include<stdio.h>
int main
{
printf("I am a cute girl !"); //分号不能少
return 0;
}
//是单行注释,从//后开始到行尾都是注释内容。
/* .... */ 多行注释,当注释内容占多行时
不能在注释内嵌套注释,注释也不能出现在字符串或字符值中
基础数据类型
只列举常见简单的类型
-
整型 (整数时用)
声明整型变量或者函数返回值类型
int(%d) long int (%ld) -
浮点型 (小数时用)
声明浮点型变量或者函数返回值
float (%f) double(%lf)
double比float更精确
数据类型之间的转换,可以依靠改变其对应的%d %f %c 等来实现。 -
字符型
char (%c) -
赋值抑制符合*
scanf(“%4d%*3d,%2d”,&a,&b);表示在输入时,前4个读入赋给a 之后输入的3的数不读入,再后的2个数读入b
输入输出格式
scanf()函数:为了从键盘上获取输入
printf()函数:为了把计算结果输出到显示器
scanf("%d,%d",&a,&b);
键盘输入时,必须 a,b(输入两个数之间要有“,”否则会出错)
scanf("%d %d",&a,&b);
键盘输入时 a 空格 b 或 a Tab b 或 a 回车 b
(按要求输入才能读取正确)
- 输出格式中修饰符
%md 代表数据以十进制整数形式输出,宽度占m列
%md 表示右对齐(数据不够m列左补空格)
%-md 表示左对齐(数据不够m列右补空格)
输出时保留几位小数n printf( “%.nf”)
调用函数
已经定义好的能实现某些功能的函数保存在库函数中,可直接调用使用,但前提是要在main函数前声明“#include<math.h>”
就像后面学习到的函数,自己编写的为方便实现某种目的 的函数,像提前打包好的米饭,在后面代码中需要米饭时 就可以直接调用。
(关于函数等复习到第五章函数吧)当时在做C语言作业时,想求一个数的平方根,百思不得其解。为方便解决问题,列举一些常用函数解决问题,不要问为什么,因为…后面就知道啦
- 求绝对值
求实数的绝对值用fabs() - 求平方根
求平方根sqrt() - 求幂xy
pow(x,y) - 求ex
exp(x)