输入一段文本,将文本中的所有单词,存放到一个字符串数组中。(要求占用内存最少)
来源:互联网 发布:收银软件 编辑:程序博客网 时间:2024/04/28 21:19
输入一段文本,将文本中的所有单词,存放到一个字符串数组中。(要求占用内存最少)
// 文本
getchar();
char str[200]= {0};
printf(“请输入一个文本以回车结尾”);
scanf(“%[^\n]”,str);
printf(“%s”,str);
// 用于存储单词的字符指针数组
char *str2[20] = {0};
// 计数器 用于记录空格和\0的下标
int count_3 = 0;
// 遍历文本找到空格和\0的下标
for (int i = 0 ; i < strlen(str)+1; i++) {
if (str[i]==’ ‘|| str[i]==’\0’|| str[i] == ‘,’) {
count_3++;
}
}
// 通过下标数量开辟两个数组用于存储 下标值和单词大小
int *array_3 = malloc(count_3*4);
// 存储下标差值
int *result = malloc(count_3*4);
// 计数器2 用于给下标数组赋值
int n = 0;
// 遍历数组找出下标
for (int i = 0; i < strlen(str)+1; i++) {
if (str[i]==’ ‘|| str[i]==’\0’|| str[i] == ‘,’) {
array_3[n] = i;
n++;
}
}
printf(“\n”);
// 遍历数组求出下标差值
for (int i = 0; i < count_3; i++) {
if (i==0) {
result[i] = array_3[i];
}else{
result[i] = array_3[i]-array_3[i-1];
}
}
// 通过差值给字符指针数组开辟空间
for (int i = 0; i < count_3; i++) {
str2[i] = malloc(result[i]+1);
}
// 用于存储单词变量
char temp[20] = {0};
// 计数器 用来给临时存储变量赋值
int k = 0;
// 计数器 用来表示str2下标
int j = 0;
for (int i = 0; i < strlen(str)+1; i++) {
if (str[i] != ’ ‘&& str[i] != ‘\0’ && str[i] != ‘,’) {
temp[k] = str[i];
k++;
}else{
temp[k] = ‘\0’;
strcpy(str2[j], temp);
j++;
k = 0;
}}// 因为第一个值不好计算长度..直接调用所以这里输出单词长度时少1,在这里补一个.result[0] = result[0]+1;// 打印输出 数组for (int i = 0 ; i < count_3; i++) { printf("第%d个单词:%s,大小为%d\n",i+1,str2[i],result[i]-1);}
- 在控制台输入一段文本,将文本中的所有单词,存放到一个字符串数组中。 ( 要求占用内存最少)
- 输入一段文本,将文本中的所有单词,存放到一个字符串数组中。(要求占用内存最少)
- 有一段文本,将文本中的所有单词,存放到一个字符串数组中。(要求占用内存最少)
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- 有一段文本,将文本中的所有单词存放到一个字符串数组中
- // 2、有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- (详版, 无bug版)有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- 3、有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
- 有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
- (无bug版)有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)。
- (指针版,无bug版)有一段文本,将文本中的所有单词,存放到一个字符指针数组中(要求每个单词内存恰好)
- myeclipse运行applet乱码问题
- 集群通信组件tribes之集群的平行通信
- Sitemesh和Struts2结合时Filter的配制顺序
- Struts2源码分析
- Eclipse,MyEclipse代码自动提示功能设置
- 输入一段文本,将文本中的所有单词,存放到一个字符串数组中。(要求占用内存最少)
- spring AspectJ的Execution表达式-备忘笔记(转)
- 马来西亚外劳市场现状
- (9)unity入门,同步、网络。发布
- hdoj 2767 Proving Equivalences 【有向图 增加最少的边使图强连通】
- 解决HttpServletResponse输出的中文乱码问题
- 开发人员写博客的七个理由——既然要一直走下去,就给自己一个好的开始
- 一个简单的php注册界面
- 九度oj 1043