无聊,写点c语言笔记。
hello world
接触一门语言一定要先输出一个hello world, 那么我们来看看c语言版本的。
#include <stdio.h>
int main()
{
printf("Hello world\n");
system("pause");
return 0;
}
第一行是加载头文件,因为我们后边要用的printf的声明在者里面,下边是标准函数体的写法。printf的f就是format,即格式化输出。system("pause")只是让窗口停下便于我们观看。
int main()
{
return 0;
}
好了,小试牛刀结束。
变量,常量
变量名字可以以字母,数字下划线组成,不过不能以数字开头。也不要占用c语言本身的关键字。
如果只是为了储存数据的话,可以通过键盘输入的,有整数和小数,整数呢,在C语言里面,一般用short和int表示,小数的话,用float和double,由于计算机不能很好的储存小数,一般会丢失一些精度,这也是计算机里的小数被称为浮点数的原因。
至于为什么有这么多区分,是因为不同类型的数据所占内存的空间不同。
(浮点)
(int char)
ASCII
格式化输出
循环,分支
求和 阶乘函数
#include <stdio.h>
int sumOf(int n)
{
int result = 0;
for (int i = 1; i <n+1; i++)
{
result += i;
}
return result;
}
int fac(int n)
{
int result = 1;
for (int i = 1; i < n+1; i++)
{
result *= i;
}
return result;
}
int main()
{
int sum = sumOf(100);
int res = fac(5);
printf("和是%d, 阶乘是%d", sum, res);
system("pause");
return 0;
}
打印图形
#include <stdio.h>
void row(int n)
{
for (int i=0; i<n; i++)
{
putchar('*');
}
}
void col(int n)
{
for (int i = 1; i < n+1; i++)
{
printf("*\n");
}
}
void square(int n)
{
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
printf("*");
}
printf("\n");
}
}
int main()
{
square(5);
puts("----------------------------------------------------");
col(4);
puts("----------------------------------------------------");
row(4);
system("pause");
return 0;
}
求斐波那契数列
#include <stdio.h>
#define N 20
long long a[N];
int main()
{
a[0] = 1;
a[1] = 1;
for (int i = 2; i < N; i++)
{
a[i] = a[i - 1] + a[i - 2];
}
for (int i=0; i<N; i++)
{
printf("%d\n", a[i]);
}
system("pause");
return 0;
}
课程表
#define N 10
int main()
{
for (int i=1; i<N; i++)
{
for (int j = 1; j < N; j++)
{
if (i >= j)
{
printf("%4d", i*j);
}
}
printf("\n");
}
system("pause");
return 0;
}