熟悉基本的linux指令
ls:查看当前路径下的目录
mkdir(-m:mode设定权限 -p:parents 创建父级目录):mkdir -m 777 -p dir1/dir2
rm :删除文件命令
mv 1.c 2.c可用于重命名
两级目录:cd /目录1/目录2
cd(回到用户命令)
vim(打开可运行文件)
i:进入插入模式
esc:退出插入模式
:wq(保存w/退出q)
编译:gcc 文件名--(自动生成a.out文件)
运行:./a.out
熟悉c语言基础
控制语句
分支语句:if……else/switch
Switch()
{
Case 0:语句1;break;
……
Default;
}
跳出循环的语句:
continue(结束此循环,进入下一个循环)
break(跳出循环)
return(跳出函数)
exit(结束程序)(程度由小到大)
循环语句
for/while/do…..while/go…..to
int i=10;
While(i--){
Printf(“hello %d\n”);
}
For (n=1;n<10;n++){
Printf(“hello %d\n”);
}
For基本语句:
For(语句1;语句2;语句3){
循环体;
}
c语言之数组
一维数组:一组相同类型的数据
(1)定义方式:
Int a[10]={0,1,2,3,4,5,6,7,8,9};
Int a[]={1,2,3,4,5,7};
数组在内存中以一片连续的空间存储
数组数据的访问:printf(“%d”,a[i]);
数据更改:a[i]=x;
(2)数组名:代表整个数组的首地址
冒泡排序:(大的值往后冒)
值交换用异或等于:
int a=5,b=3;
a^=b;b^=a;a^=b
二维数组:(行数和列数)a[][]
在内存中一行一行的存储
初始化的两种方式:
Int a[3][4] = {0,1,2,3,4,5,6,7,8,9,2,5};
Int a[3][4] = {{0,1},{0,25,5,0,},{1,25}};
系统运行清屏:system(“clear”);
学习代码
打印棱形
#include<stdio.h>
int main()
{
int i=1,j,n;
for(;i<4;i++){
for(n=3-i;n>0;n--){
printf(" ");
}
for(j=0;j<2*i-1;j++){
printf("*");
}
printf("\n");
}
for(i=1;i<4;i++){
for(n=1;n<i+1;n++){
printf(" ");
}
for(j=5-2*i;j>0;j--){
printf("*");
}
printf("\n");
}
return 0;
贪吃蛇小游戏
void main()
{
int i,j;
char a[20][40];
for(i=0;i<20;i++)
{
a[i][0]='|';
a[i][39]='|';
for(j=1;j<39;j++)
{
a[i][j]=' ';
a[0][j]='-';
a[19][j]='-';
}
}
a[0][0]='-';
a[0][39]='-';
a[19][0]='-';
a[19][39]='-';
a[5][13]='#';
system("clear");
system("stty -icanon");
for(i=0;i<20;i++)
{
for(j=0;j<40;j++)
{
printf("%c",a[i][j]);
}
printf("\n");
}
char move;
int n=5,m=13;
while(1)
{
scanf("%c",&move);
if(move=='w')
{
a[n-1][m]='#';
a[n][m]=' ';
n--;
}
else if(move=='s')
{
a[n+1][m]='#';
a[n][m]=' ';
n++;
}
else if(move=='a')
{
a[n][m-1]='#';
a[n][m]=' ';
m--;
}
else if(move=='d')
{
a[n][m+1]='#';
a[n][m]=' ';
m++;
}
system("clear");
for(i=0;i<20;i++)
{
for(j=0;j<40;j++)
{
printf("%c",a[i][j]);
}
printf("\n");
}
}}
收获及感悟
通过今天的学习巩固了linux命令行的使用以及基本的c语言的知识,同时也学习了用简单的c语言如何编写简单的小游戏。
待续。。。。。。。