c语言一道题目。输入一组数字,以0或负数为结束标志,求这组数字中的

c语言一道题目。输入一组数字,以0或负数为结束标志,求这组数字中的偶数和,怎么写啊?

#include<stdio.h>

int main()
{

   int num,sum=0;
   while(scanf("%d",&num)&&num>0)
   {
       if(num%2==0)
        sum+=num;
   }
    printf("偶数和为:%d\n",sum);
   return 0;
}

追问

#include
int main () {
int a,b,c;
while (scanf("%d",&a)>0) {
b=a%2;
if (b==0)
c=c+a; }
printf ("%d",c);
}

我是这样写的,为什么要加上&&呢

追答

你这个不会结束吧,scanf的返回值是正确输入的个数。也就是说即使你最后输入的是-1,那返回值也是1吧,并不是你想象的返回值为a的值。你知道这种写法,说明你是搞ACM的。

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-01-07
#include <stdio.h>
int main()
{
    int num;
    int sum=0;
    scanf("%d",&num);
    while(num>0)
    {
        if(num%2==1)
        {
            num=0;
        }
        sum+=num;
        scanf("%d",&num);
    }
    printf("%d",sum);
    
    return 0;
}

C 语言 编程 输入一批正整数(以零或负数为结束标志),求其中的奇数和
public static void main (String [] args) { Scanner s=new Scanner(System.in);int sum=0;int x=s.nextInt();while(x!=0) { if(x%2==1) { sum+=x;} x=s.nextInt();} System.out.println(sum);} } 运行效果:

求一c语言程序:输入一批正整数(以0或负数为结束标志)求其中偶数的和...
} printf("这列整数中偶数和为:%d\\n",sum);return 0;}

...题:从键盘输入一组正整数,以0或负数为结束标志,反向输出这组数...
int a[50],num,i;int *p;printf("请输入若干个正整数\\n");p=a;for(i=0;i<50;i++,p++){ scanf("%d,",p);if(*p<=0){ p--;num=i;break;} } printf("\\n反序输出:\\n");for(i=0;i<num;i++,p--)printf("%d ",*p);return 0;} \/ 以上代码经C++编译器编译后运行成...

读入一批正整数(以零或负数为结束标志),求其中的奇数和。c语言...
return 0;}

C语言题目 编程 输入若干正整数(输入0或负数结束),找出其中的素数,并...
include <stdio.h>int is_prime( int n ){int i;if( n < 2 )return 0;for( i=2;i<n;i++ )if ( n % i==0 )return 0;return 1;}int main(){int n;while( scanf("%d", &n)==1 && n>0 ){if ( is_prime( n ) )printf("%d是素数\\n", n );}return 0;} ...

...求奇数和:读入一批正整数(以零或负数为结束标志),求其中的奇数和...
int a, num; a = num = 0; scanf("%d", &a); while(a > 0) { if (a % 2 == 1) { num += a; } scanf("%d", &a); } printf("奇数和: %d\\n", num); return 0;}

输入一批正整数(以零或负数为结束标志),求其中的偶数和.
这个应该很简单,代码如下:include <stdio.h>#include <stdlib.h>int main(int argc, char *argv[]) {int p,sum=0;while(scanf("%d",&p)!=EOF){if(p<=0){break;}if(p%2==0){sum=sum+p;}}printf("sum of even is %d\\n",sum);return 0;}如何有任何疑问,可以继续追问。

c语言 一串数值,统计正负个数,并求各自平均数
int main(){ define N 100 \/\/最大输入个数 float numbers[N] = {0}; \/\/将数值存在一个数组里 float positive_sum=0, negtive_sum=0;int positive_num=0, negive_num=0;printf("请依次输入数值:”);int i = 0;do { scanf("%f", numbers[i++]);if(i=N) { printf("...

输入一批正整数(以0或负数为结束标志),求其中的奇数和.使用WHILE语句实...
\/*输入一批正整数(以0或负数为结束标志),求其中的奇数和.使用WHILE语句实现循环 *\/#include <stdio.h>main() { int sum=0,n=0;scanf("%d",&n);while (n){if (n%2!=0){sum+=n;}scanf("%d",&n);}printf("奇数和 %d\\n",sum);} 12345670奇数和 16Press any key to continue ...

编程题:读入一批正整数(以零或负数为结束标志),求其中的奇数和。
if(arr[i]==0||arr[i]<0)break;} int judgmentOdd(int x);for(i=0; i<count; i++){ int bools = judgmentOdd(arr[i]);if(bools)s+=arr[i];} printf("all odd number is %d\\n",s);system("pause");} int judgmentOdd(x)int x;{ int result;result=x%2==0? 0 : 1...

相似回答