第一周主要学习了lunix的基本命令和开始学习C语言 C语言目前学到判断switch

复习知识点

lunix基本命令

  1. 创建新用户

sudo useradd _m 新用户名

  1. 修改密码

sudo paddwd

  1. 切换到根用户

su root

  1. 显示当前目录绝对路径

pwd

  1. 查看命令和函数的用法(和词典差不多)

man 命令/函数

  1. 临时获得权限

sudo

  1. 切换到哪个目录

cd 路径//绝对路径或者相对路径

cd . 切换当前工作目录

cd . .切换到上一级的工作目录

cd - 切换到上一次的工作目录

cd ~ 切换到家目录

  1. 查看目录内容

ls 可选参数 可选的文件

ls -a 显示所有的文件(包括隐藏)

ls -l详细输出文件夹中的内容

ls -h人类可读方式输出

也可以ls -lh ,ls -hl组合显示

ls --full-time 完整的时间格式输出

ls -t 根据最后修改时间排序输出

  1. 查看文件内容

cat 文件名

  1. 复制文件到另一个目录或者复制目录到另一个目录

cp 文件名 目录名

cp -a 源目录 目标目录

cp -a 源目录/. (一个空格)目标目录 :复制整个目录中的文件到目标目录

  1. 创建目录,创建文件

mkdir 目录名

touch 文件名

  1. 删除

rm

rm -r 删除目录

rm -i删除文件

rm -f删除(忽略不存在文件,无提示)

  1. 重命名

mv 旧文件名 新文件名

  1. 文件移到指定目录

mv 文件名 目录名

  1. 查看权限目录

chmod

a:所有用户

u:主人

g:小组用户

o:其他用户

+:加相应权限

-:去除相应权限

=:设定为指定权限

r:读权限

w:写权限

x:可执行文件

例子:

chmod a+x 需要改变权限的带路径的文件或目录名

chmod o-x 需要改变权限的带路径的文件或目录名

备注:加上-R选项,可以告诉chmod命令同时将指定目录下的所有内容以及后代子孙目录下的所有内容的权限都进行修改

如果发现没有权限执行相应命令,可以在命令前加上sudo,表示临时以超级用户的身份来执行该命令

  1. 创建文件并开始编辑

vim 文件名

17:保存.c文件并转成可执行文件,再进行执行

gcc .c文件 -o 文件

./文件

这就是大致所学习的lunix基础命令相关内容

C语言内容小总结(用小实验来总结)

定义变量并输出语句

用$号打印输出一个C形状

位运算

&&与运算:除非两数都为1,其余都为0

||或运算:除非两数都为0,其余都为0

^异或运算:两数相同为0,其余为1

~取反运算:1为0,0为1

<<左移:整体左移

>>右移:整体右移

案例1:判断奇偶数

案例2:交换两个数

if-else

案例:声明2个double型变量并赋值。判断第一个数大于10.0,
且第2个数小于20.0,打印两数之和。否则,打印两数的乘积

if else-if

案例:计算器

#include <stdio.h>

int main(){

int a , b, d;

char c;

printf("请输入所需计算\n");

scanf("%d%c%d",&a,&c,&b);

printf("%d%c%d",a,c,b);

if(c=='+'){

d = a + b;

printf("=%d\n",d);

}

else if(c=='-'){

d = a - b;

printf("=%d\n",d);

}

else if(c=='*'){

d = a * b;

printf("=%d\n",d);

}

else if(c=='/'){

if(b==0){

printf("分母不能为0\n");

}

else{

d = a / b;

printf("=%d\n",d);

}

}

else if(c=='%'){

if(b==0){

printf("被余数不能为0\n");

}

else{

d = a % b;

printf("=%d\n",d);

}

}

else{

printf("输入错误,请重新输入\n");

}

return 0;

}

switch判断

案例:

、岳小鹏参加Java考试,他和父亲岳不群达成承诺:

如果:

成绩为100分时,奖励一辆BMW;

成绩为(80,99]时,奖励一台iphone xs max;

当成绩为[60,80]时,奖励一个 iPad;

其它时,什么奖励也没有。

请从键盘输入岳小鹏的期末成绩,并加以判断

一周错误以及问题小结

问题1:虚拟机无法连上网(无线网)

最后解决方法:将虚拟机设置中网络改为桥接网络并指定无线网名,最终成功了

问题2:无法将虚拟机中的文本内容复制粘贴到主机上

最后解决方法(在网上找到):输入sudo apt-get install open-vm-tools-desktop -y,最终重启虚拟 机圆满解决。

问题3:老版本的Ubuntu无法下载vim

最终解决方法((37条消息) 老版本Ubuntu无法下载Vim编辑器_Indifferent848的博客-CSDN博客_ubuntu vim无法下载)转载方法:

1.执行 sudo apt-get remove vim-common ;

执行成功,删除原先保存的vim编辑器

2.执行 sudo apt-get install vim;

安装失败,找不到安装包路径

3. 执行 sudo-get apt-get update;

执行失败,找不到路径或者版本太老

4. 执行 sudo add-apt-repository “deb http://old-releases.ubuntu.com/ubuntu maverick main restricted universe”;

执行成功

5.执行 sudo apt-get update;

执行成功,大概需要3分钟左右

6.执行 sudo apt-get install vim;

执行成功,大概需要5分钟左右

最终圆满成功

所注意的大坑!!!!!!

  1. =和==

在编写满足条件的时候没注意=,导致程序结果错误,好在既是修改过来。

  1. 字符和字符串(超级大坑!!!!!!!!)

在输入时,由于当时用的时%s,因为喜欢换行输入,在输入char类型时也是enter+条件字符,导致结果

一直出现偏差,看了好久都没有查到问题所在。在和同学一起研究了一段时间才发现是字符串输入的问题,在输入字符串时,无论是按下enter或者是空格键都算是输入字符串!!!!!!!最终修改后,成功运行,结果正确。

一周总结

这周说是一周,其实满打满算只是四天时间。我感觉进度方面大致还行,各知识点做了不少习题巩固知识,过得十分充实。这只是开始,希望后续状态越来越好,减少错误,顺利入行嵌入式。

Logo

openvela 操作系统专为 AIoT 领域量身定制,以轻量化、标准兼容、安全性和高度可扩展性为核心特点。openvela 以其卓越的技术优势,已成为众多物联网设备和 AI 硬件的技术首选,涵盖了智能手表、运动手环、智能音箱、耳机、智能家居设备以及机器人等多个领域。

更多推荐