当前位置:首页 » 编程语言 » c语言判断数组中的奇偶数
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言判断数组中的奇偶数

发布时间: 2022-05-18 15:59:10

c语言求数组中最大偶数和最小奇数的差,我的代码如下,结果应该是5-2=3啊

自定义函数逻辑错远了,都判断的是偶数,所以4-2=2!而正确答案应该是1(5-4的结果)。

Ⅱ C语言怎么判断二维数组中每一行的奇偶数个数,程序运行后直接输入奇偶数条件,程序会判断是哪一行并输出

#include<stdio.h>
voidmain()
{
inta[][]={{1,2,3,4,5},{2,2,2,2,2},{3,3,3,3,3}};
introw,i;
intodd=0,even=0;
printf("请输入行的序号[0~2]:");
scanf("%d",&row);
if((row<0)||(row>=3))
{
printf("行序号超出范围! ");
return;
}
for(i=0;i<5;i++)
{
if(a[row][i]%2==0)
{
even++;
}
else
{
odd++;
}
}
printf("第%d行有%d个奇数,%d个偶数 ",row,odd,even);
}

Ⅲ C语言,数组有一个中奇偶性不同于其他的数,输出这个数的序号

//说实话,实在懒得看你的图.太吃力了.建议下次要问时请贴代码吧.
//给你写了一个:希望用得上吧
#include<stdio.h>
#include<malloc.h>
intmain()
{
int*a,i,n;

scanf("%d",&n);//输入数组长度
a=(int*)malloc(sizeof(int)*n);//建立动态数组
//指针a指向新分配的一块大小为n个int的存储空间

for(i=0;i!=n;++i){
scanf("%d",&a[i]);//输入数据
//注意:此处没有对数据做合法性检查
}

for(i=1;i!=n&&a[i]%2==a[i-1]%2;++i){}
//循环:查找数组中奇偶性与其它数不同的一个
//思路:从数组第2个数开始,与其前一个数比较奇偶性
//遇到不同的,退出循环.相同,继续查找.
//要做的都在循环条件里做了.循环体没有动作,所以是空括号
if(i!=n&&a[i]%2==a[i+1]%2)//对形如{1,2,4,6}这种数组
//情况加以判断:循环输出结果i=1,明显,i=1不是所求.
i--;
//判断一下位置i及i+1上的数是否奇偶性相同.相同,说明i-1才是所求

printf("a[%d],%d ",i,a[i]);//输出结果

return0;
}

Ⅳ C语言 将一数组分奇偶分别有序排序,奇在前,偶在后

现在是北京时间2013 5 31 22:56,看到楼上并未给出程序,而楼主又十分不解,故而作答如下:

数组要分奇偶有序排序,需要借助辅助数组加以实现:

#include<stdio.h>

intmain()
{
inti,a[20],b[20],c[20]={0},j=0,flag,temp;
constintlen=10;//len就是输入的个数了,你可以改变这个数,也可以取消const,在下面加个输入语句,输入len的值

for(i=0;i<len;++i)
{
a[i]=(i/2)+i%2+i%3-i%5+i%6+i%7-i%9+i%11;//我用来做随机值…省的验证的时候麻烦…你换成下面这句就行。
//scanf("%d",&a[i]);
}
for(i=0;i<len;++i)
{
printf("%d",a[i]);
}
printf(" ");


flag=1;
while(flag)
{
temp=len;
flag=0;
b[j]=999999;
for(i=0;i<len;i++)
{
if(a[i]%2==1&&c[i]==0)
{
flag=1;
if(a[i]<b[j])
{
b[j]=a[i];
temp=i;
}
}
}
c[temp]=1;
j++;
}
j--;
flag=1;
while(flag)
{

temp=len;
flag=0;
b[j]=999999;
for(i=0;i<len;i++)
{
if(a[i]%2==0&&c[i]==0)
{
flag=1;

if(a[i]<b[j])
{
b[j]=a[i];
temp=i;
}
}
}
c[temp]=1;
j++;
}

for(i=0;i<len;++i)
a[i]=b[i];
printf("排序后:");

for(i=0;i<len;++i)
{
printf("%d",a[i]);
}
printf(" ");
return0;
}

此程序中使用c数组作为标识对应的a中的数组有未被选中过,避免多次得到同一值。flag用来表示是否能找到符合的数,找不到就跳出循环。这里不涉及排序方法,非要牵强来说就属于直接选择法。

另外附上使用函数按奇偶分割大小排序数组的方法:

先分组与先排序,优劣得所,楼主可试着自行分析,如有不解之处,可以Hi我……鼠标放在我的ID上即可找到Hi。

Ⅳ C语言中区分 数组 中的奇偶数

好一个偷天换日
最开始 ji, ji1, ou, ou1 都指向同一地址
在for 循环中
第一次:*temp = 1时
执行第二个if, 于是*ji = *temp. 第一个空间的值为1
第二次:*temp = 2时
执行第一个if, 此时的*ou指向的是第一个空间, 此时 *ou = *temp, 就把先前的*ji空间个覆盖了,于是第一空间的值为2
以此类推:因为for循环执行10次,*ji, *ou都只跳动5次, 所以p的前五个值被你已改成偶数
此时p数组的值为2,4,6,8,10,6,7,8,9,10
而你输出的*ji1与*ou1其实都是p数组的第一个值(他俩都指向p的首元素位置), 并不是你想要的基数或者偶数

Ⅵ c语言用一个数组输入10个整数,判断所有数是否为偶数

你好,程序如下:

#include<stdio.h>
void
main()
{
char
str[100];
int
i,j;
printf("请输入一个数字:\n");
for(i=0;(str[i]=getchar())!='\n';i++)
;
for(j=0;j<i;j++)
{
if(str[j]=='.')
{
printf("这个数字不是整数!\n");
break;
}
}
if((i==j)&&(0!=i))
printf("这个数字是整数!\n");
}

(这个程序还不能判断输入的字符是否为数字,如果需要这个功能的话请追问)

Ⅶ 用C语言找出一维数组中的偶数。

//用C编写
#include"stdio.h"
#define N 9
void main()
{
int a[N],i,k=0;
for(i=0;i<N;i++)
{ printf("please input nine number:");
scanf("%d",&a[i]);

}
printf("偶数有:");
for(i=0;i<N;i++)
{ if(a[i]%2==0) {k++;printf(" %d ",a[i]);}
}
printf("\n偶数个数共有:%d个\n",k);
}
//本程序已通过调试.

Ⅷ C语言编程 自定义求数组中奇数、偶数之和的函数

void
fun(int
nums[],int
Len)/*Len是数组长度*/
{
int
i,CountJ,CountO;
CountJ
=
CountO
=
0;
for(i
=
0;i<Len;i++)
{
if(nums[i]%2
==
0)
CountO++;
else
CountJ++;
}
printf("偶数个数为:%d\n奇数个数为:%d\n",CountO,CountJ);
}

Ⅸ 用c语言编程判断任何一组数据的奇偶.如[a b c d e]

你是说,奇数和偶数的比例吗?
假如是存在数组中
int
noushu=0;
//偶数的个数
int
njishu=0;
//奇数的个数
for(int
i=0;i<数组大小;i++)
{
if(0
==
数组[i]%2)
noushu++;
else
njishu++;
//这里可以添加代码,判断累加和是不是100
}
//求比值就ok啦

Ⅹ C语言中怎样筛选奇数偶数。

你好,很高兴为你答疑。
c语言中可以利用求余运算表示奇偶数。
a%2==0那么a就是偶数;b%2==1那么b就是奇数。
希望我的回答可以帮你解除疑惑,还望采纳哟。