#include
int main()
{
int i,j,m,n;
//char a[m][n];
printf("请输入行和列:\n");
scanf("%d,%d",&i,&j);
printf("\n");
char a[i][j];
for(m=0;m<i;m++)
{
if(m==0||m==i-1)
for(n=0;n<j;n++)
a[m][n]='*';
else
for(n=0;n<j;n++)
{
if(n==0||n==j-1)
{
a[m][0]='*';
a[m][j-1]='*';
}
else a[m][n]=' ';
}
for(m=0;m<i;m++)
{
for(n=0;n<j;n++)
printf("%c",a[m][n]);
printf("\n");
}
}
return 0;
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
数组大小必须是常量,所谓常量,就是编译器能从你代码中直接确定大小。
和放在输入前输入后没关系。你的代码还是要运行的时候才能知道大小。
那么只能动态分配,用new。