自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 p7java程序举例

p7

2022-08-22 13:40:47 158 1

原创 字符---

5

2022-08-13 14:00:10 147

原创 数组---

4

2022-08-09 14:29:10 371

原创 循环---

3

2022-07-25 21:14:52 246

原创 判断及调试

2

2022-07-21 19:57:19 178

原创 计算---

1

2022-07-14 10:14:11 265

原创 如何创建一个简单java程序

111File-->New-->Java Project在如此界面中选择编译器版本(默认JavaSE1.6)并为项目取名。222接下来在左侧项目中右击src选择new一个class接下来为class取名并按如下设置333接下来简单输出一句话,第一个java程序运行完成。...

2022-07-14 09:39:04 1125

原创 链表的删除和清除

这个代码实现的是查找指定的值并删除后输出所有数,如果要实现删除第几个之类 的代码也差不多。--main.h--#ifndef _MAIN_H_#define _MAIN_H_#include <stdio.h>#include <stdlib.h>typedef struct node{ int value; struct node *next;}node;#endif--main.c--#include "main.h" //type

2022-04-18 16:12:47 1106

原创 链表的遍历输出和搜索

1--在主函数中遍历:应该就一个关键点,即是使用p!=NULL还是p->next!=NULL。还有就是for循环的妙用。--main.h--#ifndef _MAIN_H_#define _MAIN_H_#include <stdio.h>#include <stdlib.h>typedef struct node{ int value; struct node *next;}node;#endif--main.c--#in

2022-04-18 15:08:24 1263

原创 链表的函数

如题所示,本文是围绕链表与函数展开的,也就是如何传进传出以及遇到的问题。1--首先观察如下代码,这是之前的知识(套中套那部分),指针p指向一个int变量k,指针pp指向p,注意他们都是一级指针,所以这里的指针pp紧紧是指向,他具有修改*p也就是k的值的能力,但是!他并没有改变p的地址的能力。#include <stdio.h>int main() { int k=0; int* p=&k; int* pp=p; *pp=2; printf("%d",k);

2022-04-15 13:39:07 1245

原创 链表的创建

相当于整个链表是依靠指针串联起来的。需要注意每一个结点也是一个指针,每个结点(即结构)里还有一个指针。--node.h--#ifndef _NODE_H_#define _NODE_H_typedef struct node{ int value; struct node *next;}node;#endif--node.h--#include <stdio.h>#include "node.h"//typedef struct no...

2022-04-12 15:49:07 9454

原创 可变数组转链表

虽然可变数组讲的这么完整,看上去也很完美,但是它是有缺陷的1--每次数组长度不够的时候,我们要重新申请空间然后拷贝,数组越大,拷贝花的时间就越长。2--而是申请空间牵扯出的内存分配问题,虽然我们现在电脑内存很大,似乎不用担心这个问题,但如果你在一个单片机这种内存受限的场合,你很快就会遇到这个问题。下图是可变数组申请内存时的方式导致的问题: 因为申请的是一片连续的空间,所以无法用到每个角角落落,简而言之就是不合理分配,没有高效利用内存空间。3--假如我们有一种方法,我们不去申请一个更大的空间,

2022-04-12 14:32:59 178

原创 遗漏掉的关于字符串,指针以及数组的一些知识(6) (字符指针易混点)

#include <stdio.h>#include <stdlib.h>#include <string.h>void GetMemory(char **ptr, int num);int main(void){ char *str; GetMemory(&str, 100); strcpy(str, "hello"); printf("%s\n", str); free(str); return 0;}void GetMemo.

2022-04-11 12:29:20 486

原创 可变数组^

1--首先这里定义这个结构为啥没有去直接typedef struct{}*Array;如果定义结构指针后面很多函数所需要的结构都是传指针进去,方便了不少,但是如果你想在一个函数中只是传值不传指针,就无法做到,而且你在函数中Array a;一般不容易想到你定义了一个指针,不符合常规操作。...

2022-04-11 11:58:38 322

原创 文件(3)二进制文件和文本文件&位运算

听老师的意思就是二进制文件如果不是必要情况不去使用,所以我也懒得学这节,做做了解就好。

2022-04-06 11:45:08 58

原创 文件(2)文件输入输出

1--文件的输入输出就代指用>和<做重定向。首先用命令提示符作操作:首先准备4个原材料(还有一个cpp运行后产生的exe)接下来打开打开命令提示符:中间那段话的意思就是"未命名2"将"输入.txt"里面的内容当作程序的输入然后运行的结果输出到"输出.txt"里面去。注意一点小细节就是<>左边的.c文件是不带后缀的,<>右边的那个txt文件要带后缀。...

2022-04-05 21:33:42 206

原创 命令提示符(文件操作基础)

第一步:打开命令提示符方法很多,例如win+r输入"cmd",直接在搜索框搜索"命令提示符"等等。第二步:找到你要运行的.c文件程序的位置:这里以下面程序为例:C:\Users\21019\OneDrive\桌面\未命名1.cpp(右键程序->属性->安全)接下来复制路径后半段,还有一种更为简单粗暴的方法:直接将文件拖入命令提示符,然后将后缀修改为exe即可(这个好像只能是前面是c盘后面是d盘才可行,不然前面路径有重叠,会出错)第三步:如果此刻敲击回车,...

2022-04-05 15:09:44 3722

原创 文件(1)格式化输入输出

1--#include <stdio.h>int main() { int k=12; printf("%9d,\n",k); printf("%-9d,",k); } 12,12 ,--------------------------------Process exited after 0.06664 seconds with return value 0请按任意键继续. . .

2022-03-30 20:25:19 82

原创 大程序结构2(项目)

1--首先是写大程序不推荐但又要了解的全局变量如果我们在一个.c文件中定义了一个变量k,又想在其他文件中使用它,那么就得将他定义为。特别注意在max.h中那个只是叫做声明,具体到每个文件的时候,你必须有一次定义!(目前我觉得是所有.c文件中有一次定义即可,其他.c文件可以直接对k进行操作)--main.c--#include <stdio.h>#include "max.h"int main() { max(); k+=2; max();}--max.c--

2022-03-29 20:16:28 70

原创 遗漏掉的关于字符串,指针以及数组的一些知识(5) (指针数组和多级指针)

1--首先通过这个例子领悟一下二级指针可以看到二级指针pp指向了一级指针p,所以*pp----二级指针的”值“就是p的地址,如果再*(*pp)就相当于*(p)也就是i的值。#include <stdio.h>int main() { int i=10; int *p=&i; int **pp=&p; printf("%p\n",&i); printf("%p\n",*pp); printf("i=%d\n",i); printf("**pp=%d

2022-03-27 17:06:04 99

原创 遗漏掉的关于字符串,指针以及数组的一些知识(4) (字符二维数组)

1-- 首先是字符数组

2022-03-27 16:18:05 62

原创 遗漏掉的关于字符串,指针以及数组的一些知识(3) (malloc动态内存分配)

引入--------c99是可以用变量做数组定义的大小,c99之前呢?(使用变量做数组定义的大小是基于防止数组溢出,便于修改等目的)。------------ 答案是动态内存分配----------------------int *a=(int*)malloc(n*sizeof(int));2--注意malloc得到的变量是void*类型的,所以得强制类型转换。3--注意要包含头文件#include <stdlib.h>。#include <stdio.h>

2022-03-26 17:18:41 540

原创 遗漏掉的关于字符串,指针以及数组的一些知识(2)

1--容易犯的小错误2--

2022-03-26 17:17:48 190

原创 遗漏掉的关于字符串,指针以及数组的一些知识(1)

1--注意理解下面的程序---#include <stdio.h>int main() { int a[10]={0}; int *p; p=a; printf("%p\n%p\n",p,p+1); printf("%d",p+1-p);}000000000062FDF0000000000062FDF41--------------------------------Process exited after 0.03679 seconds with ..

2022-03-26 12:28:48 351

原创 大程序结构1(项目)

1--这是核心思想

2022-03-24 20:29:38 137

原创 编译预处理和宏2(带参数的宏)易错题

第二题----切忌和函数混淆,宏定义是是文本替代。#include <stdio.h>#include <string.h>#define TOUPPER(c) ('a'<=(c)&&(c)<='z'?(c)-'a'+'A':(c))int main() { char s[80]; strcpy(s, "abcd"); int i = 0; putchar(TOUPPER(s[++i]));}D------------..

2022-03-23 14:30:40 309

原创 编译预处理和宏2(带参数的宏)

第一种#include <stdio.h>#include <math.h>int main() { int x=2; printf("%f",pow(x,3));}8.000000--------------------------------Process exited after 0.04138 seconds with return value 0请按任意键继续. . .第二种#include <stdio.h>#defin

