雨落鸢城 2019-01-07 20:05 采纳率: 0%
浏览 437

c语言 将一个乱七八糟的char类型数组取平均值与标准差

这是一个程序中的一部分,有一个很大的.csv数据文件,我可以调用其中的任意一行的内容,可是数据是以char类型进行存储的,而且每行开始都有一个编号(例如ENSG0001)而且由于csv文件的特性每一个数据后面都有一个逗号,我试着用ASCII将它们都消掉了可是这时我通过记录消掉多少逗号判断有多少数时出了问题,而且我也不太清楚怎么将数组中的数据求和,程序中的很多知识我都是从网上搜到,个人水平实在是有一点低了。麻烦哪位好心人能帮一下忙。
谢谢了。
//#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
int getFilelen(FILE * file)//2.2.0----getfile...函数---- 主要是做逐行读取功能并记录行数
{
int len = 0;//2.2.1---定义了一个len=0其意义暂时不知----
int plus=0,i,j,k;//....
float f;
int q,w;
char e[2200];
float r;
if (file == NULL)
{
return -1;//2.2.2如果文件为空(或不存在??????????)直接结束
}
char buf[2200];//2.2.3定义一个大小为1024的一维数组(1024有无特殊含义???????)
//读取每一行
printf("请输入你要找第几种RNA(第几行的):");
scanf("%d",&q);
while (fgets(buf, 2200, file) != NULL)//2.2.4---- 将fp中的内容按1024字节大小读入text中,然后输出。直到读到fp的末尾,为空了。停止读取,然后关闭文件。 -----解释了1024的问题
{
len++;
if(len>q)
{
printf("第%d种RNA\n",q-1);
goto w;
}

}

w: //printf("%s ",buf);
strcpy(e, buf);
puts(e);
printf("\n");
// r = atof(e);
// printf("\n%d",r);
for(j=i=0;e[i];i++)

    if(e[i]>='a' && e[i]<='z' || e[i]>='A' && e[i]<='Z'){e[i]=32;}       

for(j=i=0;e[i];i++)

if(e[i]>='+'&&e[i]<='-')
{
e[i]=32;
}
printf("%s",e);

//sscanf(e,"%d%*s",n);
// printf("%d",n);
return len;//2.2.6----返回len----此时回到77行继续运行程序
}

void freeSpace(char ** pArray, int len)//不用想了,释放空间,翻译一下就出来了
{
if (pArray == NULL || len == NULL)
{
return;
}
for (int i = 0; i < len; i++)
{
if (pArray[i] != NULL)
{
free(pArray[i]);
pArray[i] = NULL;
}
}
}//回81行
int test01()//2.1.0----test01函数,整个程序的主体部分(之后的\n和system只是辅助,显示的好看一些,没有什么意义) -----此函数意义仍为一个目录,具体操作在其他函数中
{
FILE * file = fopen("transcript_rna_tissue.csv", "r");//2.1.1打开文件,如果不存在或者打不开的话输出72内容,结束程序。
if (file == NULL)
{
printf("打开文件失败!\n");
return 0;
}
int len= getFilelen(file);//2.1.2----定义(调用)函数get...-----程序跳转至第5行

}

int main()
{
test01();
}//结束

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-09 15:26
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥20 Python安装cvxpy库出问题
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误
  • ¥15 python天天向上类似问题,但没有清零
  • ¥30 3天&7天&&15天&销量如何统计同一行
  • ¥30 帮我写一段可以读取LD2450数据并计算距离的Arduino代码
  • ¥15 C#调用python代码(python带有库)
  • ¥15 活动选择题。最多可以参加几个项目?
  • ¥15 飞机曲面部件如机翼,壁板等具体的孔位模型
  • ¥15 vs2019中数据导出问题