为什么我的每行最后一个数字是零而不是一
时间: 2024-03-12 17:42:55 浏览: 27
python 给你一个正整数列表 L, 判断列表内所有数字乘积的最后一个非零数字的奇偶性。如果为奇数输出1,偶数则输出0。
5星 · 资源好评率100%
出现这个问题的原因是因为在程序中第11行的变量`b`的值没有被正确更新,导致了第二层循环中的判断语句`if(i==b)`不被执行,而第一列和对角线上的元素都被正确赋值为1。因此,其他位置的元素都是默认值0,没有被正确更新。为了解决这个问题,你可以在第二层循环外面增加一行代码,将变量`b`的值更新为`i`,比如:
```c
#include <stdio.h>
int main() {
int i,j;
int arr[10][10]={0};
int a=1;
int b=1;
for(i=0;i<10;i++){
arr[i][0]=1;
for(j=0;j<=i;j++) {
if(i==b) {
arr[i][j]=1;
}
}
b=i; // 增加这一行代码,将变量b的值更新为i
}
for(i=0;i<10;i++) {
for(j=0;j<=i;j++) {
printf("%d,",arr[i][j]);
}
printf("\n");
}
return 0;
}
```
这样,你就可以得到正确的杨辉三角形状的数组了。
阅读全文