c - 是否可以在声明为 int a[10][10] 的二维数组中放置一个字符 ( * )?
问题描述
或者是否可以使用二维数组打印给定的图案,n=4。
432*
43*1
4*21
*321
解决方案
是否可以在声明为 int a[10][10 的二维数组中放置一个字符( * )
是与否
是的,怎么做? 使用字符数组
char nArray[10][10];
int i = 0;
for (; i < 10; ++i)
nArray[i][i] = '*';
如果您想将 char 转换为 int,您可以轻松地做到这一点。
不,如果你想使用int
数组。但是有一些方法可以解决它。
int nArray[10][10];
int i = 0;
for (; i < 10; ++i)
nArray[i][i] = '-1';
当你打印这个时,你会使用这样的东西:
int i = 0;
for (; i < 10; ++i) {
int j = 0;
for (; j < 10; ++j) {
if (nArray[i][j] == -1)
printf ("*")
else
printf ("%d", nArray[i][j]);
}
}
推荐阅读
- php - CodeIgniter\Database\MySQLi\Builder 类的对象无法转换为字符串
- html - 如何取消选择 Html 中的关闭图标按钮
- python - 使用日期时间戳比较文件夹 - Python
- html - CSS动画延迟在动画开始之前没有延迟
- bash - 在 bash 脚本中使用 while read,do Loop 来解析命令行输出
- ios - SwiftUI Stepper - 不提交对视图或环境对象的更改
- if-statement - 我怎样才能在谷歌表格中实现这种转变?
- node.js - 不熟悉的 Node.js express 路由器格式
- css - 如何在材质ui中为网格项添加新行?
- javascript - Chart js自定义单独图例单击图例时返回错误