#include<stdio.h>
#define 20 N//N与20颠倒了
viod main()//void 写错了
{
void sc(char[],int);
char m[N];
int n;
printf("Data:");
gets(m);
printf("num\n");
scanf("%c",&n);//n声明的是interesting型不能用%c控制输出
sc(m,n);
puts(m);
}
void sc(char k[],int i)
{
while(k[i]!='\0')
{
int t;//变量声明最好放在函数体的开头
do{
k[i]=k[i+1];
t=i++;
}while(t=N);//=是赋值号,==才是等于号
}
}
sc函数有逻辑、语法错误;正确的如下:
#include<stdio.h>
#define N 20
void main()
{
void sc(char[],int);
char m[N];
int n;
printf("Data:");
gets(m);
printf("num\n");
scanf("%d",&n);
sc(m,n);
puts(m);
}
void sc(char k[],int i)
{
while(k[i]!='\0')
{
do{
k[i]=k[i+1];
i++;
}while(i!=N-1);
}
puts(k);
}
注意数组中只能储存19个字符,超过19程序不能运行;且必须要输19个字符;