c语言排序实验题

1问题:对学生的整体结构体信息进行整体排序

#include<stdio.h>

#define n 3

int i,j,k,t;

void input(int *p)

{

for(i=0;i<n;i++)

{

printf("请输入第%d名学生的年龄:",i+1);

scanf("%d",(p+i));

}

printf("\n则原先3名学生的年龄为:\n");

for(i=0;i<n;i++)

{

printf("%d\t",*(p+i));

}

}

void paixu(int *p)

{

int *a,*b;

for(i=0;i<n-1;i++)

{

k=i;

for(j=i+1;j<n;j++)

{

a=(p+i);

b=(p+j);

if(*(p+i)>*(p+j)) k=j;

}

if(k!=i)

{

t=*a;

*a=*b;

*b=t;

}

}

}

void output(int *p)

{

printf("\n则后来3名学生的年龄按照升序排序为:\n");

for(i=0;i<n;i++)

{

printf("%d\t",*(p+i));

}

}

int main()

{

int arr[3],*p=arr;

input(p);

paixu(p);

output(p);

return 0;

}

2#include<stdio.h>

#include<string.h>

#define n 3

int i,j,t,m;

void input(char brr[n][20])

{

for(i=0;i<n;i++)

{

printf("请输入第%d名学生的姓名:",i+1);

gets(brr[i]);

printf("\n");

}

}

void swap(char brr[n][20])

{

char s[200];

int k;

for(i=0;i<n-1;i++)

{

k=i;

for(j=i+1;j<n;j++)

{

if(strcmp(brr[i],brr[j])>0) k=j;

}

if(k!=i)

{

strcpy(s,brr[i]);

strcpy(brr[i],brr[j]);

strcpy(brr[j],s);

}

}

}

void output(char brr[n][20])

{

printf("按照升序为:");

for(i=0;i<n+1;i++)

{

printf("%s\t",brr[i]);

}

}

int main()

{

char arr[n][20],(*p)[20];

p=arr;

input(p);

swap(p);

output(p);

return 0;

}

3#include<stdio.h>

#define n 2

int i,j;

void input(double arr[])

{

for(i=0;i<n;i++)

{

printf("请输入第%d名学生的成绩:",i+1);

scanf("%lf",&arr[i]);

}

}

void sort(double arr[])

{

int k;

double t;

for(i=0;i<n-1;i++)

{

k=i;

for(j=i+1;j<n;j++)

{

if(arr[i]>arr[j]) k=j;

}

if(k!=i)

{

t=arr[i];

arr[i]=arr[j];

arr[j]=t;

}

}

}

void output(double arr[])

{

printf("按照升序输出为:");

for(i=0;i<n;i++)

{

printf("%f\t",arr[i]);

}

}

int main()

{

double arr[n],*p=arr;

input(p);

sort(p);

output(p);

}

4筛选法求素数

相关推荐
Xの哲學28 分钟前
Perf使用详解
linux·网络·网络协议·算法·架构
奶黄小甜包33 分钟前
C语言零基础第18讲:自定义类型—结构体
c语言·数据结构·笔记·学习
想不明白的过度思考者38 分钟前
数据结构(排序篇)——七大排序算法奇幻之旅:从扑克牌到百亿数据的魔法整理术
数据结构·算法·排序算法
小七rrrrr44 分钟前
动态规划法 - 53. 最大子数组和
java·算法·动态规划
艾小码1 小时前
JavaScript 排序完全指南:从基础到高阶实战
前端·javascript·排序算法
code小毛孩1 小时前
leetcodehot100 矩阵置零
算法
一支闲人1 小时前
C语言相关简单数据结构:双向链表
c语言·数据结构·链表·基础知识·适用于新手小白
何妨重温wdys1 小时前
矩阵链相乘的最少乘法次数(动态规划解法)
c++·算法·矩阵·动态规划
姜不吃葱1 小时前
【力扣热题100】双指针—— 接雨水
数据结构·算法·leetcode·力扣热题100
PineappleCoder1 小时前
大小写 + 标点全搞定!JS 如何精准统计单词频率?
前端·javascript·算法