gpt4 book ai didi

C - 矩阵 > 仅正元素

转载 作者:太空宇宙 更新时间:2023-11-04 07:59:08 25 4
gpt4 key购买 nike

我需要你的帮助,我将向你展示的代码只是一个开始,但作为初学者我已经遇到了问题,所以请帮助我,我认为这对了解 C 的人来说并不难。

这是我的代码:

#include <stdio.h>

int main ()
{
int matrix[10][10];
int nrows, ncols, i, j, chosen;

printf("Enter number of rows: "); //user enters number of rows
scanf("%d", &nrows);
if(nrows < 2){
printf("\n Out of range, please try again");
exit(5);
}
printf("Enter number of columns: "); //user enters number of columns
scanf("%d", &ncols);
if(ncols < 2){
printf("\n Out of range, please try again");
exit(5);
}

printf("Enter matrix elements: "); //user enters all the elements for Matrix
for(i = 0; i < nrows; i++){
for(j = 0; j < ncols; j++){
scanf("%d",&matrix[i][j]);
}
printf("\n");
}
printf("This is your matrix: \n");
for(i = 0; i < nrows; i++){
for(j = 0; j < ncols; j++){
printf("%d \t",matrix[i][j]);
}
printf("\n");
}

return 0;

}

没什么特别的,用户输入行数和列数,然后用元素填充这个矩阵。

现在的问题是,现在用户可以输入任何类型的整数,正数和负数,我只是想限制用户,以便他/她只能输入正数。

最佳答案

你写道你试图使用另一个变量和“while”循环,所以你可以这样做:

for(i = 0; i < nrows; i++){
for(j = 0; j < ncols; j++){
tmp=0;
scanf("%d",&tmp);
while(tmp<0){
printf("enter positive numbers only\n");
scanf("%d",&tmp);
}
matrix[i][j]=tmp;
}
}

关于C - 矩阵 > 仅正元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47955436/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com