如图的程序该怎么写?在C语言环境下
来源:学生作业帮助网 编辑:六六作业网 时间:2024/12/21 08:57:11
如图的程序该怎么写?在C语言环境下
如图的程序该怎么写?
在C语言环境下
如图的程序该怎么写?在C语言环境下
#include
#define N 9
void main()
{
char list[N],
times=-1; //计时器,决定每一行的前几个元素为空,即不现实可见的元素.
for(int i=0;i!=N;++i) //为数组里每个元素赋值,
list[i]=i+1;
while(times!=N+1) //显示内容,由times决定输出第几行的内容,times从-1开始计算
{
for(int x=0;x!=N;++x)
{
if(times==-1)
printf(" %d",list[x]);
else if(times==0)
printf("---"); //前两行为特殊内容
else
{ //times为1即开始执行此段程序
for(int y=1;y!=times;++y)
list[y-1]=NULL; //决定每行的为空元素.times为1时,无元素为空,times为2时
//第一个为空,times为3时,前两个元素为空
if((list[x]*times)/10==0 &&list[x]==NULL) //因为list数组为char,必须用%c放方可显示
//不可见的空元素,所以当list[X]==NULL时
//用%c 当list[x] != NULL时用%d显示数字
printf(" %c",list[x]*times);
else if((list[x]*times)/10==0 &&list[x] !=NULL) //当list[x]的内容为单数时,前面加一个“ ”,
//双数加两个“ ”
printf(" %d",list[x]*times);
else if((list[x]*times)/10!=0 &&list[x]==NULL)
printf(" %c",list[x]*times);
else if((list[x]*times)/10!=0 &&list[x] !=NULL)
printf(" %d",list[x]*times);
}
}
printf("\n");
times++;
}
}