2022-03-22 00:31:30 94

原创 编译预处理和宏1

1--接下来看几个程序#include <stdio.h>#define PAI 3.1415926#define wo "%.7f"int main() { printf(wo,PAI);}3.1415926--------------------------------Process exited after 0.04554 seconds with return value 0请按任意键继续. . .由上可见#define的作用是替换文本,但是#d.

2022-03-17 12:39:29 918

原创 全局变量3

#include <stdio.h>int* f(void);void g(void);int main() { int *p=f(); printf("%d\n",*p); g(); printf("%d\n",*p);}int* f(void){ int i=12; return &i;}void g(){ int k=24;}1224--------------------------------Process exited aft.

2022-03-16 13:29:46 283

原创 全局变量2(静态本地变量)

#include <stdio.h>int p();int main() { p(); p(); p();}int p(){ int all=0; printf("in %s all=%d\n",__func__,all); all+=2; printf("again in %s all=%d\n",__func__,all);}in p all=0again in p all=2in p all=0again in p all=2in p all=0.

2022-03-15 21:37:21 81

原创 全局变量1

1--首先是__func__这个字符串的的作用,在printf用%s输出可以输出当前函数的名称。#include <stdio.h>int p();int main() { printf("%s\n",__func__); p();}int p() { printf("%s\n",__func__); } mainp--------------------------------Process exited after 0.03801 seconds wi

2022-03-15 21:23:04 262

原创 二维数组与指针

这里通过一个

2022-03-13 22:34:16 103

原创 typedef

在使用typedef定义结构时,可以不需要声明原结构名字,但之前讲过在单纯定义一个结构时必须要有名字。

2022-03-13 14:08:55 275

原创 二维数组(行地址与列地址)

#define n 10;对于二维数组a[n][n]1--数组名(a)表示行地址,逻辑意义上并不能表示首元素地址。2--a[0],a[1]叫做列地址,逻辑意义上就表示某行首元素地址。物理上行地址就是某行首元素地址。甚至你用scanf时用行地址也是可以进行赋值的。(因为scanf是传地址的)。但你如果想像a[0][0]=1这样直接进行赋值,只能先将行地址转换成列地址。#include <stdio.h>#define N 10int main() { int a...

2022-03-13 11:02:57 3677

原创 二维数组与指针易错题

1--bcd2--bcd3--ad4--bd5--abd

2022-03-13 10:31:43 86

原创 结构(函数和指针)

​​​​​​C语言程序设计进阶_浙江大学_中国大学MOOC(慕课)1--如p13所示,函数传进的只是值,不是指针,所以不会改变初始main函数里的结构里的值。2--第一种方法如p14所示,在main函数中y=inputpoint();然后再input point函数中定义一个新的同类型结构,修3改成你想要的值,最后返回。就可以了。3--4--p17为啥还要返回结构?...

2022-03-09 15:18:52 71

原创 结构---

C语言程序设计进阶_浙江大学_中国大学MOOC(慕课)1--p2和本地变量一样,在函数内部声明只能在函数内使用,在开头即函数外声明即可被所有函数使用。2--p2中在输出时%i和%d一致,在输入时有所不同,具体csdn。3--p3中声明一个结构必须有名字,否则报错。4--p6初始化一个结构时,例如一个结构struct point a{int a;int b;int c;},p1;令struct point p2={.b=1};那么剩下的a和c都会被初始化0;这点和数组in.

2022-03-07 21:06:00 245

原创 枚举---

枚举,一种不大常见的东西,一般用于需要多次用到连续的数例如0123但又懒得用多个const int,这时候就可以用枚举。#include <stdio.h>enum color { red,blue,yellow,numbercolors};void p(enum color t);int main() { p(red);}void p(enum color t){ printf("red=%d\n",t)...

2022-03-03 20:49:19 88

原创 指针指向数值

#include <stdio.h>int main() { int a[10]={0}; a[0]=1; int *p=a; p[0]=2; printf("%d",a[0]);}

2022-03-01 15:29:48 290

原创 指针滑动-

#include <stdio.h>int main() { int a[10]={0}; a[1]=10,a[2]=15; int *p=&a[1]; printf("p[0]=%d\n",p[0]); printf("p[1]=%d",p[1]);}

2022-03-01 15:17:12 160

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除