帮忙两道C语言题:
1、计算x与y之间(包括x和y)奇数的和。2、计算k以内(包括k)最大的10个能被13和19整除的整数的和。...
1、计算x与y之间(包括x和y)奇数的和。 2、计算k以内(包括k)最大的10个能被13和19 整除的整数的和。
展开
6个回答
展开全部
//1、计算x与y之间(包括x和y)奇数的和
//2013年4月2日14:46:19
#include<stdio.h>
int main()
{
void sort( int *px, int *py );
bool isji( int n );
int fun( int x, int y );
int x, y,*px,*py,sum;
px = &x;
py = &y;
printf("Input:\n");
scanf("%d%d",&x,&y);
sort( px, py );
sum = fun( x, y );
printf("%d和%d之间的奇数和为:%d",x,y,sum);
printf("\n\nHello World!\n");
return 0;
}
//两个整数排序的函数
void sort( int *px, int *py )
{
int t;
if( *px > *py )
{
t = *px;
*px = *py;
*py = t;
}
}
//判断一个数是否为奇数的函数
bool isji( int n )
{
if( 0 == n % 2 )
{
return false;
}
else
{
return true;
}
}
int fun( int x, int y )
{
int num = 0;
int i;
for( i = x; i <= y; i++ )
{
if( true == isji( i ) )
{
num = num + i;
}
}
return num;
}
//2、计算k以内(包括k)最大的10个能被13和19 整除的整数的和。
#include<stdio.h>
int main()
{
bool fun( int x );
int funsum( int k );
int k,sum;
printf("Input:\n");
scanf("%d",&k);
// if( true == fun( k ) )
// {
// printf("%d 能同时被13和19整除\n",k);
// }
// else
// {
// printf("%d 不能同时被13和19整除\n",k);
// }
sum = funsum ( k ) ;
printf("\n%d\n",sum);
printf("\n\nHello Wolrd!\n");
return 0;
}
//判断一个整数能否同时被13和19整除的函数
bool fun( int x )
{
if( 0 == x % 13 && 0 == x % 19 )
{
return true;
}
else
{
return false;
}
}
int funsum( int k )
{
int i = 0;
int sum = 0;
while ( i <= 10 )
{
if( true == fun( k ) )
{
sum = sum + k;
i++;
}
k--;
}
return sum;
}
展开全部
1.计算x与y之间(包括x和y)奇数的和。
int sum_of_odd_in_between(int x, int y)ps: 乱码的地方是小于 y<x
{
int i=0;
int sum=0;
if( y&amp;amp;lt;x )
return 0;
for( i=x; i&amp;amp;lt;=y; i++){
if( i%2 == 1 ){
sum = sum + i;
}
}
return sum;
}
2.计算k以内(包括k)最大的10个能被13和19 整除的整数的和。
int sum_of_most_biggest_below( int x )
{
int i=0;
int sum=0;
int factor=13*19;
int max_factor = x/factor;
for( i=0;i&amp;amp;lt;10;i++ ){
sum = sum + max_factor*factor;
max_factor--;
}
return sum;
}
3.计算k以内(包括k)最大的10个能被13 “或” 19 整除的整数的和
int sum_of_most_biggest_below(int x)
{
int i=0;
int sum=0;
int count=10;
while(count){
if(x%19==0||x%13==0){
sum = sum+x;
count--;
}
x--;
}
return sum;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1.计算x与y之间(包括x和y)奇数的和。
#include <stdio.h
int main()
{
int x, y, tmp;
int i;
int sum = 0;
printf("请输入2个数字:");
scanf("%d %d", &x, &y);
if (x > y)
{
tmp = x;
x = y;
y = tmp;
}
for (i=x; i<=y; ++i)
{
if (0 != i%2)
sum += i;
}
printf("%d到%d之间奇数的和为%d\n", x, y, sum);
return 0;
}
2.计算k以内(包括k)最大的10个能被13和19整除的整数的和。
#include <stdio.h>
int main()
{
long k;
long i;
int count = 0;
long sum = 0;
printf("请输入1个数字:");
scanf("%d", &k);
for (i=k;; --i)
{
if (0 == i%13 && 0 == i%19)
{
sum += i;
++count;
}
if (10 == count)
{
printf("%ld以内最大的10个能被13和19整除的整数的和为%ld\n", k, sum);
break;
}
}
return 0;
}
#include <stdio.h
int main()
{
int x, y, tmp;
int i;
int sum = 0;
printf("请输入2个数字:");
scanf("%d %d", &x, &y);
if (x > y)
{
tmp = x;
x = y;
y = tmp;
}
for (i=x; i<=y; ++i)
{
if (0 != i%2)
sum += i;
}
printf("%d到%d之间奇数的和为%d\n", x, y, sum);
return 0;
}
2.计算k以内(包括k)最大的10个能被13和19整除的整数的和。
#include <stdio.h>
int main()
{
long k;
long i;
int count = 0;
long sum = 0;
printf("请输入1个数字:");
scanf("%d", &k);
for (i=k;; --i)
{
if (0 == i%13 && 0 == i%19)
{
sum += i;
++count;
}
if (10 == count)
{
printf("%ld以内最大的10个能被13和19整除的整数的和为%ld\n", k, sum);
break;
}
}
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1
#include <stdio.h>
int main(void)
{
int i, x, y;
int sum = 0;
scanf("%d%d", &x, &y);
for (i = x; i <= y; i++) {
if (i % 2)
sum += i;
}
printf("sum = %d\n", sum);
return 0;
}
2
#include <stdio.h>
int main(void)
{
int k, j = 0;
int sum = 0;
scanf("%d", &k);
while (k && j < 10) {
if (k % (13 * 19) == 0) {
sum += k;
j++;
}
k--;
}
printf("sum = %d\n", sum);
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
java 实现的,思路差不多,语言有可能可以:
(1)
int min=3;
int max=21;
int sum=0;
for(int i=min;i<=max;i++){
if(i%2==1){
sum=sum+i;
}
}
(2)
// TODO Auto-generated method stub
int min=21;
int max=999;
int sum=0;
int flag=1;
for(int i=max;i>=min;i--){
if(i%13==0&&i%19==0){
if(flag>10){ sum=sum+i;}
else{
break;
}
}
}
(1)
int min=3;
int max=21;
int sum=0;
for(int i=min;i<=max;i++){
if(i%2==1){
sum=sum+i;
}
}
(2)
// TODO Auto-generated method stub
int min=21;
int max=999;
int sum=0;
int flag=1;
for(int i=max;i>=min;i--){
if(i%13==0&&i%19==0){
if(flag>10){ sum=sum+i;}
else{
break;
}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |