arrays - 如果条件触发 char
问题描述
我编写了一个代码以矩阵形式打印转置的二维数组。为此,我添加了一个条件,如果用户输入的数组维度小于“1”,它将打印“无效维度”并退出。但是当我输入一个字符时,就会触发这个条件。谁能解释为什么会这样?
#include<stdio.h>
#include<stdlib.h>
int main(){
int i,j,arr[10][10],n,n1;
printf("Enter the dimensions of the array\n");
scanf("%d",&n);
scanf("%d",&n1);
if(n<1||n1<1){
printf("Invalid dimension\n");
exit(0);
}
else
printf("Enter the elements for matrix\n");
for(i=0;i<n;i++){
for(j=0;j<n;j++){
scanf("%d",&arr[i][j]);
}
}
printf("Printing matrix\n");
for(i=0;i<n1;i++){
for(j=0;j<n;j++){
printf(" %d ",arr[j][i]);
}
printf("\n");
}
}
解决方案
推荐阅读
- reactjs - 如何允许用户保存输入以供进一步审查
- typescript - 使用 TypeORM 和带有文件夹路径的 Typescript 时出错
- c++ - 如何从指针的指针向量中获取指针值?
- tensorflow - 如何为时间序列异常检测提供这个 LSTM-AE?
- javascript - PostMan 将 JSON post 请求中的空正文发送到 Express 服务器
- python - 如何保护我的 ren'py 项目不被复制?
- clickhouse - clickhouse 是否提供任何工具,例如 red gate sql toolbelt
- linux - 在 apache 配置中未显示预期输出
- node.js - 为什么我不能将 @bundled-es-modules/chai 别名为 chai?
- python - 在 Matplotlib 中同时使用 blitting 为一个子图设置动画,而在 Matplotlib 中通过重绘为另一个子图设置动画