C语言,求答案。题目:写一个判断素数的函数,要求在主函数中输入一个整数并输出相应的判断信息

明天考C语言。这是题目啊,哪个大侠帮帮忙啊~谢谢谢谢
1.写一个判断素数的函数,要求在主函数中输入一个整数并输出相应的判断信息。
2.10个评委给出某选手打分,编成实现去掉一个最高分和一个最低分,求最后得分。
3.已知计算机的字长为8位,求十进制数—102的原码、反码和补码。(10分)
4.设计一个C程序求n!。(10分)

1.#include <stdio.h>
int fun(int n)
{
int i;
if(n == 2)
{
printf("是素数\n");
return 0;
}
else if(n <= 1)
{
printf("不是素数\n");
return 0;
}
else
{
for(i = 2;i <= n/2; i++)
{
if(n % i == 0)
{
printf("不是素数\n");
break;
}
}
if(i == (n/2+1) )
{
printf("是素数\n");
}
}
}

int main()
{
int n;
scanf("%d",&n);
fun(n);
}
2.#include <stdio.h>
int main()
{
int a[10],i,sum=0,max,min;

for(i = 0; i < 10; i++ )
{
scanf("%d",&a[i]);
}
max=a[0];
min=a[0];
for(i = 1;i <= 9;i++)
{
if(max<a[i])
{
max=a[i];
}
}
for(i = 1;i <= 9;i++)
{
if(min>a[i])
{
min=a[i];
}
}
for(i = 0;i <= 9;i++)
{
sum=sum+a[i];
}
sum=sum-max-min;
printf("最终得分为:%d\n",sum);
return 1;
}
3.-102的原码是11100110
反码是10011001
补码是10011010
4.#include <stdio.h>
int main()
{
int i,n;
int s=1;
scanf("%d",&n);
if(n<0)
{
return 0;
}
if(n==0)
{
printf("%d的阶乘是:1\n",n);
return 0;
}
for(i=1;i<=n;i++)
s=s*i;
printf("%d的阶乘是:%d\n",n,s);
return 0;
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-07-10
第二题给你个参考:
#include <stdio.h>
struct student
{
int number;
char name[8];
int pw1,pw2,pw3,pw4,pw5;
int max,min;
float pjf;
};
void shuru(struct student yn[5])
{
int i;
for(i=0;i<5;i++)
{
printf("请输入歌手的序号:");
scanf("%d",&yn[i].number);
printf("请输入歌手的姓名:");
getchar();
gets(yn[i].name);
printf("请输入第一位评委的分数:");
scanf("%d",&yn[i].pw1);
printf("请输入第2位评委的分数:");
scanf("%d",&yn[i].pw2);
printf("请输入第3位评委的分数:");
scanf("%d",&yn[i].pw3);
printf("请输入第4位评委的分数:");
scanf("%d",&yn[i].pw4);
printf("请输入第5位评委的分数:");
scanf("%d",&yn[i].pw5);
}
}
void shuchu(struct student yn[5])
{
int i;
printf("参加比赛的歌手为:\n序号 姓名 f1 f2 f3 f4 f5 平均分\n");
for(i=0;i<5;i++)
{
printf("%d%10s%10d%10d%10d%10d%10d%10.2f\n",yn[i].number,yn[i].name,yn[i].pw1,yn[i].pw2,yn[i].pw3,yn[i].pw4,yn[i].pw5,yn[i].pjf);
}
}
void pingjun(struct student yn[5])
{
int i;
for(i=0;i<5;i++)
yn[i].pjf=1.0*(yn[i].pw1+yn[i].pw2+yn[i].pw3+yn[i].pw4+yn[i].pw5)/5;

}
void paixu(struct student yn[5])
{
int i,j;
struct student temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
{
if(yn[j].pjf<yn[j+1].pjf)
{
temp=yn[j];
yn[j]=yn[j+1];
yn[j+1]=temp;
}
}
}
void main(struct student yn[5])
{

shuru(yn);
pingjun(yn);
shuchu(yn);
paixu(yn);
printf("最终名次:");
shuchu(yn);
}
第2个回答  2010-07-10
1

#include "stdio.h"
#include <math.h>

int main(int argc, char* argv[])
{
int count, i;
int n;
int prime(int m); //判断素数函数
printf("输入一个数:\n");
scanf("%d",&n);
if(prime(n)==1)
printf("%d是素数\n",n);
else
printf("%d不是素数\n",n);

}

int prime(int m)
{
int j;
for(j=2;j<=sqrt(m);j++)
{
if(m%j==0)
{
return 0;break;
}

}
if(m==1)
{
return 0;
}
return 1;

}
2

#include "stdio.h"
#include <math.h>

int main(int argc, char* argv[])
{
int a[10];
int t;
int sum=0;
printf("input ten number\n");
for(int i=0;i<10;i++)
{
scanf("%d",&a[i]);
}
for(int j=0;j<10;j++)
for(int k=j+1;k<10;k++)
if(a[j]<=a[k])
{
t=a[k];
a[k]=a[j];
a[j]=t;
}
printf("去除最高分和最低分后分数为\n");
for(i=1;i<9;i++)
{
printf("%d ",a[i]);
}
return 0;
}
第3个回答  2010-07-11
先用int定义一个变量 用scanf函数实现输入并且出入定义变量中 再用if函数判断 最后printf输出相关信息 大概流程是这样 具体的自己编译 自己做的才是自己的东西 光是抄袭代码 没有任何意义!!

C语言程序设计题:求素数的个数
先编写一个判断素数的函数,类型为bool型 bool Isprime(int number){ for (int i = 2; i < number; i++)if (number mod i != 0)return false;return true;} 上面的代码还可以继续优化,只是给你提供个思路 然后在主函数里面循环调用这个函数 比如数组num[N] 循环N次,将num[i] 作为参数...

从键盘上输入一个整数,用fun函数判断是否为素数,然后在main函数中输出相...
int num;cout << "请输入一个整数:";cin >> num;if (fun(num))cout << num << "是素数" << endl;else cout << num << "不是素数" << endl;return 0;}

