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

c语言odds

发布时间: 2022-07-19 21:58:50

1. c语言程序功能:从键盘输入一个不小于5位的整数x,将该数的所有偶数分别按顺序构成一个新数存入变量a中

具体的就不写了,说下思路:

一个变量存放输入的值 int x;

然后一位一位的判断,

int y=0,a=0,sum=0;//a存放新数,sum是奇数和

int i = 0;//这是从后往前判断,存放a中的顺序是反的,i记录位数,处理顺序

while(x!=0)
{
y=x%10;
if(y%2==0)
{//偶数
a=a+y*pow(10,i);//存放a中,pow函数是奇数次幂,需要include<math.h>
}else{
//奇数
sum=sum+y;
}
x=x/10;//x去掉最后一位
}
main函数测试就不写了,看了你自己写吧

2. c语言问题,关于运算顺序

	for(i=0;i<=100;i+=2)
{
a+=i;
b=i+1;
c+=b;
}

当i<100的时候,b=i+1,也就是说,i最大是到100也是符合i<=100这个条件的,此时,b=101,也就是说b最大也就是101了,在i=100的时候 , 但是,还需要判断一次i和100的值,判断i<=100之前,做了一次i+=2的操作,此时i=102 ,此时i+1!=b了。溢出了溢出了!所以值是不一样的。差2

3. C语言编写函数,把数组中所有奇数放在另一个数组中返回,

1.对2取余非零即为奇数

#include<stdio.h>

//将src中奇数放入dst中,并返回奇数个数
intgetOdd(int*dst,constint*src,intsrcLen)
{
intlen=0;
for(inti=0;i<srcLen;i++)
if(src[i]%2!=0)//非0即为奇数
dst[len++]=src[i];
returnlen;
}

intmain()
{
inta[10]={0,1,2,3,4,-5,6,7,8,-9},b[10];
intlen=getOdd(b,a,10);
printf("Oddis:");
for(inti=0;i<len;i++)
printf("%d",b[i]);
return0;
}

4. 求C语言程序: 如果输入10个任意的数据,求其中的奇数和.

//这样就可以了
#include<stdio.h>
#defineN10
intmain(){
inti;
intodds_sum=0;
intcur_value=0;
for(i=0;i<N;i++){
scanf("%d",&cur_value);
if(cur_sum%2==1){//判断是否是奇数
odds_sum+=cur_value;
}
}
printf("%d ",odds_sum);
return0;
}

5. 1到100奇数及偶数的和 C语言

main()
{int a,b,c,i;
clrscr();
a=0, c=0;
for (i=0;i<=100;i+=2)
{a+=i;
b=i+1;//转为奇数. 不过会多加一个101, 在输出的时候会减掉.
c+=b;
}
printf("Sum of Evens is %d\n",a);
printf("Sum of odds is %d\n",c-101);
}

6. c语言,输入自然数,奇数从大到小排序,偶数从小到大,输出。

你是指数据还是代码本身,你代码能编译成功吗?代码本身有没有提示错误吗?我看你连一些基本库文件都没有加,而且还没有代码怎么退出输入状态,是要等所有的数组填满吗,有时候会不可能的!而且排序算法用错了。

这里修改了你一小部分代码:(退出输入状态是在最后的输入数字后面加上"\n"的\n才能退出)
代码如下:

#include <stdlib.h>
#include <stdio.h>
void main()
{
int a[100]={0},b[100]={0},c;
int i=0,j=0,t,n,m;
while (i>=0)
{
if(!scanf("%d",&c))
break;
else
{
if(c%2==0)
a[i++]=c;
else
b[j++]=c;
}
}
for(m=0;m<i;m++)
{
for (t=0;t<i-m-1;t++)
{
if(a[t]>a[t+1])
{
n=a[t];
a[t]=a[t+1];
a[t+1]=n;
}
}
}
for(m=0;m<i;m++)
printf("%d\t",a[m]);

for(m=0;m<j;m++)
{
for (t=0;t<j-m-1;t++)
if(b[t]<b[t+1])
{
n=b[t];
b[t]=b[t+1];
b[t+1]=n;
}
}
printf("\n");
for(m=0;m<j;m++)
printf("%d\t",b[m]);
system("pause");
}

7. 跪求C语言"求100里奇数和偶数的和"的编法

main(){
int i,sum1=0,sum2=0;

for(int i=0;i<100;i++)
if(i%2!=0)
sum1+=i;
else sum2+=i;

}
sum1就是奇数和,sum2就是偶数和。(这里理解的100以内是0-99),如果是1-100,那么for(i=1;i<101;i++)