C语言编程,在线着急等

发布网友 发布时间:2022-04-22 00:10

我来回答

4个回答

热心网友 时间:2023-07-10 23:27

这个问题主要解决四个点:

1、如何输入20个整数;

2、如何计算平均值;

3、如何判断一个整数是否为质数;

4、如何格式化输出各个质数;

对于第一个问题,可以使用scanf或者scanf_s函数来实现,具体使用方法参考:网页链接

参考代码如下(由于无法插入代码,这里为了保持良好格式,放图片,下同):

对于第二个问题,先求总和,再除以总数,求得平均数,代码如下:

对于第三个问题,要先知道什么是质数,参考:网页链接,代码如下:

对于最后一个问题,使用printf_s函数的格式化参数来控制格式输出,代码如下:

最后将代码合并如下(本来是合成一张图片的,但是图片太大百度压缩了,看不清,这里分别截取,自己敲一下吧):

最后是执行结果:

热心网友 时间:2023-07-10 23:27

#include "stdio.h"

#include <stdlib.h>

#define N 5

int prime(int n){//质数判断

int i;

if(n>2 && !(n&1) || n<2)

return 0;

for(i=3;i*i<=n;i+=2)

if(!(n%i))

return 0;

return 1;

}

int main(int argc,char *argv[]){

int a[N],i,k;

printf("Please enter %d positive integer(s)...\n",N);

for(k=i=0;i<N;i++){//输入数据

if(scanf("%d",a+i)==1 && a[i]>0)

k+=a[i];

else{//若输入小于0则重新输入

printf("Input error, redo: ");

i--;

fflush(stdin);

}

}

printf("\nThe AVERAGE is %g\nPrime Numbers are as follows:\n",k/20.0);//输出平均值

for(k=i=0;i<N;i++)//输入质数

if(prime(a[i]))

printf(++k%3 ? "%11d" : "%11d\n",a[i]);

if(k==0)

printf("No find prime Numbers...\n");

else if(k%3)

printf("\n");

return 0;

}

运行样例:

热心网友 时间:2023-07-10 23:28

#include <stdio.h>
#include <math.h>
int main() {
int a[20];
int sum = 0;
int count = 0;
printf("输入20个数: \n");
for (int i = 0; i < 20; i++) {
scanf("%d", &a[i]);
}
for (int i = 0; i < 20; i++) {
sum = sum + a[i];
}
for (int j = 0; j < 20; j++) {
if (a[j] >= 2) {
for (int k = 2; k <= sqrt(a[j]); k++) {
if (a[j] % k == 0) {
break;
}
printf("%5d", a[j]);
count++;
if (count % 3 == 0) {
printf("\n");
}
break;
}
}
}
printf("\n平均值为: %lf\n", (double)sum/20);
return 0;
}

热心网友 时间:2023-07-10 23:28

for循环加上一个质数判断函数

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com