中易网

c语言编程求问 从键盘输入一个整数n(0<n<=20),然后输入n个整数,实现把奇数

答案:2  悬赏:10  
解决时间 2021-01-18 21:08
  • 提问者网友:半生酒醒
  • 2021-01-18 00:37
c语言编程求问 从键盘输入一个整数n(0<n<=20),然后输入n个整数,实现把奇数
最佳答案
  • 二级知识专家网友:杯酒困英雄
  • 2021-01-18 01:11
#include
#define M 20
int main(void)
{
int i,a[M],j=0;
for(i=0;iscanf("%d",a+i);
for(i=0;iif(a[i]%2!=0)
{  int t;
   t=a[j];
   a[j]=a[i];
a[i]=t;
j++;
}
for(i=0;iprintf("%2d",a[i]);

printf("
");return 0;
}
缩短数组长度测试了一下没问题!可放心使用请采纳楼主还是给一点分吧!

全部回答
  • 1楼网友:像个废品
  • 2021-01-18 02:49
//#include "stdafx.h"//vc++6.0加上这一行.
#include "stdio.h"
int main(void){
int a[20],i,j,n;
printf("Type some data...\n");
for(n=0;n<20;n++)
if(scanf("%d",a+n)!=1) break;
printf("Before: ");
for(i=0;i<n;printf("%d ",a[i++]));
for(i=0;i<n;i++){
if(a[i]&1) continue;
for(j=i+1;j<n;j++)
if(a[j]&1){
a[i]^=a[j];
a[j]^=a[i];
a[i]^=a[j];
break;
}
}
printf("\nAfter: ");
for(i=0;i<n;printf("%d ",a[i++]));
printf("\n");
return 0;
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息