c语言题1 输出0-100之间的奇数,每5个一行。2 计算100-200之间4的倍数之和

3 编写函数计算两个的乘积,调用函数计算7*3。

题目1

#include <stdio.h>

int main()
{
    int i;
    int cnt=0;
    
    for(i=1;i<100;i+=2)
    {
        printf("%2d ",i);
        cnt++;
        if(cnt%5==0)
        {
            printf("\n");
        }
    }
    
    return 0;
}

题目2

#include <stdio.h>

int main()
{
    int i;
    int sum=0;
    
    for(i=100;i<=200;i++)
    {
        if(i%4==0)
        {
            sum+=i;
        }
    }
    
    printf("%d\n",sum);
    
    return 0;
}

题目3

#include <stdio.h>

int chengfa(int a, int b)
{
    int i;
    int sum=0;
    
    for(i=0;i<b;i++)
    {
        sum+=a;
    }
    
    return sum;
}

int main()
{
    printf("%d\n",chengfa(7,3));
    
    return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-05-14
#include<iostream>
#include<istream>
#include<cstring>
#include<vector>
#include<list>
using namespace std;

bool odd(int n)
{
return n&1;
}

int sum100_200()
{
int i=0,sum=0;
for(i=100;i<=200;i++)
{
if(i%4==0)
{
sum+=i;
}
}
return sum;
}

void print0_100()
{
int flag=0;
int i=0;
for(i=0;i<=100;i++)
{
if(odd(i))
{
cout<<i<<' ';
flag++;
if(flag==5){cout<<endl;flag=0;}
}
}
}

int chengji(int i,int j)
{
return i*j;
}

int main()
{
print0_100();
cout<<endl<<sum100_200()<<endl;
return 1;
}
第2个回答  2015-05-14
#include <stdio.h>

void show_odd(int start, int end, int nums_per_line);
long get_sum(int start, int end, int mul_of_num);
long get_mul(int left, int right);

int main()
{
int start = 0, end = 0, num = 0;
/* 1 */
printf("输出start与end之间的奇数,请输入参数:");
scanf("%d %d %d", &start, &end, &num);
show_odd(start, end, num);

/* 2 */
start = 0, end = 0, num = 0;
printf("求start与end间能被mul_of_num整除的数的和,请输入参数:");
scanf("%d %d %d", &start, &end, &num);
printf("sum = %d\n", get_sum(start, end, num));

/* 3 */
start = 0, end = 0;
printf("求两个整数之积,请输入参数:");
scanf("%d %d", &start, &end);
printf("%d * %d = %ld\n", start, end, get_mul(start, end));

getchar();
getchar();
return 0;
}

/*
* 输出start与end之间的奇数,每行有nums_per_line个
*/
void show_odd(int start, int end, int nums_per_line)
{
int i = 0, j = 1;

// 确保i为奇数
i = start & 1 ? start : start + 1;

for (; i < end; i += 2, j++)
{
printf("%d\t", i);

// j用来确定是否换行
if (0 == j % nums_per_line)
{
printf("\n");
}
}

printf("\n");
}

/*
* 求start与end间能被mul_of_num整除的数的和
* 先找到第一个能被mul_of_num整除的数,赋给i,把所有能被
* mul_of_num整除的个数赋给count,调用等差数列求和公式,
* 把和赋给sum
*/
long get_sum(int start, int end, int mul_of_num)
{
int i = start;
int count = 0;
long sum = 0L;

if (0 == start % mul_of_num)
{
i = start;
count = end / mul_of_num - start / mul_of_num + 1;
}
else
{
i = start + (mul_of_num - start % mul_of_num);
count = end / mul_of_num - start / mul_of_num;
}

sum = count * (i + end / mul_of_num * mul_of_num) / 2;

return sum;
}

/*
* 求两个数之积
*/
long get_mul(int left, int right)
{
return left * right;
}