1,学生番号が偶数の人は小さい順(昇順)に並べ替える。
2,学生番号が奇数の人は大きい順(降順)に並べ替える。
という課題が出されました。
ある一部分を各自作成しなくてはならないのですが、
C言語にはまったく自信がありません。
以下のプログラムが何をやっているのかさえ理解できません。
かなりの問題児ですが、よろしくお願いします。
/************
sort 10 data
*************/
#include<stdio.h>
#define MAX 10
void inputnum(int num[/url]);
void sortnum(int num[/url]);
void outputnum(int num[/url]);
main(){
int num[MAX];
inputnum(num);
sortnum(num);
outputnum(num);
return(0);
}
/***********************
input 10 numbers to arry
***********************/
void inputnum(int num[/url]){
int i;
for(i=0;i<MAX;i++){
printf("数値%d"=",i+1);
scanf("%d",&num);
}
printf("数値入力完了\n");
}
/*************
sort 10 number
*************/
#define FON 1
#define FOFF 0
void sortnum(int num[/url]){
int i;
int sflg;/*sort flag*/
int work;/*work area for sorting*/
sflg=FON;/* sort flag on */
while(sflg){
sflg=FOFF;/*sort sflg off */
for(i=0;i<MAX-1;i++){
if(num>num[i+1]){
以下からが各自考えるところです。
自分なりに作ってみましたが、さっぱりです。
手直ししていただけると嬉しいです。
work=num[n];
num[n]=num[n+1];
num[n+1]=work;
}
}
printf("並べ替え完了\n");
}
/*************************
output 10 number from arry
*************************/
void outputnum(int num[/url]){
int i;
for(i=0;<MAX;i++){
printf("数値%d=%d\n",i+1,num);
}
printf("数値出力完了\n");
}