求解2道C语言编程题

1.编写程序,删除整形数组中指定位置的某个元素,输出删除前后的数组.2.写一个函数,统计n以内的素数,奇数,偶数的个数,并通过参数传递出来.主函数调用函数,输出统计后的结... 1.编写程序,删除整形数组中指定位置的某个元素,输出删除前后的数组.
2.写一个函数,统计n以内的素数,奇数,偶数的个数,并通过参数传递出来.主函数调用函数,输出统计后的结果(要求函数调用)
小弟急需答案,谢过各位大侠...
不好意思啊,我忘了说明一点:请只用stdio.h来解答,还有第一题不需要函数调用.谢谢诶..
展开
 我来答
wacs5
2011-01-02 · TA获得超过1.6万个赞
知道大有可为答主
回答量:3724
采纳率:82%
帮助的人:2773万
展开全部
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#define MAX 100

int main()
{
int i;
int data[MAX],len=10;
int index;
for (i=0;i<len;i++)
data[i]=i;
printf("Input index for delete( <%d ):",len);
scanf("%d",&index);
if (index>len)
{
printf("index=%d is too large.",index);
printf("Press any key to exit:");
getch();
return 1;
}

printf("Before delete:\n");
for (i=0;i<len;i++)
printf("%d ",data[i]);
printf("\n");

/*delete*/
for (i=index;i<len;i++)
data[i-1]=data[i];
data[len-1]=0; /*clear*/
len--;

printf("After delete:\n");
for (i=0;i<len;i++)
printf("%d ",data[i]);
printf("\n");

getch();
return 0;
}

==============================
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

int main()
{
int i,n,odd=0,eve=0,prime=0;
void statistics(int n,int *odd,int *eve,int *prime);

printf("n=");
scanf("%d",&n);
if (n<1)
{
printf("n=%d <1",n);
printf("Press any key to exit:");
getch();
return 1;
}

for (i=0;i<n;i++)
statistics(i,&odd,&eve,&prime);

printf("奇数=%d\t偶数=%d\t素数=%d\n",odd,eve,prime);

getch();
return 0;
}

void statistics(int n,int *odd,int *eve,int *prime)
{
int i,flag;
if (n%2==1)
(*odd)++;
else
(*eve)++;

for (i=2;i<=n/2;i++)
if (n%i==0)
break;
if (i>n/2)
(*prime)++;
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式