C语言,如题显示Declaration syntax error,该怎样改正?

来源:百度知道 编辑:UC知道 时间:2024/06/07 07:18:47
#include <stdio.h>
void convert (char*)
main
{char str[80];
printf ("please input string:\n");
gets (str);
convert (str);
puts (str);
}
void convert (char*str)
{int flag=0,i=0;
while (*(str+i)!='\0')
{if (*(str+i)==' ')
flag=0;
else
{flag=1;
if (*(str+i)>='a'&&*(str+i)<='z')
*(str+i)=*(str+i)-32;
}
i++;
}
}

#include <stdio.h>
void convert (char*) ;/*注意这里*/
void main(void) /*注意这里*/
{char str[80];
printf ("please input string:\n");
gets (str);
convert (str);
puts (str);
}
void convert (char*str)
{int flag=0,i=0;
while (*(str+i)!='\0')
{if (*(str+i)==' ')
flag=0;
else
{flag=1;
if (*(str+i)>='a'&&*(str+i)<='z')
*(str+i)=*(str+i)-32;
}
i++;
}
}

英文提示的意思是(声明语法错误)
声明部分结束时要加上分号
下面是我修改后的程序
#include <stdio.h>
void convert (char*);
main()
{char str[80];
printf ("please input string:\n");
gets (str);
convert (str);
puts (str);
}
void convert (char*str)
{int flag=0,i=0;
while (*(str+i)!='\0')
{if (*(str+i)==' ')
flag=0;
else
{flag=1;
if (*(str+i)>='a'&&*(str+i)<='z')