C语言题目:键盘随机输入5个数,请从大到小排列输出,并输出其中所有的素数?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言题目:键盘随机输入5个数,请从大到小排列输出,并输出其中所有的素数?相关的知识,希望对你有一定的参考价值。
参考技术A 您好,非常荣幸能在此回答您的问题。以下是我对此问题的部分见解,若有错误,欢迎指出。12
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include<stdio.h>
#define N 5 //定义要排序的个数N为5个
main() //主程序开始
int a[N],i,j,temp; //定义数组a,变量i,j和中间存储变量temp
printf("please input %d numbers\n",N); //输出文本,"请输入N个数字(此处N=5)"
for(i=0;i<N;i++) //循环语句,利用i循环将N个数存入数组a[i]
scanf("%d",&a[i]);
for(i=0;i<N-1;i++)
for(j=0;j<N-1-i;j++)
if(a[j]<a[j+1]) //如果前一个数a[j]大于后一个数a[j+1],则2个数互换位置,否则不作任何操作
temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
printf("the array after sort:\n");
for(i=0;i<N;i++)
printf("%5d",a[i]); //输出数组a[i]的值
非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!追问
输出素数的程序有吗
用c程序如何对从键盘输入的3个数进行从大到小的排列,谢谢大侠!
#include<stdio.h>
void main()
int a[3],t,i,j;
printf("请输入需要排序的三个整数\\n");
for(i=0;i<3;i++)
scanf("%d",&a[i]);
for(j=1;j<3;j++)
for(i=1;i<4-j;i++)
if(a[i]>a[i-1])
t=a[i];a[i]=a[i-1];a[i-1]=t;
printf("按从大到小的顺序排列结果是:\\n");
for(i=0;i<3;i++)
printf("%d ",a[i]);
printf("\\n");
参考技术A 有很多种方法,我就说最简单的方法。把这三个数赋值给一个整形数组,然后用sort()函数对数组排序,再输出。追问
如果只用if和if else语句呢
本回答被提问者采纳 参考技术B ;#include <string>
using namespace std; //以上为引用头文件
int main() //主函数
int i;
string str[5];
void sort(string s[]);
cout<<"Please input string:"<<endl;
for(i=0;i<=5;i++)
cin>>str[i]; sort(str); cout<<"The sorted string is:"<<endl;
for(i=0;i<5;i++)
cout<<str[i]<<" "; cout<<endl;
return 0;
void sort(string s[])
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1]) //对每个进行比较
temp=s[j];
s[j]=s[j+1];//把小的数放在前面
s[j+1]=temp;
是对的
以上是关于C语言题目:键盘随机输入5个数,请从大到小排列输出,并输出其中所有的素数?的主要内容,如果未能解决你的问题,请参考以下文章