C语言编程题!!!!急!!!!!!!!!

来源:百度知道 编辑:UC知道 时间:2024/06/17 19:58:16
1....编写一个函数,将数组a中的n个数每5个相邻的元素为一组分别求和(假设求和结果不溢出),结果放到数组b中,最后一组如果不足5个也进行求和。例如,若数组a的元素为4,8,3,2,0,5,2,9,7,8,4,3,2,1,8,4,3,2,则数组b的元素为17,31,18,9。
2......编写C程序,计算并输出100以内是7的倍数并且含有数字5的所有自然数。

1
void fun(int a[],int *b,n){
int j=0;
while(5*j<n){
for (i=0;i<5;i++){
if (5*j+i>=n) break;
*(b+j)+=a[5*j+i];
}
j++;
}
}
void main(){
int a[]={4,8,3,2,0,5,2,9,7,8,4,3,2,1,8,4,3,2};
int n=sizeof(a)/sizeof(int);
int *b=(int *)malloc(n/5+1);
fun(a,b,n);
for (int i=0;i<4;i++)
printf("%d\n",*(b+i));
}
2
void main(){
for (int i=1;i<100;i++)
if (i%7==0 && (i%10==5 || i/10==5) printf("%d\n",i);
}

楼上的两个程序,都编译不过,汗!

1、编写一个函数,将数组a中的n个数每5个相邻的元素为一组分别求和(假设求和结果不溢出),结果放到数组b中,最后一组如果不足5个也进行求和。例如,若数组a的元素为4,8,3,2,0,5,2,9,7,8,4,3,2,1,8,4,3,2,则数组b的元素为17,31,18,9。

#include <stdio.h>
#include <malloc.h>

void fun(int a[],int *b,int n)
{
int i,j;

for(i=0;i*5<n;i++)
{
for(j=0;j<5;j++)
{
if(i*5+j<n)
b[i]+=a[5*i