主题:[原创]我编了个程序 请大家帮我看看 都有那些不足 谢谢了
#include<stdio.h>
#include<malloc.h>
#include<stdlib.h>
#define MAX 3
struct ARR
{
char * Arr;
int size;
} ;
void cchar(struct ARR * p)
{
int len;
char m;
int i;
int j;
printf("请输入你需要的串的长度:");
scanf("%d",&len);
p->Arr=(char *)malloc(sizeof(char)*MAX);
p->size=len;
for(i=0;i<len;i++)
{
fflush(stdin);
printf("请输入第%d个字符:",i+1);
scanf("%c",&m);
p->Arr[i]=m;
}
printf("\n");
printf("您输入的串为:");
for(j=0;j<len;j++)
printf("%c",p->Arr[j]);
printf("\n");
}
void clj(struct ARR * p,struct ARR * q)//合并串
{
int i;
for(i=0;i<q->size;i++)
p->Arr[p->size+i]=q->Arr[i];
p->size=p->size+q->size;
for(i=0;i<p->size;i++)
{
printf("%c",p->Arr[i]);
}
printf("\n");
}
int main()
{
struct ARR A;
struct ARR B;
cchar(&A);
cchar(&B);
clj(&A,&B);
return 0;
}
#include<malloc.h>
#include<stdlib.h>
#define MAX 3
struct ARR
{
char * Arr;
int size;
} ;
void cchar(struct ARR * p)
{
int len;
char m;
int i;
int j;
printf("请输入你需要的串的长度:");
scanf("%d",&len);
p->Arr=(char *)malloc(sizeof(char)*MAX);
p->size=len;
for(i=0;i<len;i++)
{
fflush(stdin);
printf("请输入第%d个字符:",i+1);
scanf("%c",&m);
p->Arr[i]=m;
}
printf("\n");
printf("您输入的串为:");
for(j=0;j<len;j++)
printf("%c",p->Arr[j]);
printf("\n");
}
void clj(struct ARR * p,struct ARR * q)//合并串
{
int i;
for(i=0;i<q->size;i++)
p->Arr[p->size+i]=q->Arr[i];
p->size=p->size+q->size;
for(i=0;i<p->size;i++)
{
printf("%c",p->Arr[i]);
}
printf("\n");
}
int main()
{
struct ARR A;
struct ARR B;
cchar(&A);
cchar(&B);
clj(&A,&B);
return 0;
}