#include<
stdio.h>
#include<
stdlib.h>
long countlen(char *p)
{
long n = 0;
while(*p++ != '\0')
n++;
return n;
}
int main(void)
{
int iStrNum, i;
float fAveNum;
long* aiCharNum = NULL;
char** aacStr = NULL;
printf("%s\n", "请输入
字符串个数:");
scanf("%d", &iStrNum);
// 分配内存空间
aiCharNum = (long*)malloc(sizeof(long)*iStrNum);
aacStr = (char**)malloc(sizeof(char*)*iStrNum);
for(i=0; i<iStrNum; i++)
aacStr[i] = (char*)malloc(sizeof(char)*80);
// 输入字符串
for(i=0; i<iStrNum; i++)
{
printf("请输入第 %d 个字符串:\n", i + 1);
scanf("%s", aacStr[i]);
// 将每个字符串的长度存入数组
aiCharNum[i] = countlen(aacStr[i]);
//printf("字符串长度为:%d\n", aiCharNum[i]);
}
// 求字符串平均长度
fAveNum = 0.0;
for(i=0; i<iStrNum; i++)
fAveNum += aiCharNum[i];
fAveNum /= iStrNum;
printf("字符串平均长度为:%.2f\n", fAveNum);
// 释放内存空间
for(i=0; i<iStrNum; i++)
free(aacStr[i]);
free(aacStr);
free(aiCharNum);
return 0;
}