成都创新互联网站制作重庆分公司

c语言数组删除一行的函数 c语言数组中删除一个数据

c语言二维数组删除指定行数

我这手头上没有写c的东西,拿java写了一下,其实都差不多:

创新互联-专业网站定制、快速模板网站建设、高性价比安平网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式安平网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖安平地区。费用合理售后完善,十余年实体公司更值得信赖。

public static void main(String[] args) {

//一开始的 6*10 数组

int[][] sz = {

{5, 6, 4, 0, 2, 9, 8, 10, 3, 7},

{1, 2, 3, 4, 5, 6, 7, 8, 9, 10},

{3, 8, 4, 6, 9, 0, 10, 5, 7, 2},

{3, 6, 0, 10, 4, 7, 5, 2, 8, 9},

{1, 2, 8, 4, 5, 6, 7, 9, 3, 10},

{9, 2, 3, 6, 7, 8, 10, 0, 4, 5}

};

//声明一个 6*10的数组用来存储最终结果

int[][] result = new int[6][10];

int x = 0;

for (int i = 0; i 6; i++) {//遍历sz数组

for (int j = 0; j 10; j++) {

if (j 8) {//每行最后两列不需要比较了,只有前7列可能产生连续

if (sz[i][j + 1] - sz[i][j] == 1) {//如果 (i,j+1) 与 (i,j) 连续

if (sz[i][j + 2] - sz[i][j + 1] == 1) {//又如果 (i,j+2)与(i,j+1)连续

break;//则这一行出现了连续数字,这一行就不要了

}

}

} else {//如果这一行的所有数字都不连续,则将此行复制到result数组中

for (j = 0; j 10; j++) {

result[x][j] = sz[i][j];

}

x++;//result数组行数+1

}

}

}

//完事了,循环输出result数组结果

for (int i = 0; i 6; i++) {

System.out.print(i + ":");

for (int j = 0; j 10; j++) {

System.out.print(result[i][j] + " ");

}

System.out.println("");

}

}

运行结果:

0:5 6 4 0 2 9 8 10 3 7

1:3 8 4 6 9 0 10 5 7 2

2:3 6 0 10 4 7 5 2 8 9

3:0 0 0 0 0 0 0 0 0 0

4:0 0 0 0 0 0 0 0 0 0

5:0 0 0 0 0 0 0 0 0 0

c语言 如何删除文件中的一行,求解答!

一个文件内的内容加载到内存之后是连续存储的。(至少这种小文件,不超过4KB的)

如果想达到删除一行的效果。至少有三种办法可以实现

一、最简单的办法,建议读到链表里,删除其中一个节点。然后再覆盖写回到文件。

二、找到要删除的位置,fseek到该位置,将之后需要保留的文件内容,从这里开始写。

三、利用内存映射,将文件映射到内存,直接对内存修改,但是对内存修改,也是需要类似于方法2,将需要保留的内容重新移动位置。

综上,方法一最简单。

c语言中清除一行的命令

试一下这个:

#include stdio.h

int main()

{

float I,n;

printf("1234\n");

printf("3456");

printf("\b\b\b\b");

return 0;

}


文章标题:c语言数组删除一行的函数 c语言数组中删除一个数据
地址分享:http://cxhlcq.com/article/dosishc.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部