首页
网站统计
推荐
关于
Search
1
历史的面孔中蒋百里的形象
15 阅读
2
时间不够用?
13 阅读
3
历史的面孔中陈天华的形象
12 阅读
4
宝塔
11 阅读
5
欢迎使用 Typecho
9 阅读
默认分类
随笔
建站
科普
计算机语言及硬件开发
登录
Search
标签搜索
历史的面孔
书籍
C
梁启超
陈天华
蒋百里
宝塔
建站
生活感悟
学习
迟暮
累计撰写
9
篇文章
累计收到
2
条评论
首页
栏目
默认分类
随笔
建站
科普
计算机语言及硬件开发
页面
网站统计
推荐
关于
搜索到
9
篇与
的结果
2025-12-05
第三次学习c语言
{mtitle title="运算符及输入输出符C"/}第一学习输入输出符,第二学习运算符,第三进行练习普通运算符的基础理解还不错,对于位运算符,移位运算符和逗号表达式理解不是非常明白,只能超过了没有一点想法,此外实验了几道题目,也是前面的会,后面的能猜到用什么,但是输出不完整。//printf是一个库函数=》C语言已经实现好了,要想使用库函数,必须引用头函数stdio.h //要想换行要在其中加入\n //占位符第一个字符为%,第二个字符为占位符的类型, // %d表示代入的值必须是十进制整数,%s表示代入的是字符串,%c表示字符,,%f小数,%p指针(用来打印地址) #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() { printf("Change World\n"); printf("Change world\nHello world"); printf("There are %d apples, %d bananas\n", 3, 9); //第一个占位符就占的是第一个逗号后面的内容,第二个就占用第二个逗号后面的内容 printf("%s是一个动漫人物\n", "王麻子"); printf("%5d\n", 123); // 不足五位会在左边(前面)加空格,因为输出值默认为右对齐 printf("%5d\n", 123456); // 超过是多少就输出多少 printf("%-5d\n", 123); //在%后面添加-号会导致输出的值变为左对齐,会在后面加空格 //printf允许限定占位符的最小宽度 printf("Number is %.2f\n", 0.5); //限定小数位数是在%后添加 .2 表示小数点后两位 printf("%6.2f\n", 1.2); //代表数据的宽度是6,这个宽度包含小数点的,且要求小数点后两位 //空格 空格 1 . 2 0 int score = 0; int a = 0; int b = 0; //printf("请输入成绩:"); //从键盘获取一个数据,写道变量score里面,&为取地址符号 //scanf("%d", &score); //要想使用score需要在最前面加 #define _CRT_SECURE_NO_WARNINGS //第一个参数是占位符,第二个参数表示用户输入的参数存入变量中 //程序开始后,控制台会等待输入 //scanf中有什么输入什么,如果在%d后加入\n,必须输入\n才能继续 //printf("成绩是:%d\n", score); scanf("%d%d", &a, &b); //scanf()返回值的含义 //正常情况下会返回读取的变量个数 //如果没有任何读取项或者匹配失败返回0 //如果没有读取任何数据前,发生读取错误,或者读取到文件结尾,返回常量EOF(-1) //end of file 文件结束的标志 //读取多个数值时,如果想要提前结束按ctrl+z int ret = scanf("ret = %d\n", ); printf("数字是:%d,%d\n", a, b); int year = 0; int month = 0; int day = 0; scanf("%d-%d-%d",&year, &month, &day); //scanf里面有什么就输入什么,比如上述2025-12-2 printf("%d%d%d\n", year, month, day); return 0; }#include<stdio.h> int main() { int a = 1 + 2; int b = 5 - 3; int c = 5 - 16; //负数也是可以被输出的 int d = 3 * 5; float e = 3.3 * 5.5; printf("a=%d\nb=%d\nc=%d\nd=%d\ne=%f\n", a, b, c, d, e); float x = 6 / 4; int y = 6 / 4; //整数除法,只会返回整数部分,丢弃小数部分 float z = 6.0 / 4; //如果想要出现小数就要变成浮点数6.0 float w = 7.0 / 22; printf("x=%f\ny=%dz=%f\nw=%f\n", x, y, z, w); int g = 3 % 2; int h = -8 % -3; //只能用于整数不能用于浮点数 printf("g=%d\nh=%d\n", g, h); //赋值操作符 //int a = 100其实就是运算符,就是吧100给了a,a =200就是把200给到了a //复合运算符 //+=,-=,*=,/=,%=,》=(右移),《=(左移),&=,|=,^= int j = 5; j += 3; //其实就是j = j + 3 printf("j=%d\n",j); //单目运算符 int i = 7; //i++; //相当于给i自增1,把++放在i的前面也是给i加了1(++i), //++在前,先自增,在赋值 ++在后,先赋值,后自增 int k = ++i;//相当于把i自增1,在把值赋给k int l = i++;//把i赋值给l,在给i自增1 //--也是和++一样的运算规律 printf("i = %d\n", i);//输出的是在k自增和在l自增后的 9 printf("k = %d\n", k);//输出的是 8 printf("l = %d\n", l);//输出的是 8 //移位运算符,移的是比特位bit //左移在右边补零,在左边掉0 左移是乘法,2的乘方运算 int num = 10; int num1 = num << 1; // 输出的是20 10*2的一次方 int num2 = num << 2; // 输出的是40 10*2的二次方 printf("num=%d\nnum1=%d\nnum2=%d\n", num, num1, num2); int nmu = 10; int nmu1 = nmu >> 1; // 输出的是5 10/(2的一次方) int nmu2 = nmu >> 2; // 输出的是2 10/(2的二次方) printf("nmu=%d \nnmu1=%d \nnmu2=%d \n", nmu, nmu1, nmu2); int unm = -1; //非常特殊,如果这个数字是-1,移位后还是-1 int unm1 = unm >> 1; int unm2 = unm >> 2; printf("unm=%d\nunm1=%d\nunm2=%d\n", unm, unm1, unm2); int umn = -100; int umn1 = umn >> 1; int umn2 = umn >> 2; printf("umn=%d\numn1=%d\numn2=%d\n", umn, umn1, umn2); //位操作符 //按位与 & 按位或 | 按位亦或 ^ 按位取反 ~ /* 0101 1011 0001 1001 按位与 对应位上都是1,结果才会出现1,只要对应位上出现0,结果就是0 0001 1001 按位或 对应位上都是0,结果才会出现0,只要对应位上出现1,结果就是1 0101 1011 按位异或 对应位上一样,结果出现0,对应位上出现不一样的,结果就是1 0100 0010 按位取反 原来是0,结果就是1,原来是1,结果就是0 */ int mun1 = -3; int mun2 = 5; printf("%d\n", mun1 & mun2); printf("%d\n", mun1 | mun2); printf("%d\n", mun1 ^ mun2); printf("%d\n", ~0); //关系运算符 int m = 11; int n = 12; printf("%d\n", m > n); printf("%d\n", m < n); printf("%d\n", m >= n); printf("%d\n", m <= n); printf("%d\n", m != n); printf("%d\n", m == n); //输出0表示假,输出1表示真 //逻辑运算符 /* 逻辑与 && 逻辑或 || 逻辑非 ! */ //逗号表达式 从左向右一次执行,整个表达式的结果就是最后一个表达式的结果 int o = 1; int p = 2; int q = (o > p, o = p +10, a, b = a + 1); printf("%d\n", q); return 0; }
2025年12月05日
3 阅读
0 评论
0 点赞
2025-11-26
学习C语言第二天
今天学习了数据类型,变量,内存管理,数据类型占用大小及取值范围等。课程中的内容通俗易懂,目前下来都能明白。此外在整个学习流程中,有点缺乏方向了,后续需要了解整体学习内容及流程。以下是我学习的笔记,欢迎指出错误,轻喷,谢谢。//数据类型 /* 基本类型→字符型,整型(短整型,整型,长整型,长长整形),浮点型和布尔类型 枚举类型(enum) 空类型(void) 派生类型→指针类型,数组类型,结构体类型,共用体类型,函数类型 */ /* 字符型 char 有三种书写类型 char [signed] char 有符号 其中signed可以省略 unsigned char 无符号 其中unsigned必须有 */ /* 整型 short [signed] short unsigned short int [signed] int unsigned int long [signed] long unsigned long long long [signed] long long unsigned long long */ /* 浮点型 float 单精度 double 双进度 long doubele */ /* 布尔型 只有0表示假 */ #include <stdio.h> #include <stdbool.h> //int main() //{ //char a = 'a'; //unsigned char ch2 = 'b'; //short sh = 10; //int i = 20; //在这里博哥写的定义a了,会报错,类型不一样也会报错 //long la = 100; //long long lla = 1000; //float f = 12.5; //double d = 12.5; //long double ld = 12.5; //printf("%d\n%d\n%d\n%d", 'a', ch2, i, 'i'); //想要看输出是否正确可以加一个打印,记住是字符 //这里打印中,输出的是不一样的,还需注意,此外 单行注释快捷键, 1选中 2ctrl 3/ // _Bool flg = true; //其中_Bool中B必须大写,假为false, // if (flg) // { // printf("this is true!"); // } // return 0; //} //有了数据类型后,我们如何使用数据类型? //通过类型我们可以定义变量,而变量中可以存储数据 /* 变量 data_type name 数据类型 变量名 */ /* 变量命名的一般规则 只能由字母,数字和下划线组成 不能由数字开头 长度不能超过63字符 区分大小写 不能用关键字 */ /* 变量的分类 全局变量 在大括号{}外定义的变量 局部变量 在大括号{}内定义的变量 */ /* 变量既然是数据,那保存在哪里了,保存在内存中 为什么划分内存,因为存数据和取数据效率高,太乱了就不好找 初步分为三个区 栈区:局部变量 堆区:内存管理等 静态区:全局变量 */ int local = 10; //全局变量 int gloable = 100; //全局变量 int main() { int local = 20; //局部变量 printf("%d\n", local); //变量名一样,先读取局部变量 printf("%d\n", gloable); printf("%zd\n", sizeof(char)); //1个字节 sizeof返回值是size_t类型,期望通过%zd输出 printf("%zd\n", sizeof(_Bool)); //1个字节 当然%d使用也可以 printf("%zd\n", sizeof(short)); //2个字节 printf("%zd\n", sizeof(int)); //4个字节 printf("%zd\n", sizeof(long)); //4个字节 printf("%zd\n", sizeof(long long)); //8个字节 printf("%zd\n", sizeof(float)); //4个字节 printf("%zd\n", sizeof(double)); //8个字节 printf("%zd\n", sizeof(long double)); //8个字节 return 0; } /* 数据类型占用内存大小以及取值范围 数据存储容量或者数据传输速率的基本单位:bit,byte,kb,mb,gb,tb,pb 8 bit = 1 byte 1024 byte = 1 kb 其余的进率都是1024 sizeof关键字可以计算 某个类型或者表达式的长度,单位是字节。 在不同平台下字节大小是不一样的,目前都是x64平台下 */ // 前缀为[signed]的是有符号类型,只能表示负数,0,正数 范围是-128-127 // signed int a = 'a' 等同于 // int a = 'a' // 8bit分为八个位置,第一位是符号位,0是正数,1是负数 // 负数在内存中怎么储存? 源码 =》(源码符号位不变,其它位取反)反码 =》(反码加一) 补码 // -1的源码 1000 0001 反码1111 1110 补码1111 1111 // -2的源码 1000 0010 反码1111 1101 补码1111 1110 // 128的源码 1000 0000 反码0111 1111 补码1000 0000 128比较特殊 // // 前缀为unsigned的为无符号类型只能表示 0,正数 范围是0-255
2025年11月26日
3 阅读
1 评论
0 点赞
2025-11-25
第一天学习C语言
{mtitle title="记录C语言学习过程"/}本来想着学习就好了,但是有时候就是有惰性在,有很大可能学不下去,分享才能让自己的学习更有动力,那我就分享好了,目前计划2026过年前,目标是达到能考过二级水平,然后再进行计划学习,今天是11月25日,初步认识C语言的概念,记录一些笔记,轻喷。 目前是看见B站上的一个9月份发布的视频进行学习,#include<stdio.h> /*头文件后缀为.h 源文件后缀为.c */ // 行注释和块注释 块注释不能嵌套 //关键字,如int,if等不能定义,因为C本身已经有的 //单引号‘’只能包含一个字符,字母@!都算是字符,汉字不可以 //字符串 “”一个或者多个字符成为字符串,字母中文等都可以 //先打断点再调试,再数字前面点红点 目的看内存布局 /* str数组中为什么会多一个\0? %s打印的字符串,\0起到的作用就是标记结尾 字符串结尾都是以\0结尾的 */ /* ASCLL编码 dec是十进制,oct是八进制,hex是十六进制,ch是字符的意思 字符零‘0’对应的十进制数字是48 大写字符‘A’对应的十进制数字是65 小写字符‘a’对应的十进制数字是97 小写a和大写A差值是32 ASCLL前32个字符是不可答应的,无法再屏幕上观察到 */ int main() //main是c语言的入口,一个项目只有一个入口,即使有很多个.c文件也只能有一个main { printf("hello world\n"); printf("%c", 'a'); char str[] = "abcde"; //char str是储存字符串的,其中str叫做数组 printf("%s\n", str); //这里换行符斜杠错误过 printf("%c\n", 'A'); //字符在计算机中存储规则是十进制 printf("%c\n", 65); //字符A的十进制也可以用 return 0; } ...
2025年11月25日
6 阅读
0 评论
0 点赞
2025-08-31
时间不够用?
时间是客观的,“时间贫困”是主观的{dotted startColor="#ff6c6c" endColor="#1989fa"/}## 时间 = 金钱永远不要说时间不够用,而是一样的时间你能让它变得如何不一样。
2025年08月31日
13 阅读
0 评论
0 点赞
2025-08-25
宝塔
{dotted startColor="#ff6c6c" endColor="#1989fa"/}{mtitle title="宝塔面板的下载"/}打开宝塔面板官网: 宝塔官网点击下载安装网址: 面板下载地址选择以下两种安装方式其一安装宝塔面板:第一种根据系统兼容性选择安装脚本复制安装脚本到服务器不知道自己什么系统的采用 通用安装脚本(推荐) if [ -f /usr/bin/curl ];then curl -sSO https://download.bt.cn/install/install_panel.sh;else wget -O install_panel.sh https://download.bt.cn/install/install_panel.sh;fi;bash install_panel.sh ed8484becCentos/OpenCloud/Alibaba系统 的可以用以下命令进行下载 url=https://download.bt.cn/install/install_panel.sh;if [ -f /usr/bin/curl ];then curl -sSO $url;else wget -O install_panel.sh $url;fi;bash install_panel.sh ed8484bec第二种在线安装,但是通常都是最新版本,这点需要注意。第一步准备一下几个内容: (1)服务器ip(2)服务器密码 (3)服务器密钥服务器的ip、密码和密钥进入相应的服务器获取阿里云服务器:第二步在宝塔面板的下载安装页面,向下滑动,遇到如图相似界面即可第三步填写IP和服务器密码,其他不变{dotted startColor="#ff6c6c" endColor="#1989fa"/}{mtitle title="宝塔面板的使用"/}登录在地址栏中输入服务器的IP地址,然后跟上端口号8888(默认宝塔的端口号)http://服务器IP地址:8888/,比如http://123.456.789.123:8888/。其中服务器ip是在云服务器实例中,外网ip端口号在安全组找到宝塔的端口号左侧导航栏网站点击添加站点,可以看到以下图片内容FTP不用管4.数据库这个也不用点击,主要涉及博客建立时需要数据库,把这个填进去文件主要是这台服务器安装从在的软件,文件等其中网站储存在: 根目录/www/wwwroot如果站点添加后,自然会出现与添加站点的域名相应的文件夹。注意文件夹:通常会带有后缀如:qchu.top 如:blog.qchu.top 如:mathstar.qchu.top在上述文件中上传博客系统,通常由Typecho、WordPress和hexo等组成如上述的blog.qchu.top是由Typecho建站,而mathstar.qchu.top是由WordPress建站而成 Typecho WordPress Hexo 解压文件夹,将文件夹中全部内容剪切到域名对应的文件中 小白只需要关注 usr文件 点击usr文件后,会看到以下内容其中插件与模板可以去以下网站寻找Tyoecho插件 Typecho Plugins Tyoecho主题模板Typecho Themes WordPress插件和模板在仪表盘中下载 Hexo的插件和模板在官网寻找Hexo
2025年08月25日
11 阅读
0 评论
0 点赞
1
2