int main()
{
int t
int l[10]
int c[10]
int i,line,col
scanf("%d", &t)
if (t >0 &&t <10)
{
for (i = 0i <ti++)
{
scanf("%d %d", &l[i], &c[i])
}
for (i = 0i <ti++)
{
//每组i开始的*
printf("-")
for (col = 0col <c[i]col++)
{
printf("---")
}
printf("\n")
//1行1列打印
for (line = 0line <l[i]line++)
{
printf("|")
for (col = 0col <c[i]col++)
{
printf(" |")
}
printf("\n")
printf("|")
for (col = 0col <c[i]col++)
{
printf(" |")
}
printf("\n")
printf("-")
for (col = 0col <c[i]col++)
{
printf("---")
}
printf("\n")
}
}
}
return 0
}
通过二维数组的方式进行输出,代码如下:#include<stdio.h>
#include<string.h>
char S[100][1000]={' '}//声明表为全局变量
int s1=0
void chart(int n,int a[],int m)
int main()
{
int n
int M1[40]={0},M2[40]={0},M3[40][100]={0}
int i,j,k,k1,k2,max=0,col,l
char s[30][1000]
scanf("%d",&n)
getchar()//注意,必须得有这个来接收回车符
//获得表格数据
for(i=0i<ni++)
gets(s[i])
//求最大列数
for(i=0i<ni++)
{
l=strlen(s[i])
for(j=0j<lj++)
{
if(s[i][j]==',')
M1[i]++
}
if(M1[i]>max)
{
max=M1[i]
}
}
col=++max
//求每列最大宽度 //1.先求每个单元的长度,赋给M3[i][j]中
for(i=0i<ni++)
{
l=strlen(s[i])
k=0
for(j=0j<lj++)
{
if(s[i][j]!=',')
{
M3[i][k]++
}
if(s[i][j]==',')
k++
} //for2
}//for1
//2.找每列最大的赋予M2[]
for(j=0j<colj++)
{
max=0
for(i=0i<ni++)
{
if(M3[i][j]>max)
max=M3[i][j]
}
M2[j]=max
}
//表格
chart(n,M2,col)
//输入数据
for(i=0i<ni++)
{
k1=0
k2=0
k=0
l=strlen(s[i])
for(j=0j<lj++)
{
S[2*i+1][k2+1]=s[i][j]
if(s[i][j+1]==',')
{
k1=k1+M2[k]+1
k2=k1
k++
j++
}
else
k2++
}
}
//输出表格
for(i=0i<=2*ni++)
{
for(j=0j<s1j++)
printf("%c",S[i][j])
printf("\n")
}
return 0
}
void chart(int n,int a[],int m)//行数 每列的最大长度数组
{
int i,j,k
int s
s1=m+1
for(i=0i<mi++)
s1+=a[i]
for(i=0i<=2*ni++)
{
//输出奇数行
if(i%2==0)
{
s=0
k=0
for(j=0j<s1j++)
{
if(j==s)
{
S[i][j]='+'
s+=a[k]
s++
k++
}
else
S[i][j]='-'
}//for
} //if
//输出偶数行
else
{
s=0
k=0
for(j=0j<s1j++)
{
if(j==s)
{
S[i][j]='|'
s+=a[k]
s++
k++
}
}
}
} //for
}
1、首先在电脑中,打开软件Dev-C++进入操作页面中,然后在页面中输入头文件。
2、然后接下来编写Main主函数。
3、接着定义一个变量并赋予初值,这样就可以编写printf函数语句。
4、编写完成后,在页面中找到并点击编译、链接、运行按钮。
5、这时候,如下图所示,便可有看到效果了。