|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 问下数组及字符串的输入!!望解答!
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
751
人关注过本帖
标题:
问下数组及字符串的输入!!望解答!
只看楼主
加入收藏
雪山的猫
等 级:
新手上路
帖 子:44
专家分:5
注 册:2012-12-23
结帖率:
95.24%
楼主
收藏
已结贴
√
问题点数:20 回复次数:14
问下数组及字符串的输入!!望解答!
我最近看谭浩强的c语言书,我发现对于数组(字符串)的输入必须先定义其大小才可以!。
问题来了,我想实现输入任意(长度和内容)的数或字符,并输出它以及计算出字符长度(不包含空的字符,实际占位长度)。例:输入“fdsfsfsd”;输出“fdsfsfsd, strlen (a)=8”.此程序还可以实现 输入:“fdfdf”;输出:“fdfdf, strlen (a)=5”.
我是看完他书都不知道该如何去实现,希望大家帮下我!!!谢谢了!
搜索更多相关主题的帖子:
字符串
fdfdf
如何
2013-01-21 11:07
举报帖子
使用道具
赠送鲜花
peach5460
来 自:武汉
等 级:
贵宾
威 望:
30
帖 子:2780
专家分:6060
注 册:2008-1-28
第
2
楼
收藏
得分:0
用指针
我总觉得授人以鱼不如授人以渔...
可是总有些SB叫嚣着:要么给代码给答案,要么滚蛋...
虽然我知道不要跟SB一般见识,但是我真的没修炼到宠辱不惊...
2013-01-21 11:08
举报帖子
使用道具
赠送鲜花
lz1091914999
来 自:四川
等 级:
贵宾
威 望:
37
帖 子:2011
专家分:5959
注 册:2010-11-1
第
3
楼
收藏
得分:0
1、你可以把数组弄大一点。
2、用malloc
My life is brilliant
2013-01-21 11:49
举报帖子
使用道具
赠送鲜花
rjsp
等 级:
版主
威 望:
528
帖 子:9025
专家分:54030
注 册:2011-1-18
第
4
楼
收藏
得分:0
可以分段存储嘛,比如用链表
随便举个例子
比如先在链表中增加一个char[10],读最多10个字符,如果还没借宿,再在链表中增加一个char[10],读接下来的10个字符……
不过,C语言的标准库太少,这些都得自己写
2013-01-21 12:04
举报帖子
使用道具
赠送鲜花
雪山的猫
等 级:
新手上路
帖 子:44
专家分:5
注 册:2012-12-23
第
5
楼
收藏
得分:0
楼上的,我很感谢你们来围观,但我还是要说些件事:
第一,这不是题,是我自学时突发的想法。
第二,对于数组的定义,如:char[10],那你输入的字符只要在十以内,strlen[a]永远是等于10的。无法达到我列的例子上的效果。
第三,指针我有想过,但不知如何实现。所以才发帖求解答!!!
2013-01-22 11:18
举报帖子
使用道具
赠送鲜花
globc
等 级:
论坛游民
帖 子:15
专家分:12
注 册:2013-1-20
第
6
楼
收藏
得分:0
C语言里用动态分配内存的链表可以基本实现,楼主注意strlen和sizeof的区别。
2013-01-22 13:18
举报帖子
使用道具
赠送鲜花
XQwindow
等 级:
论坛游民
帖 子:121
专家分:64
注 册:2013-1-1
第
7
楼
收藏
得分:0
额,试了试,不会
我不知道我能否当程序员,但我依然热爱编程!
2013-01-22 13:30
举报帖子
使用道具
赠送鲜花
schenxi
等 级:
新手上路
帖 子:3
专家分:7
注 册:2013-1-21
第
8
楼
收藏
得分:5
大概意思就是下面这样,想要完善自己追加语句吧
#include <stdio.h>
#include <string.h>
int main(void)
{
char *ch;
while(gets(ch)!=NULL&&ch[0]!='\0')
printf("the length is %d\n",strlen(ch));
return 0;
}
2013-01-22 13:38
举报帖子
使用道具
赠送鲜花
魍丶紫
来 自:浙江台州
等 级:
论坛游民
帖 子:6
专家分:21
注 册:2013-1-19
第
9
楼
收藏
得分:5
额 首先6楼说的没错 楼主要知道strlen和sizeof的区别
至于malloc 是指程序员申请在静态区的大小为(这个可以让用户定)的空间
例
#include<stdio.h>
#include<stdlib.h>//malloc函数是在stdlib.h库里的
int main(){
int n;
char*p;
printf("输入字符串长度");
scanf("%d",&n);
p=(char*)malloc(sizeof(char)*(n+1));//多出来的1是为了存放'\0'
printf("输入字符串");
scanf("%s",p);
printf("%s strlen(a)=%d",p,n);
free(p);//最后要记得释放空间 因为这块空间是在静态区域的 而且是程序员自己申请的 所以也要自己释放
}
不过用malloc还是和楼主的要求有些不符 因为它必须要先知道字符串有多大
所以就我所学 还是定义一个较大的数组比较符合要求
红颜色
我已没有勇气问你 离开的理由
2013-01-22 13:52
举报帖子
使用道具
赠送鲜花
青春无限
来 自:江苏
等 级:
贵宾
威 望:
24
帖 子:3452
专家分:19340
注 册:2012-3-31
第
10
楼
收藏
得分:0
支持
学 会看代码…学习写程序…学会搞开发…我的目标!呵呵是不是说大话啊!!一切皆可能
!
2013-01-22 14:29
举报帖子
使用道具
赠送鲜花
15
1/2页
1
2
快速回复:
问下数组及字符串的输入!!望解答!
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.066748 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved