使用c语言,不使用函数,不使用define,输入一个3×3的数字矩阵,并判断其中的数字是否在1到9之间,或者有重复,如果超出1到9的范围,那么输出NO,如果在范围内,并且没有重复的数字,那么输出YES
时间: 2024-09-19 19:16:04 浏览: 35
在 C 语言中,如果你不使用函数和宏定义,可以这样编写程序来实现这个功能:
```c
#include <stdio.h>
int main() {
int matrix[3][3];
int i, j, num, duplicate = 0;
// 输入3x3矩阵
printf("Enter a 3x3 matrix:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 遍历并检查每个数字
for (i = 0; i < 3 && !duplicate; i++) {
for (j = 0; j < 3; j++) {
num = matrix[i][j];
if (num < 1 || num > 9) {
printf("NO\n");
return 0;
}
for (int k = 0; k < 3 * 3; k++) { // 检查是否有重复
if (k != j && matrix[k / 3][k % 3] == num) {
duplicate = 1;
break;
}
}
}
}
// 如果所有条件都满足,输出YES
if (!duplicate) {
printf("YES\n");
}
return 0;
}
```
在这个程序中,我们首先读取用户输入的3x3矩阵,然后逐个检查每个元素。如果发现数字不在1到9的范围内或者有重复,我们就立即结束程序并输出相应的结果。如果全部通过,最后输出"YES"。
阅读全文