#include<stdio.h> #include<stdlib.h> #define N 10 struct Student { int num; int score; }; void sortByChoose(struct Student *pData,int n); int main(void) { struct Student data[10],*p; int i; for(p=data,i=0;i<N;i++) { scanf("%d %d",&p->num,&p->score); p++; } sortByChoose(data,N); for (p=data,i=0;i<N;i++) { printf("%2d-%-5d", p->num, p->score); p++; } return 0; } void sortByChoose(struct Student *pData,int n) { struct Student *p1,*p2,p; int num, score,i,j; for(p1=pData;p1<pData+n-1;p1++) { / 请在这里填写答案 */ } }用选择排序补全代码
时间: 2024-01-18 07:04:34 浏览: 27
void sortByChoose(struct Student *pData,int n) {
struct Student *p1,*p2,p;
int num, score,i,j;
for(p1=pData;p1<pData+n-1;p1++) {
p2 = p1 + 1;
for(j=i+1;j<N;j++) {
if(p2->score < p1->score) {
p = *p1;
*p1 = *p2;
*p2 = p;
}
p2++;
}
}
}
相关问题
#include <stdio.h> #include <stdlib.h> #define MAXSIZE 100 typedef int ElemType; typedef struct
这段代码是C语言中的头文件引用和一些定义的示例。其中,`#include <stdio.h>`和`#include <stdlib.h>`是用来引入标准库函数的头文件。`stdio.h`包含了输入输出相关的函数,如`printf`和`scanf`;`stdlib.h`包含了一些常用的函数,如内存分配函数`malloc`和随机数生成函数`rand`。
`#define MAXSIZE 100`是一个宏定义,用来定义一个常量`MAXSIZE`,它的值为100。
`typedef int ElemType;`是用来给`int`类型起一个别名`ElemType`,方便在代码中使用。
至于代码中的结构体部分,由于你没有提供完整的代码,所以无法给出具体的解释。但一般来说,结构体用于定义一种自定义的数据类型,可以包含多个不同类型的成员变量。
#include <stdio.h> #include <windows.h> #include <stdlib.h> #define LEN sizeof(struct Student)
这段代码包含了三个常用的C语言头文件:`stdio.h`用于输入输出操作,`windows.h`通常与Windows API交互相关,而`stdlib.h`提供了标准库函数,如内存管理。
`#define LEN sizeof(struct Student)` 是一个预处理器宏定义,它将计算`struct Student`结构体的大小,并将其赋值给名为LEN的常量。这样,在程序中可以直接使用`LEN`代替`sizeof(struct Student)`来避免在每个使用该结构体大小的地方重复计算。
结构体(struct)`Student`没有在这里直接定义,所以我们不清楚它的具体内容。如果`struct Student`中有变量或成员函数,它的大小会包括这些元素的总和。