求高手讲解一下这个C语言程序。。。

楼主你好。这个函数的作用是将数组r[]中存储的浮点字符串转换成浮点字符串,将结果赋给sumc变量,返回给sumc。

以下是节目的评论。

浮点c()

{

浮动sumc//定义存储结果的浮点变量。

char k[20],I = 0;//定义一个用于存储临时变量的字符数组k[]和一个用于定位K数组中元素的循环变量I。

While (isdigit (r[n]) || r [n] = ' . ')//如果r [n]中存储的字符是浮点数的一部分,

{

While (isdigit (r [n]) || r [n] = = ',')//这句话的意思同上。

k[i++]= r[n++];//将r[]中的每个浮点字符逐个赋值给k[]。

k[I]= ' \ 0 ';//在循环结束后,为k的最后一个位置设置字符串结束标志。

sumc = atof(k);//将字符串k[]中的字符转换成浮点数,并将结果赋给sumc。

}

返回sumc//返回sumc作为结果

}

另外,其实函数是这样写的。第一个while循环是多余的。

浮点c()

{

浮动sumc

char k[20],I = 0;

while(isdigit(r[n])||r[n]== ',')

k[i++]= r[n++];

k[I]= ' \ 0 ';

sumc = atof(k);

返回sumc

}