用C语言编写:输入一窜字符,用一个数组来写,删除字符中的空格,还有分别用指针,函数写

 我来答
百度网友3881fee69
2010-12-06 · 超过29用户采纳过TA的回答
知道答主
回答量:90
采纳率:0%
帮助的人:88.9万
展开全部
以下使用数组实现的,用指针的话:只需吧char a[20];改写为:char *a;a=(char*)malloc(20*sizeof(char));别忘了加头文件#include"malloc.h"
#include"stdio.h"
#include"string.h"
main()
{
char a[20];
int i,j,len;
gets(a);
len=strlen(a);
for(i=0;i<len;i++)
{
if(a[i]==' ')
{for(j=i;j<(len-1);j++)
a[j]=a[j+1];
len--;
}
}
for(i=0;i<len;i++)
printf("%c",a[i]);
getchar();
}
jdq_37
2010-12-06 · TA获得超过996个赞
知道小有建树答主
回答量:658
采纳率:0%
帮助的人:954万
展开全部
用函数写的:
#include <stdio.h>
void f(char a[], int N)
{
int i,j;
for(i=0,j=0; i<N; i++)
{
if(a[i]!=0x20) a[j++] = a[i];
if(a[i]==0) break;
}

}
void main()
{
char a[256];
printf("Enter a string:\n");
gets(a);
f(a, 256);
puts(a);
}
用指针写的:
#include <stdio.h>
#include <stdlib.h>
void main()
{
int i,j;
char *a=(char*)malloc(256);
printf("Enter a string:\n");
gets(a);
for(i=0,j=0; i<256; i++)
{
if(a[i]!=0x20) a[j++] = a[i];
if(a[i]==0) break;
}
puts(a);
free(a);
}
楼主参考。
祝你好运!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
旧违曲5
2010-12-06 · TA获得超过1.4万个赞
知道大有可为答主
回答量:1.2万
采纳率:31%
帮助的人:7087万
展开全部
找个懂电脑的帮你吧,他们懂行
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式