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
代码:
#include <stdio.h>
int main() { int n; int max,count; int i,j,k,p; scanf("%d",&n); while(n--) { scanf("%d%d",&max,&count); for(j=1;j<=count;j++) { for(k=1;k<=max;k++) { for(p=1;p<=k;p++) printf("%d",k); printf("\n"); } for(k=max-1;k>=1;k--) { for(p=1;p<=k;p++) printf("%d",k); printf("\n"); } if((n!=0)||(n==0&&j!=count)) printf("\n"); } } return 0; }
一定要注意换行!!!
大体是这个意思:
根据输入画出三角波型, 第一行读入的是 case 数; 每个 case 包含两行, 第一行是三角形的振幅/高度, 第二行是三角形重复的次数. 不同输入 case 之间使用空行进行分隔. 输出的波形也需使用空行进行分隔.