画面から入力した10この数の合計・平均を表示しなさい。ただし、合計・平均を求める処理は関数に定義しなさい。
#include <stdio.h>
int* calc(int*);
void main()
{
int w[10],result[2];
int i;
for(i=0;i<10;i++){
scanf("%d",&w);
}
result=calc(w);xs
printf("合計:%d\n",result[0]);
printf("平均: %d\n",result[1]);
}
int* calc(int w[/url]){
int sum,avg,i,result[2];
sum=0;
for(i=0;i<10;i++){
sum = sum + w;
}
result[0]=sum;
result[1]=sum/10;
return result;
}
学校の宿題です
-
管理人
Re:学校の宿題です
次からタグを使って字下げして下さいね。
詳しくは規約をご覧下さい。
アドレスを返したいのならポインタで受け取らないといけません。
int *p;
などを宣言し、pに入れてあげて下さい。
また、返しているのはローカル変数のアドレスで不適切です。
普通に配列を渡してやればいいのではないでしょうか?
以下にサンプルを書いておきます。この意味が理解できればこの課題も出来ると思います。
詳しくは規約をご覧下さい。
アドレスを返したいのならポインタで受け取らないといけません。
int *p;
などを宣言し、pに入れてあげて下さい。
また、返しているのはローカル変数のアドレスで不適切です。
普通に配列を渡してやればいいのではないでしょうか?
以下にサンプルを書いておきます。この意味が理解できればこの課題も出来ると思います。
#include <stdio.h>
void calc(int result[2], int input_dat[10]){
result[0]=input_dat[0];
result[1]=input_dat[9];
}
int main(void){
int result[2],input_dat[10]={0,1,2,3,4,5,6,7,8,9};
calc(result,input_dat);
printf("%d,%d\n",result[0],result[1]);
return 0;
} -
Haru
Re:学校の宿題です
もし管理人さんに提示して頂いた、サンプルが今は理解できないのであれば、
http://journal.mycom.co.jp/articles/200 ... index.html
ここを読んで見てください。
http://journal.mycom.co.jp/articles/200 ... index.html
ここを読んで見てください。