
#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 30
typedef char sstring[MAXSIZE+1];
void initstr(sstring T){
int i,num;
printf("请输入要创建的顺序串的长度\n");
scanf("%d",&num);
if(num<=MAXSIZE&&num>=0){
for(i=1;i<=num;i++){
printf("请输入第%d个数 ",i);
scanf("%c",&T[i]);printf("第一个数输入成功\n");
}
}
}
void printstr(sstring T){
int i;
printf("\n当前的顺序串如下:\n");
for(i=1;i<=T[0];i++){
printf("%c",T[i]);
}
}
void strcopy(sstring T,sstring S){
int i;
T[0]=S[0];
for(i=1;i<=T[0];i++){
T[i]=S[i];
}
}
void strassign(sstring T,char* S){
int i;
T[0]=S[0];
for(i=1;i<=T[0];i++){
T[i]=S[i-1];
}
}
main(){
sstring mystr;
int num;
initstr(mystr);
printf("创建成功!\n");
printstr(mystr);
system("pause");
return 0;
}
求大神帮忙看看:为什么第一个数据的输入直接被跳过了?还有这个程序有什么别的错误吗?
