输入n个整数,按从小到大排序输出 要求输入输出均采用函数。 main 输入(input)排序(choose)输出(output)
void input(int **p, int &n)
{
scanf_s("%d", &n);
int *q = new int[n];
*p = q;
for (int i = 0; i < n; i++)
scanf_s("%d", &q[i]);
}
void choose(int *p, int n)
{
if(p == NULL || n== 0)
return;
int temp;
for (int i = 0; i < n - 1; i++)
{
for (int j = 0; j < n - i - 1; j++)
{
if (p[j] > p[j + 1])
{
temp = p[j];
p[j] = p[j + 1];
p[j + 1] = temp;
}
}
}
}
void output(int *p, int n)
{
if(p == NULL || n== 0)
return;
for (int i = 0; i < n; ++i)
printf("%d ", p[i]);
}
int main()
{
int *p = NULL;
int n = 0;
input(&p, n);
choose(p, n);
output(p, n);
if(p != NULL)
delete []p;
return 0;
}
/* Note:Your choice is C IDE */
#include "stdio.h"
//输入
void input(int a[10]){
int i;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
}
//冒泡排序
void choose(int a[10]){
int i,j,temp;
for(i=1;i<10;i++)
{
for(j=9;j>=i;j--)
{
if(a[j]<a[j-1]){
temp=a[j];
a[j]=a[j-1];
a[j-1]=temp;
}
}
}
}
//输出
void output(int a[10]){
int i;
for(i=0;i<10;i++)
printf("%d\t",a[i]);
}
void main()
{
int a[10];
//输入
input(a);
//冒泡排序
choose(a);
//输出
output(a);
}
代码如下:
如有帮助,请采纳一下,谢谢。
#include <stdio.h>
void input(int arry[],int &nsize)
{
printf("请输入数据的个数:");
scanf("%d",&nsize);
for (int i = 0; i < nsize; i++)
{
scanf("%d",&arry[i]);
}
}
void choose (int arr[], int len)
{
int temp;
int i, j;
for (i=0; i<len-1; i++)
{
for (j=0; j<len-1-i; j++)
{
if (arr[j] > arr[j+1])
{
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
void output(int arr[],int size)
{
for (int i = 0; i < size; i++)
{
if(i < size -1)
printf("%d ",arr[i]);
else
printf("%d",arr[i]);
}
}
int main()
{
int arry[100] = {0};
int nsize = 0;
input(arry,nsize);
choose(arry,nsize);
output(arry,nsize);
return 0;
}
#include "stdio.h"
int n,a[1000];
void input(){
int i;
scanf("%d",&n);
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
}
void choose(){
int i,j,t;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(a[i]<a[j]){
t=a[i];
a[i]=a[j];
a[j]=t;
}
}
}
}
void output(){
int i;
for(i=0;i<n;i++){
printf("%d ",a[i]);
}
}
int main(){
input();
choose();
output();
return 0;
}
#include "stdio.h"
//输入函数
void input(int a[10]){
int i;
printf("请输入10个整数:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
}
//排序函数
void choose(int a[10]){
int i,j,temp;
for(i=1;i<10;i++)
{
for(j=9;j>=i;j--)
{
if(a[j]<a[j-1]){
temp=a[j];
a[j]=a[j-1];
a[j-1]=temp;
}
}
}
}
//输出函数
void output(int a[10]){
int i;
printf("排序后的结果为:\n");
for(i=0;i<10;i++)
printf("%d\t",a[i]);
}
//主函数
void main()
{
int a[10];
//输入
input(a);
//排序
choose(a);
//输出
output(a);
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632