喧和 2022-11-30 07:48 采纳率: 0%
浏览 13

c语言判断等差数列的方法

问题遇到的现象和发生背景

img

用代码块功能插入代码,请勿粘贴截图
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main()
{
    int a[100];
    int temp;
    int flag;
    int n,m;
    int i,j;
    int num;
    scanf("%d", &n);
    for(;n > 0;n--)
    {
        while(scanf("%d", &m) != EOF)
        {
            for(i=0;i < m;i++)
        {
            scanf("%d", &a[i]);
        }
        for(i=0;i < m-1;i++)
        {
            for(j=0;j < m - 1 -i;j++)
            {
                if(a[j] > a[j+1])
                {
                    temp = a[j];
                    a[j] = a[j+1];
                    a[j+1] = temp;
                }
            }
        }//起泡法排序
        num = a[1] - a[0];
        for(i = 0; i+1 < m;i++)
        {
            if(a[i+1] - a[i] == num)
                flag = 1;
            else 
            {
                flag = 0;
                break;
            }
        }
        if(flag == 1)
            printf("yes\n");
        else if(flag == 0)
            printf("no\n");
        }
        
    }        
}

运行结果及报错内容

运行可以实现部分的数是否为等差数列的判断,但是过不了oj

我的解答思路和尝试过的方法

接手数据,数组储存,冒泡法排序,相邻两个数做差,用循环判断后续是否差值是否相等

我想要达到的结果

了解程序不足在哪

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-11-30 14:08
    关注
    评论

报告相同问题?

问题事件

  • 创建了问题 11月30日

悬赏问题

  • ¥15 两台交换机分别是trunk接口和access接口为何无法通信,通信过程是如何?
  • ¥15 C语言使用vscode编码错误
  • ¥15 用KSV5转成本时,如何不生成那笔中间凭证
  • ¥20 ensp怎么配置让PC1和PC2通讯上
  • ¥50 有没有适合匹配类似图中的运动规律的图像处理算法
  • ¥15 dnat基础问题,本机发出,别人返回的包,不能命中
  • ¥15 请各位帮我看看是哪里出了问题
  • ¥15 vs2019的js智能提示
  • ¥15 关于#开发语言#的问题:FDTD建模问题图中代码没有报错,但是模型却变透明了
  • ¥15 uniapp的h5项目写一个抽奖动画