一个错误代码,编译没问题,请请你分析并画出 执行后的结果;

Mr_XXVitaa 2016-11-05 10:36:40
但是
我写的 编译出了问题n=7;


#include<stdio.h>
void main()
{
int i,j,k,m,n,p;

for (i=0;i<7;i++)
{
if (i<4)
{
for (j=0;j<4-i;j++)
{
printf(" ");
}
for (k=0;k<2*i+1;k++)
{
printf("*");
}
}
else
{
for (m=0;m<i-3;m++)
{
printf(" ");
}
n=7;
for(p=0;p<n-2;p++)
{
printf("*");
}
}
else
{
for(m=0;m<i-3;m++)
{
printf(" ");
}
n-7;
for(p=0;p<n-2;p++)
{
printf("*");
n=n-2;
}
}
printf("\n");
}
}
...全文
138 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mr_XXVitaa 2016-11-05
  • 打赏
  • 举报
回复
编译不通过,,怎么改正??
Mr_XXVitaa 2016-11-05
  • 打赏
  • 举报
回复
就是 有错误,。。但是能运行。
Mr_XXVitaa 2016-11-05
  • 打赏
  • 举报
回复
答非所问,,,,这些我懂,我就一个错误,能解决吗?
paschen 2016-11-05
  • 打赏
  • 举报
回复
你给的程序编译通不过,整个程序里就只有一个if怎么会有两个else
ck2333 2016-11-05
  • 打赏
  • 举报
回复 1
给你讲下你存在的几个问题: 1.没有注释,程序的可读性很低,你这一直在循环,程序出了点什么问题回头看就得花很多时间,学会用注释是每个程序员必备的。 2.你的主函数不能是void型,改成int型,并且在最后面加上return 0;(void main()表示main函数不会处理返回的数值,调用者不能利用任何main函数返回的数值信息,main程序以return;或exit();或不写返回语句结尾。int main()表示main函数应当返回一个整型的数据,可以用它描述运行状态,比如是否正常运行结束。main程序以return 0;或exit(0);结尾,当然这语句中的0可以换成变量取值或其他整型常量返回。一般编译器在你的main函数前面没有发现描述,如main()时默认就是int main(),而你主程序中没有发现return 0;之类的返回语句时,会给出警告信息提示应当返回一个有效的整数。)。 3.一个if只能和一个else对应(可以理解为:要么这样,要么那样,二选一)。
paschen 2016-11-05
  • 打赏
  • 举报
回复

void main()
{
	int i,j,k;
	for(i=1;i<=4;i++)
	{
		for(j=1;j<=4-i;j++)
			printf(" ");
		for(k=1;k<2*i;k++)
			printf("*");
		printf("\n");
	}
	for(i=1;i<=3;i++)
	{
		for(j=1;j<=i;j++)
			printf(" ");
		for(k=6-2*i;k>=0;k--)
			printf("*");
		printf("\n");
	}
}
Mr_XXVitaa 2016-11-05
  • 打赏
  • 举报
回复
那怎么让他能编译?正常运行?
paschen 2016-11-05
  • 打赏
  • 举报
回复
引用 4 楼 qq_36370998 的回复:
就是 有错误,。。但是能运行。
不能编译又何谈能运行?

69,322

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