实现函数输出一个实心的字符矩形,定义并调用函数matrix(length, width, ch),它的功能是在屏幕上显示行数为width、列数为length,由字符ch组成的实心矩形图案。
函数接口定义:
void matrix(int length, int width, char ch);
其中length是矩阵的长度,width是矩阵的宽度,ch是输出的字符,要求函数按照如样例所示的格式,打印出行数为width、列数为length,由字符ch组成的实心矩形图案。
#include <stdio.h>
void matrix(int length, int width, char ch){
int i, j;
for(i=1; i<=width; i++){
for(j=1; j<=length; j++){
printf("%c", ch);
}
printf("\n");
}
}
int main(){
int length = 5, width = 3;
char ch = '*';
matrix(length, width, ch);
return 0;
}
#include <stdio.h>
void matrix(int length, int width, char ch) {
for (int i = 1; i <= width; i++) { // 遍历矩形的行
for (int j = 1; j <= length; j++) { // 遍历矩形的列
if (i == 1 || i == width || j == 1 || j == length) { // 如果是矩形边界,则输出字符
printf("%c", ch);
} else { // 否则输出空格
printf(" ");
}
}
printf("\n"); // 换行到下一行
}
}
int main() {
matrix(6, 4, '#'); // 调用函数输出一个行数为4,列数为6,由#符号组成的矩形
return 0;
}
函数 matrix() 中,第一个循环遍历矩形的行,第二个循环遍历矩形的列,判断当前点是不是矩形的边界,如果是则输出指定的字符,否则输出空格。最后调用函数输出一个行数为 4,列数为 6,由 # 符号组成的矩形。