アプリ版:「スタンプのみでお礼する」機能のリリースについて

コンピュータに10個のてきとうな数字を入力させ
それを、小さい順に並べ替えるプログラムです。
以下のようにしたのですが、エラー0 警告0 なのに動きません。
どこが違うのでしょうか?

#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;

const int NUM_ELEMENTS=10;

void sort(int*);
void generation(int*);
void exchange(int&,int&);

void sort(int* a){
int min, locate, i, j;

for(i=0; i<NUM_ELEMENTS-1; i++){
min = a[i];
locate = i;
for(j=i; j<NUM_ELEMENTS; j++){
if(min > a[j]){
min = a[j];
locate = j;
}
}
exchange(a[i],a[locate]);
}
}

void generation(int* a){
int i;
srand(time(NULL));

for(i=0; i<NUM_ELEMENTS; i++){
a[i] = rand();
}
}

void exchange(int& a,int& b){
int t;
t=a;
a=b;
b=t;
}


int main(){
int data[NUM_ELEMENTS];
generation(data);
sort(data);
return 0;
}

A 回答 (4件)

> プログラムの実行をすると、背景が黒い画面になりますよね?


> そこに、Press any key to continue
> と表示されます。
これは恐らく正常に動作している状態だと思います。
chi-nao_chanさんのプログラムは、要約すると、
1.何も入力を受付けず
2.いくつかの数値を自動生成して
3.その数値をソートし、
4.何も出力(表示)せずに
5.終了する
プログラムなのです。
これでは、画面を眺めても何をしているか分かりません。
出力についてはterra5さんの回答で良いと思います。
入力については(自動生成で良いのならば修正の必要はありませんが、
質問は「入力」となっているので)いくつかのやり方がありますが、例えば
 for(i=0; i<NUM_ELEMENTS; i++){
  scanf("%d",&data[i]);
 }
のようにすればできます。
    • good
    • 0
この回答へのお礼

はい・・・。
ありがとうございました。

いろんな文字や記号が出てきて・・・
爆発寸前です(笑)

お礼日時:2002/05/29 13:07

動いていますが、結果を画面に表示させる部分が無いため


画面上には何も出ません。
やりたいことを全て書かないとコンピュータは
何もしてくれません(^^;

例えば,sort(data);の次あたりに
int i;
for ( i=0 ; i<NUM_ELEMENTS ; i++ )
printf("data[%d] = %d\n",i,data[i]);
のような物が必要です。
    • good
    • 0
この回答へのお礼

現在、どの構文が何をしてくれるのか
混乱中です・・・。

なんで、そうなるの??
ということだらけで・・・。
がんばって勉強します。

ありがとうございました。

お礼日時:2002/05/29 13:05

回答します、出入力関数ってもしかすると、


いやもしかしなくて、
#include<stdio.h>
のことだと思います。
これがなければ出入力ができません。
これは一番上にかけばいいです。
    • good
    • 0
この回答へのお礼

ありがとうございました。
amuro_78さんが回答してくださったように一番上に
#include<stdio.h>をかいたのですが、
結果は変わりませんでした。
ほかに何か必要なものとかありますか?

お礼日時:2002/05/28 11:54

動かないとはどういう状態でしょう。


見たところ、入出力に関する関数が見当たりませんが。
    • good
    • 0
この回答へのお礼

プログラムの実行をすると、背景が黒い画面になりますよね?
そこに、Press any key to continue
と表示されます。

入出力に関する関数とはどこにかくのですか?

お礼日時:2002/05/28 11:34

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!