金桔希子哦 发表于 2021-11-16 13:12:18

C语言求助

以每行5个数来输出1000以内能被3或13整除的偶数,
程序需要输入“行”“列”然后输出其对应行列的数,若输入行列大于实际行列,输出“error”(用一维数组或二维数组编写)


数据
请输入需要第几行:
请输入第 行的第几个数
这样谢谢谢谢

村里小黑 发表于 2021-11-16 14:18:07

本帖最后由 村里小黑 于 2021-11-16 14:56 编辑

#include <stdio.h>

int main(void) {

    int a;
    int i=0;
    int j=0,k=0;
    int m,n;
    for(i=0;i<1000;i++)
    {
      if((i%3==0||i%13==0)&&(i%2==0))
      {
            a=i;
            j=j+1;
            if(j>4)
            {
                k=k+1;
                j=0;
            }
      }
    }
    printf("请输入需要第几行:\n");
    scanf("%d",&m);
    printf("请输入第%d行的第几个数\n",m);
    scanf("%d",&n);
    if(m>k||n>5)
    {
      printf("error\n");
    }
    else
    {
      printf("第%d行的第%d个数的值为%d\n",m,n,a);
    }
}

最终的执念 发表于 2021-11-16 14:51:05

被3或13整除的'偶数'认真的?

村里小黑 发表于 2021-11-16 14:55:16

本帖最后由 村里小黑 于 2021-11-16 14:58 编辑

最终的执念 发表于 2021-11-16 14:51
被3或13整除的'偶数'认真的?

哈哈哈哈哈哈哈哈哈,不好意思,没看到偶数,已改

最终的执念 发表于 2021-11-16 15:02:45

我就感觉很奇怪..

最终的执念 发表于 2021-11-16 15:12:58

如果已经解决麻烦更新下...

傻眼貓咪 发表于 2021-11-16 18:42:43

纯粹复习#include <stdio.h>

int main()
{
    int arr = {{0}}, row = 0, col = 0;
    for(size_t i = 0; i < 1000; i++){
      if((!(i%3) || !(i%13)) && !(i%2)) arr = i;
      row = col > 4 ? row+1 : row;
      col = col > 4 ? 0 : col;
    }
    int n, m;
    printf("请输入需要第几行:");
    scanf("%d", &n);
    printf("请输入第 %d 行的第几个数:", n);
    scanf("%d", &m);
    arr[--n][--m] != 0 || (!n && !m) ? printf("第 %d 行的第 %d 个数的值为:%d ", n+1, m+1, arr) : printf("error");
    return 0;
}
页: [1]
查看完整版本: C语言求助