关于c语言的一个程序
问题描述:
单点时限:2.0sec
内存限制:512MB
输入n(n3)个整数,判断它们是否构成一个等差数列
例如:1357构成一个等差数列,3157不构成等差数列
输入格式
输入n(>3)个整数,整数之间用一个空格分隔
输出格式
如果是等差数列,则输出Yes,否则输出No
样例
input
output
Yes
input
output
NO
答
遍历数组,每相邻两个元素计算差值,记录这个差值,看后面所有相邻元素是否都是这个差值
答
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
int n=0;
scanf("%d",&n);
int num[200];
int delta=0;
while(EOF != scanf("%d",&num[n++]));
--n;
delta = num[0]-num[1];
for(int i=1;i<n-1;++i)
{
if(delta != (num[i]-num[i+1]))
{
printf("No");
return 0;
}
}
printf("Yes");
return 0;
}