鱼C论坛

 找回密码
 立即注册
查看: 570|回复: 1

没有输出

[复制链接]
发表于 2024-4-11 19:00:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
#include <bits/stdc++.h>
using namespace std;
int n,a[100050],flag=0;
bool check(int a[]){
  for(int i=0;i<n-1;i++){
    if(a[i]>a[i+1])
    return false;
  }
  return true;
}
void cz(int a[]){
  if(check(a)){
    flag=1;
    return ;
  }
  for(int i=1;i<=n/2;i++){
    swap(a[i],a[n-i+1]);
    cz(a);
    swap(a[n-i+1],a[i]);
  }
}
int main()
{
  cin>>n;
  for(int i=1;i<=n;i++){
     cin>>a[i];
  }
  cz(a);
  if(flag==1){
    cout<<"YES";
  }
  else
  cout<<"NO";
  return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-4-11 19:01:19 | 显示全部楼层
代码中存在一些语法错误和逻辑问题。首先,你的代码中缺少头文件声明,应该添加 `#include <iostream>` 来进行输入输出操作。

其次,`main()` 函数是程序的入口,你需要在其中定义和初始化变量,调用其他函数,并输出结果。在你的代码中,缺少了 `main()` 函数。

另外,`check()` 函数和 `cz()` 函数的参数命名都是 `a`,会导致混淆,你需要为它们取不同的名称。

最后,程序结束前应输出一些结果,否则程序运行完毕后就直接退出了。

下面是我根据你的代码所做的修改和补充:
#include <iostream>
using namespace std;

int n, num, flag = 0;

bool check(int num) {
    for (int i = 0; i < num; i++) {
        if (i * i == num)
            return false;
    }
    return true;
}

void cz(int num) {
    if (check(num)) {
        flag = 1;
        return;
    }
    for (int i = 1; i < num; i++) {
        if (num % i == 0) {
            int a = num / i;
            cz(a);
            if (flag == 1) {
                return;
            }
        }
    }
}

int main() {
    cout << "请输入一个正整数:" << endl;
    cin >> n;

    cz(n);

    if (flag == 1) {
        cout << n << " 不是质数" << endl;
    } else {
        cout << n << " 是质数" << endl;
    }

    return 0;
}

在这段代码中,`n` 代表你要判断的正整数,`num` 代表每次递归的待判断的数。

首先,在 `main()` 函数中,我们输出提示信息并读取用户输入的 `n`。

然后,我们调用 `cz(n)` 进行递归判断是否是质数。

接着,在 `cz()` 函数中,我们先调用 `check()` 函数判断当前的 `num` 是否是质数,如果是,则将 `flag` 设为1,表示找到了除1和自身以外的因子,直接返回。

如果不是质数,我们使用一个循环来寻找 `num` 的所有除数。如果找到除数 `i` 则将 `num` 除以 `i` 得到商 `a`,然后再次调用 `cz(a)` 进行递归判断。如果找到了质数,则将 `flag` 设为1,直接返回。

最后,在 `main()` 函数中,我们根据 `flag` 的值来输出结果,如果 `flag` 为1,则说明不是质数,否则是质数。

希望这个代码可以解决你的问题!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-22 01:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表