C语言程序设计(第三版)何钦铭著 习题5-2
题目
使用函数求奇数和∶
输入一批正整数(以零或负数为结束标志),求其中的奇数和。
要求定义和调用函数even(n)判断数的奇偶性,当n为偶数时返回1,否则返回 0。
试编写相应程序。
分析过程
输入
条件:输入一批正整数(以零或负数为结束标志)
输出
条件:输出其中的奇数和
代码
#include <stdio.h>
#include <math.h>
int even(int n);/*函数声明*/
int main () {
/*定义变量*/
int n; /*定义变量,存储输入的正整数n*/
int sum; /*定义变量,计算奇数和*/
/*赋值*/
printf("请输入正整数n:\n"); /*输入提示*/
scanf("%d \n", &n); /*输入并赋给变量*/
/*计算*/
while(n>0){
/*以零或负数为结束标志,即输入的整数必须为正,才能执行,否则即停止。即一旦输入整数为负数或零时结束*/
if(even(n)==0){
/*输入的正整数为奇数*/
printf("%d为奇数\n", n); /*输出输入的整数为奇数的提示*/
sum+=n;
}
printf("请输入正整数n:\n"); /*输入提示*/
scanf("%d \n", &n); /*输入下一个整数并赋给变量*/
}
printf("奇数和为%d\n", sum); /*输出奇数和*/
return 0;
}
int even(int n){
if(n%2==0)/*n为偶数*/ return 1;
else/*n为奇数*/ return 0;
}