當前位置:首頁 » 編程語言 » 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就是奇數。
希望我的回答可以幫你解除疑惑,還望採納喲。