Triangle Wave |
In this problem you are to generate a triangular wave form according to a specified pair of Amplitude and Frequency.
Input and Output
The input begins with a single positive integer on a line by itself indicating the number of the cases following, each of them as described below. This line is followed by a blank line, and there is also a blank line between two consecutive inputs.
Each input set will contain two integers, each on a separate line. The first integer is the Amplitude; the second integer is the Frequency.
For each test case, the output must follow the description below. The outputs of two consecutive cases will be separated by a blank line.
For the output of your program, you will be printing wave forms each separated by a blank line. The total number of wave forms equals the Frequency, and the horizontal ``height'' of each wave equals the Amplitude. The Amplitude will never be greater than nine.
The waveform itself should be filled with integers on each line which indicate the ``height'' of that line.
NOTE: There is a blank line after each separate waveform, excluding the last one.
Sample Input
1 3 2
Sample Output
1 22 333 22 1 1 22 333 22 1
题目大意:
根据输入的数字m,n,画出n个相对应的三角波,由观察我们可以知道,这是有一个正三角和倒三角形形成的,所以在编程的时候,将这两部分单独画出。
另外要注意每一组数据之后,不需要多输出空行!!
CODE:
#include <stdio.h>
int main(){
int T;
int m,n;
int i,j;
scanf("%d", &T);
while(T--){
scanf("%d%d", &m, &n);
while(n--){
for(i = 1; i<=m; i++){ /*正三角形*/
for(j = 1; j<=i; j++)
printf("%d", i);
printf("\n");
}
for(i = m-1; i>0; i--){ /*倒三角形*/
for(j = 1; j<=i; j++)
printf("%d", i);
printf("\n");
}
if(n) printf("\n"); /*每个case,最后一组输出没有空行*/
}
if(T) printf("\n"); /*最后一个输出后面没有空行*/
}
return 0;
}