12345
23456
34567
45678
56789,输出这个方阵。使用do-while语句作为外循环,实现按行数循环,用while循环作为内循环,循环输出每行的5个数,但每个数据应通过计算得到,每个数据之间至少有1个空格,且要求数据左对齐。
不能使用数组
我在算法阶段就不知道该怎么设计,这个用循环该怎么做啊
以下是我的原码
#include<stdio.h>
int main()
{
int num = 0;int i=0 ;
while(1)
{
if (num == 9)
break;
if (i >= 0 && i < 4)
num++; i++;
printf("%d ", num);
if (i >= 1 && i < 5)
num++; i++;
printf("%d ", num);
if (i >= 2 && i < 6)
num++; i++;
printf("%d ", num);
if (i >= 3 && i < 7)
num++; i++;
printf("%d ", num);
switch (num)
{
case 4:
num = 5;
printf("%d\n", num);
num = num - 3; i = 1;
printf("%d ", num);
continue;
case 5:
num = 6;
printf("%d\n", num);
num = num - 3; i = 2;
printf("%d ", num);
continue;
case 6:
num = 7;
printf("%d\n", num);
num = num - 3; i = 3;
printf("%d ", num);
continue;
case 7:
num = 8;
printf("%d\n", num);
num = num - 3; i = 4;
printf("%d ", num);
case 8:
num = 9;
printf("%d\n", num);
continue;
}
/if (num >= 4 && num < 9)
{
num = num + 1;
printf("%d\n ", num);
num = num - 4; i = 0;
continue;
}
if (num == 9)
break;/
}
return 0;
}