解题思路:
利用二维数组,简化操作过程
注意事项:
两个数组共用一个行
参考代码:
#include<stdio.h>
int main(){
int a;
scanf("%d",&a);
while(a--){
int d,b,j,k;
scanf("%d%d",&d,&b);
char c[100][100];
for(int i=0;i<b;i++){//重复次数
for(j=0;j<d;j++){
for(k=0;k<d;k++){//二位数组赋值
if(j==k||j+k==d-1)c[j][k]='X';
else c[j][k]=' ';
}
}
for(j=0;j<d;j++){
if(i!=b-1&&j==d-1)break;//如果没有到最后一遍重复的最后一行,上一个数组就只执行d-1行
for(k=0;k<d;k++){
printf("%c",c[j][k]);
}
printf("\n");
}
}
printf("\n");
}
}
0.0分
0 人评分
C语言训练-求1+2!+3!+...+N!的和 (C语言代码)浏览:2469 |
Tom数 (C++代码)浏览:829 |
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:843 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:662 |
【计算球体积】 (C语言代码)浏览:1113 |
三角形 (C语言代码)浏览:923 |
蛇行矩阵 (C语言代码)浏览:536 |
a+b浏览:433 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:564 |
C语言程序设计教程(第三版)课后习题11.1 (C语言代码)浏览:489 |