由键盘输入任意一个自然数 N ,输出如下图:形如“沙漏”的由数字组成的图形。
2条回答 默认 最新
- 快撑死的鱼 2023-02-11 16:24关注
回答不易 求求您采纳点赞哦 感激不尽
用程序来构建如下图形,首先初始化一个N x N的字符数组,并将所有单元格设置为字符空格。接下来,从中心开始向四周绘制数字,以把所有的单元格都填满,形成如下图形。
#include <stdio.h> int main(void) { int n; printf("Input N:\n"); scanf("%d", &n); char arr[n][n]; int i, j; for(i=0; i<n; i++) { for(j=0; j<n; j++) { arr[i][j] = ' '; } } int startRow = 0; int startCol = 0; int number = 1; while(number <= (2*n-1)) { if(number <= n) { for(i=startRow; i<(n-startCol); i++) { arr[i][startCol] = (char)(number + 48); } startCol++; } else { for(i=startCol; i<(n-startRow); i++) { arr[n-startRow-1][i] = (char)(number + 48); } startRow++; } number++; } for(i=0; i<n; i++) { for(j=0; j<n; j++) { printf("%c", arr[i][j]); } printf("\n"); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
- ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
- ¥15 cmd cl 0x000007b
- ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
- ¥500 火焰左右视图、视差(基于双目相机)
- ¥100 set_link_state
- ¥15 虚幻5 UE美术毛发渲染
- ¥15 CVRP 图论 物流运输优化
- ¥15 Tableau online 嵌入ppt失败
- ¥100 支付宝网页转账系统不识别账号