吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3356|回复: 21
收起左侧

[C&C++ 转载] 菜鸟学C之第四题

[复制链接]
追梦少年_66 发表于 2017-11-14 15:56
每天搞两道题,加油!
/*******************************************/
/*4.编一个程序,把一批非零整数中的偶数、奇数的平均值分别计算出来。用零作为终止标记。
/*******************************************/

[Asm] 纯文本查看 复制代码
#include<stdio.h>
#include<stdlib.h>
void main2e() {//方法一

	int arr[12] = { 1,2,3,4,5,6,7,8,9,10,0,5};
	int odd = 0, even = 0, osum = 0, esum = 0;
	int num = -1;
	while (arr[++num]) {

		if (arr[num] % 2 == 0) {
					even++;
					esum += arr[num];
				}
				else {
					odd++;
					osum += arr[num];
				}
	}
	printf("偶数的平均=%d,奇数的平均=%d",esum/even,osum/odd);
	getchar();
}
//方式二:递归

int odd = 0, even = 0, osum = 0, esum = 0;
void  digui2(int * arr,int num) {
	
	if (arr[num]) {
	}
	else {
		if (arr[num] % 2 == 0) {
			even++;
			esum += arr[num];
		}
		else {
			odd++;
			osum += arr[num];
		}
		digui2(arr, num+1);
	}
}
void main() {

	int arr[12] = { 1,2,3,4,5,6,7,8,9,10,0,5 };
	digui2(arr, 0);
	printf("偶数的平均=%d,奇数的平均=%d", esum / even, osum / odd);
	getchar();
}

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 追梦少年_66 发表于 2017-11-14 17:15
爱吾hhs 发表于 2017-11-14 16:31
/**********
【习题5.029】请仅在程序空缺处填入合适内容,使其
实现功能:输入大于1的整数到n,在同一个 ...

兄弟,你int odd,even,i,n;   又 int i=2,odd=0,even=0;  定义了两次  重定义了
爱吾hhs 发表于 2017-11-14 16:31
本帖最后由 爱吾hhs 于 2017-11-14 16:32 编辑

/**********
【习题5.029】请仅在程序空缺处填入合适内容,使其
实现功能:输入大于1的整数到n,在同一个循环语句中
分别计算1到n之间的奇数和偶数之和。
**********/
#include<stdio.h>
void main()
{  int odd,even,i,n;
   scanf("%d", &n);
   int i=2,odd=0,even=0;
   while (i<=n)
   {if(i%2==0)
       even+=i;
    else
       odd+=i;
    i++;
   }

   printf("sum of odd=%d   ",odd);  /*奇数之和*/
   printf("sum of even=%d\n", even);/*偶数之和*/
}这个为什么不行啊?
feixizhang 发表于 2017-11-14 16:19
shaolinsi2020 发表于 2017-11-14 16:56
继续坚持,加油
wang65424773 发表于 2017-11-14 17:11 来自手机
貌似没有验证是否为0不为0的问题吧?
 楼主| 追梦少年_66 发表于 2017-11-14 17:16
wang65424773 发表于 2017-11-14 17:11
貌似没有验证是否为0不为0的问题吧?

验证了,兄弟
wzzycpp 发表于 2017-11-14 17:26
定义全局变量呀?!~
蓝色的眼睛盒 发表于 2017-11-14 17:33
日复一日,水滴石穿,坚持就是胜利
爱吾hhs 发表于 2017-11-14 17:41
追梦少年_66 发表于 2017-11-14 17:15
兄弟,你int odd,even,i,n;   又 int i=2,odd=0,even=0;  定义了两次  重定义了

谢谢大佬,没看出来
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 08:21

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表