C语言输入的第一行包含一个整数T,表示有T组数据。每组数据包含两个整数n m表示表格的行数与列数数。

求大神指教

输入的第一行包含一个整数T,表示有T组数据。每组数据包含两个整数n (1<=n<=16), m (1<=m<=16), 分别表示表格的行数与列数数。

Output

对于每组数据,输出一个表格。’+’表示行与列的相交处。’-’表示水平线,’|’表示垂直线,’ ’表示一个空格.

Sample Input

2
1 1
2 3

Sample Output

+--+
| |
| |
+--+
+--+--+--+
| | | |
| | | |
+--+--+--+
| | | |
| | | |
+--+--+--+

#include

#include

void pt_(int x){

int i;

for(i=0;i printf("+--");

printf("+");

}

void ptspace(int x){

int i;

for(i=0;i printf("|");

printf("|");

}

int main(){

int T,n,m,i;

scanf("%d",&T);

while(T--){

scanf("%d%d",&n,&m);

for(i=0;i pt_(m);

ptspace(m);

ptspace(m);

}

pt_(m);

}

return 0;

}

扩展资料:

include用法:

#include命令预处理命令的一种,预处理命令可以将别的源代码内容插入到所指定的位置;可以标识出只有在特定条件下才会被编译的某一段程序代码;可以定义类似标识符功能的宏,在编译时,预处理器会用别的文本取代该宏。

插入头文件的内容

#include命令告诉预处理器将指定头文件的内容插入到预处理器命令的相应位置。有两种方式可以指定插入头文件:

1、#include&lt;文件名&gt;

2、#include"文件名"。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-30
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
void pt_(int x){
    for(int i=0;i<x;i++)
        printf("+--");
    puts("+");
}
void ptspace(int x){
    for(int i=0;i<x;i++)
        printf("|  ");
    puts("|");
}
int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i=0;i<n;i++){
            pt_(m);
            ptspace(m);
            ptspace(m);
        }
        pt_(m);
    }
    return 0;
}

追问

嗯,,运行是对的,但是有没有C的..C++还没学到~~

追答

要C的很好改的,下面是在C语言下编译通过的(其实没多大改动):

#include<stdio.h>
#include<string.h>
void pt_(int x){
    int i;
    for(i=0;i<x;i++)
        printf("+--");
    printf("+\n");
}
void ptspace(int x){
    int i;
    for(i=0;i<x;i++)
        printf("|  ");
    printf("|\n");
}
int main(){
    int T,n,m,i;
    scanf("%d",&T);
    while(T--){
        scanf("%d%d",&n,&m);
        for(i=0;i<n;i++){
            pt_(m);
            ptspace(m);
            ptspace(m);
        }
        pt_(m);
    }
    return 0;
}

本回答被网友采纳
第2个回答  2015-11-30
如果单独去掉第一行或者最后一行,就可以看出,这是一个循环结构,循环模拟一下就可以了。
相似回答