从键盘输入一个整数,调用函数fun判断其是否素数然后在main函数中输出相...
if (num % i == 0) { return 0; \/\/ 能够整除的数不是素数 } } return 1; \/\/ 其他情况下为素数 } 程序通过从键盘输入一个整数,调用fun函数进行素数判断,然后在main函数中输出相应的结果。fun函数接受一个整数作为输入,通过遍历从2到该数的平方根之间的所有数,判断是否能够整除,从而确定...

C语言 判断m是否素数。
为了判断一个数字m是否为素数,我们编写了一个C语言程序。首先,通过`scanf`函数获取用户输入的整数m。接下来,程序计算出m的平方根并存储在变量k中,这是因为对于任何大于1的整数m,如果它不是素数,那么它一定能被小于或等于其平方根的数整除。使用一个for循环,从i=2开始,循环到i=k+1,这是因...

如何用C++写一个关于判断一个数是否为素数的程序!
#include"math.h"usingnamespacestd;boolisPrime(intnumber){ for(int i=2;i*i<=number;i++)if(number %i==0)return false;return true;} void printNum(intnumber){//打印出<=number的所有质数 int j=0;for(inti=2;i<=number;i++)if(isPrimeNumber...

c语言如何输出素数?
第一种方法就是用1到100之间的每个数字,除以2到其本身前面的那一个数字,如果此过程中出现整除的现象,则该数不是素数。如果没有整除的现象,则该数为素数输出。代码如下#include<stdio.h> int main(){ int i = 0;int count = 0;for (i = 1; i <= 100; i++){ int j = 0;for (...

编写一个函数isprime,用于判断其参数num是否是素数,并输出相应信息
int isprime(int num){ if (num > 1){ int j;for (j = 2; j <= (int)sqrt(num); j++)if (num % j == 0) return 0;\/*如果能被小于num的平方根的数(>2)整除,说明不是素数*\/ return 1;\/*历遍后还不能整除,说明是素数*\/ } else return 0;\/*如果小于或等于1,不是素数...

用C语言编写一个程序输出3到100间的素数
举报| 答案纠错 | 评论(1) 2 5 hongmeinv11 采纳率:50% 擅长: 暂未定制 其他回答 #include <stdio.h>#define N 100void main(){ int k; printf("3到100间的素数为:\\n"); for (int j=3;j<N;j++) { k=0; for(int i=2;i<j;i++) if(j%i==0) k=1; if(k==0) printf("%d...

C语言中素数的判断方法
介绍三种使用C语言来判断素数的方法,以及用做素数表来判断找素数的方法。

用C语言输入一个正整数m,判断它是不是素数,每组输入三个数?
函数用于判断一个正整数是否为素数。在`main`函数中,通过`scanf`函数连续输入多组三个数(m、n和p),并逐个调用`is_prime`函数进行判断。最后,根据结果输出相应的信息。注意,`scanf`函数与`printf`函数类似,都是C语言标准库提供的函数。通过使用`%d`格式化字符串,可以读取或输出一个整数。

相似回答