C语言读取 未知长度 的矩阵

1、确定矩阵行数:

使用每次读取一行函数fgets

row = 0;

while(fgets(buf, buflen, fp) != NULL)

row++;

 

2、确定矩阵列数:

rewind(fp);

col = 0;

ch = fgetc(fp);

while(ch != ‘\n’)

{

if(ch == ‘ ‘)

col++;

ch = fgetc(fp);

}

col++; //补上最后一列,因为最后一列没有空格

注意:在确定行数后,确定列数之前,首先要使用函数rewind(fp);使文件读写指针返回到文件起始位置。

C语言读取 未知长度 的矩阵

时间: 2024-10-11 04:30:55

C语言读取 未知长度 的矩阵的相关文章

快慢指针原理--快速找到未知长度单链表的中间节点

package com.java.dataStruct; //节点类 public class Node<E> { E item; Node next; public Node(){ } public Node(E element){ this.item = element; } public Node(E element, Node next){ this.item = element; this.next = next; } } Node p1,r1; Node L1 = new Node

关于C语言读取文件时候多读一行

梗概:为什么C语言读取文件到结构体时为什么整天多读一行?一切都是[!feof(fp)]的错!!! while (!feof(fp)) {  fgets(buffer,256,fp);  j++; } 像这样的代码,是很多C语言学者经常犯的错误!! feof()这个函数是用来判断指针是否已经到达文件尾部的.若fp已经指向文件末尾,则feof(fp)函数值为"真",即返回非零值:否则返回0. 对呀!那有什么问题的呢? 其实feof() 这个函数是当读到文件结束符就返回 true 值,而非到

蓝牙通信中读取固定长度数组的解决

2014-05-05 18:10 今天主要忙于工作.之前遇到一个问题,今天得以解决. 问题的描叙:需要从输入流中读取固定长度的字节数组. 问题的解决:今天参考了网上的资料.解决了. 注释部分:之前是通过拷贝数组进行解决,但是难以解决. 解决的代码如下: public synchronized void run() { byte[] buffer = new byte[16]; int bytes = 0; while (mmInStream != null) { try { // 通过连接的端口

c语言读取字符在记事本中出现次数

程序使用说明: 此程序可以统计出名称为1.txt的文件中/出现的次数 但是仅支持单个英文字母和标点符号查询,不支持汉字. 在本程序生成的exe根目录下放一个1.txt, 即可查询出该字符在1.txt记事本中出现的次数. by 星云 测试文本内容如下: 源码如下: #include<stdio.h> #include<windows.h> #include<string.h> #include<conio.h> int main() { FILE *fp; d

php面试题:如何知道一个未知长度的字符串哪个字符出现的次数最多?(字符串可由字母,数字及其他字符组成)请写出代码。

如何知道一个未知长度的字符串哪个字符出现的次数最多?(字符串可由字母,数字及其他字符组成)请写出代码. $str="asdfgfdas323344##$\$fdsdfg*$**$*$**$$443563536254fas";//任意长度字符串 //解法一(最快速的解法,但是基本功要扎实) $arr=str_split($str); $arr=array_count_values($arr); arsort($arr); print_r($arr); //解法二(对逻辑能力有一定要求)

R语言读取csv中的内容

1992年,R语言诞生.R语言是PC和Linux时代的产物,R语言和贝尔实验室开发的S语言类似,R支持一系列分析技术,包括统计分析.预测建模.数据可视化.在CRAN上可以找到众多的扩张包. R软件 的首选界面是命令行界面,通过编写脚本来调用相应的功能函数.同时,它也支持图形界面. R语言可以用来做数据挖掘,下面我们就用它来读取birth2.csv 中的内容. //birth2.csv ALGERIA ,36.4,14.6 CONGO ,37.3,8 EGYPT ,42.1,15.3 GHANA

R语言读取文件数据

R语言读取文件数据 ??1.read.table()函数 2.其他函数的缺省 read.csv(file, header = TRUE, sep = ",", quote="\"", dec=".",fill = TRUE, ...)read.csv2(file, header = TRUE, sep = ";", quote="\"", dec=",",fill =

C语言 读取配置文件

配置文件截图: 读取结果截图: 代码转自:http://www.tuicool.com/articles/Zb2iIn 附代码: // ReadConfig.cpp : 定义控制台应用程序的入口点. // //#include "stdafx.h" #include <stdio.h> #include <stdlib.h> #include <string.h> struct configItem { char key[20]; char valu

快速找到未知长度的单链表的中间结点

问题描述:快速找到未知长度的单链表的中间结点 普通方法:首先遍历一遍单链表,以确定单链表的长度L,然后再从头结点出发,循环L/2次,找到单链表的中间结点. 高效算法(快慢指针):设置两个指针,*search,*mid都指向单链表的头结点.其中*search指针的移动速度是*mid指针移动速度的2倍.当*search移动到链表末尾时,*mid刚好在中间结点.(标尺的思想) //快速得到单链表的中间结点 Status GetMidNode(LinkList &L,int &e){ LinkLi