程序在VC6中不能输出结果

来源:百度知道 编辑:UC知道 时间:2024/05/15 18:40:40
程序如下:
insert(char str[])
{
int i;
i=strlen(str);
while(i>0)
{
str[2*i]=str[i];
str[2*i-1]='*';
i--;
}
printf("%s\n",str);
}
main()
{
char str[40];
scanf("%s",str);
insert(str);
}
提示:
1.cpp(4) : error C2065: 'strlen' : undeclared identifier
1.cpp(11) : error C2065: 'printf' : undeclared identifier
1.cpp(12) : warning C4508: 'insert' : function should return a value; 'void' return type assumed
1.cpp(16) : error C2065: 'scanf' : undeclared identifier
1.cpp(18) : warning C4508: 'main' : function should return a value; 'void' return type assumed
提示是什么意思?这个程序应该怎样改才能运行,哪位高手帮帮忙

没有include头文件
去MSDN里找一下那些函数的头文件,另外main函数必须指定返回类型
比如:
void main()
{
....
}
或者
int main()
{
..........
return 0;//返回值自己定义0和1比较常用
}

#include<stdio.h>
#include<string.h>
void insert(char str[])
{
int i;
i=strlen(str);
while(i>0)
{
str[2*i]=str[i];
str[2*i-1]='*';
i--;
}
printf("%s\n",str);
}
void main()
{
char str[40];
scanf("%s",str);
insert(str);
}
上面可以解决你上面的问题但是你程序逻辑有没有问题就没有注意了你自己看看吧主要是你少了头文件

#include<stdio.h>
#include<string.h>
在程序前面加上这两句,然后才可以使用strlen、printf、scanf这几个函数。定义的函数不返回值的话,在前面加上void

你是不是没有加进头文件啊?而且insert函数没有声明类型