• 締切済み

【至急】C言語のプログラミングについての質問です。

【至急】C言語のプログラミングについての質問です。 以下の5問の解答をお願い致します。 問1. サイズ3の2つの配列の和、差、内積を出力するプログラムを作成してください。 問2. m+1*n+1行列の配列aの 各行ごとの合計 gyouwa[i] i=0,1,・・・,m 各列ごとの合計 retuwa[i] i=0,1,・・・,n を計算するプログラムを作作成してください。 また、 各行内での最大値 aimax[i] i=0,1,・・・,m 各列内での最大値 ajmax[i] i=0,1,・・・,n を求めるプログラムを作成してください。 問3. 下のプログラムの[____]を埋めてください。ヒント:a,p,*p,p++,p=a,*p=a,*p++,(*p)++のいずれかが入ります。 #include<stadio.h> int main(void) { int a[5]={1,2,34,5,}; int i,+p; [____]; prntf("先頭のアドレスは%dです。\n",p); for(i=0;i<5;i++){ prntf("アドレス%dに%dが格納されています。\n"[____],[____]); [___]; } return0; } 問4. 下のプログラムの[____]を埋めてください。ヒント:p,*p,p=a,p=a[0],*p++,(*p)++のいずれかが入ります。 #include<stadio.h> int main(void) { int i; char *a[5],*p; a[0]="Hello"; a[1]="Good morning"; a[2]="Good evening"; a[3]="Good night"; a[4]="Bye Bye"; [____]; for(i=0;i<50;i++){ prntf("アドレス%dに%cが格納されています。\n"[____],[____]); [___]; } return0; } 問5. まず3つの整数知値(たとえば2,3,1)を書いたfile1という名前のテキストファイルを作成してください。 数値をカンマ(,)で区切って並べることで、複数の変数をfscanfで読み込むことが可能(CVS形式)となります。 このファイルから数値を読み込み、合計をファイルfile2に書き込むプログラムkaitou.cを作成してください。

みんなの回答

  • oo5goo
  • ベストアンサー率29% (9/31)
回答No.1

よく分からないですが、問題ってこれで合ってますか? 何か写し間違えてないですか?

関連するQ&A

  • 【至急】C言語のプログラミングについての質問です。

    【至急】C言語のプログラミングについての質問です。 以下の5問の解答をお願い致します。 問1. サイズ3の2つの配列の和、差、内積を出力するプログラムを作成してください。 問2. m+1*n+1行列の配列aの 各行ごとの合計 gyouwa[i] i=0,1,・・・,m 各列ごとの合計 retuwa[i] i=0,1,・・・,n を計算するプログラムを作作成してください。 また、 各行内での最大値 aimax[i] i=0,1,・・・,m 各列内での最大値 ajmax[i] i=0,1,・・・,n を求めるプログラムを作成してください。 問3. 下のプログラムの[____]を埋めてください。ヒント:a,p,*p,p++,p=a,*p=a,*p++,(*p)++のいずれかが入ります。 #include<stadio.h> int main(void) { int a[5]={1,2,34,5,}; int i,+p; [____]; prntf("先頭のアドレスは%dです。\n",p); for(i=0;i<5;i++){ prntf("アドレス%dに%dが格納されています。\n"[____],[____]); [___]; } return0; } 問4. 下のプログラムの[____]を埋めてください。ヒント:p,*p,p=a,p=a[0],*p++,(*p)++のいずれかが入ります。 #include<stadio.h> int main(void) { int i; char *a[5],*p; a[0]="Hello"; a[1]="Good morning"; a[2]="Good evening"; a[3]="Good night"; a[4]="Bye Bye"; [____]; for(i=0;i<50;i++){ prntf("アドレス%dに%cが格納されています。\n"[____],[____]); [___]; } return0; } 問5. まず3つの整数知値(たとえば2,3,1)を書いたfile1という名前のテキストファイルを作成してください。 数値をカンマ(,)で区切って並べることで、複数の変数をfscanfで読み込むことが可能(CVS形式)となります。 このファイルから数値を読み込み、合計をファイルfile2に書き込むプログラムkaitou.cを作成してください。

  • 【至急】C言語のプログラミングについての質問です。

    【至急】C言語のプログラミングについての質問です。 以下の3問の解答をお願い致します。 問1. 下のプログラムの[____]を埋めてください。ヒント:a,p,*p,p++,p=a,*p=a,*p++,(*p)++のいずれかが入ります。 #include<stadio.h> int main(void) { int a[5]={1,2,34,5,}; int i,+p; [____]; prntf("先頭のアドレスは%dです。\n",p); for(i=0;i<5;i++){ prntf("アドレス%dに%dが格納されています。\n"[____],[____]); [___]; } return0; } 問2. 下のプログラムの[____]を埋めてください。ヒント:p,*p,p=a,p=a[0],*p++,(*p)++のいずれかが入ります。 #include<stadio.h> int main(void) { int i; char *a[5],*p; a[0]="Hello"; a[1]="Good morning"; a[2]="Good evening"; a[3]="Good night"; a[4]="Bye Bye"; [____]; for(i=0;i<50;i++){ prntf("アドレス%dに%cが格納されています。\n"[____],[____]); [___]; } return0; } 問3. まず3つの整数知値(たとえば2,3,1)を書いたfile1という名前のテキストファイルを作成してください。 数値をカンマ(,)で区切って並べることで、複数の変数をfscanfで読み込むことが可能(CVS形式)となります。 このファイルから数値を読み込み、合計をファイルfile2に書き込むプログラムkaitou.cを作成してください。

  • 【至急】C言語のプログラミングについての質問です。

    【至急】C言語のプログラミングについての質問です。 以下の2問の解答をお願い致します。 問1. サイズ3の2つの配列の和、差、内積を出力するプログラムを作成してください。 問2. m+1*n+1行列の配列aの 各行ごとの合計 gyouwa[i] i=0,1,・・・,m 各列ごとの合計 retuwa[i] i=0,1,・・・,n を計算するプログラムを作作成してください。 また、 各行内での最大値 aimax[i] i=0,1,・・・,m 各列内での最大値 ajmax[i] i=0,1,・・・,n を求めるプログラムを作成してください。

  • C言語プログラミングについて

    皆さんのお力をお貸しください 問題 1~20番のナンバーの車が200週の耐久レースをする。ENTERKEYを押すたびにコースを一周するものとし、一周するごとに20台のうち一台がランダムに選ばれ、選ばれた車は1~6のランダムに選ばれた数字の数だけ順位を上げるプログラムをかいてください。 ※ただしグローバル変数、ポインタは使わずif,for,while,配列のみで書くこと。 実行結果は #(選ばれた車のナンバー)   over(抜いた台数) 現在の周回数( ) 順位 1   (車のナンバー)     2   (車のナンバー)     3   (車のナンバー)        ・        ・          ・                    ()の中身はenterを押すたびに変化する となるようにしてください ポインタありのサンプルプログラムは組めたのですが、※の条件が付けられて、戸惑っています。 恥を忍んで皆さんにお願い申し上げます。 以下、サンプル(インデントの狂いやコメントに関してはご容赦ください) #include <stdio.h> #include <stdlib.h> #include <time.h> #define my_rand(n) (int)((n) * (rand() / (RAND_MAX + 1.0))) void swap(int *a, int *b) { int c = *a; *a = *b; *b = c; } void up_rank(int a[], int m, int n) { while(n --){ if(!m --) break; swap(&a[m], &a[m + 1]); } } void print(int car[], int n) { int i; int j = 0; for(i = 0; i < n; ++ i) { j++; printf("[%2d] %d\n",j, car[i]); } /*putchar('\n');*/ } int main(void) { int car[] = {95,43,86,8,52,28,64,58,76,70,4,34,63,92,35,33,56,80,54,74},i;               //各車のナンバー。皆さんは1~20でかまいません srand((unsigned)time(NULL)); printf("Start\n"); print(car, 20); system("pause"); system("cls"); for(i = 0; i < 201; ++ i) { int c, m = my_rand(20), n = my_rand(6) + 1; if(i<200) { printf("#%d, Overtake +%d\n",car[m] , n); printf("raps = %d\n",i+1); } else { printf("Finishing Positions\n"); } up_rank(car, m, n); print(car, 20); system("pause"); system("cls"); } return 0; }

  • C言語でわからない問題があります

    下のプログラムのXXXの値なのですが、何を返すのかがわかりません プログラム(1)と(2)では、処理にどういう違いがあるのでしょうか、できれば教えてください プログラム(1) #include <stdio.h> #define N 5 //関数のプロトタイプ宣言 int min(int *p , int n); int main(void){ int data[N] = {15,34,28,12,33}; int index; //最小値の位置 index = min(data,N); printf("最小値はdata[%d]で%d\n" , index, data[index]); } int min(int *p , int n){ int *pmin; //最小値のアドレス int i; //カウンタ pmin = p; for(i = 1; i < n; i++){ if (*pmin > *(p+i)){ pmin = p+i; } } return XXX; } プログラム(2) #include <stdio.h> #define N 5 //関数のプロトタイプ宣言 int *min(int *p , int n); int main(void){ int data[N] = {15,34,28,12,33}; int *p; //最小値の位置 p = min(data,N); printf("最小値は%d\n" , *p); } int *min(int *p , int n){ int *pmin; //最小値のアドレス int i; //カウンタ pmin = p; for(i = 1; i < n; i++){ if (*pmin > *(p+i)){ pimn = p+i; } } return pmin; }

  • C言語のプログラミングで困っています

    C言語を勉強しています。まだまだ初心者で分からないことだらけなのですが、今回はファイル入出力の部分が分からず苦戦しています。 『100個の実数が入った2つのテキストファイルから数値を読み込み、  絶対値を求めるなどの計算をする』プログラムを作成しているのですが、 コンパイルし実行すると強制終了してしまいます。 プログラムは、 void main(void) { FILE *fp; double c[50000];   double d[50000];   double e[50000]; int n = 0;   int m = 0;   int i = 0;   char fname[80];   char fname2[80]; printf("ファイル名 : ");    gets(fname); if((fp = fopen(fname, "r")) == NULL){ printf("ファイルがオープンできません\n"); exit(1); } printf("\n"); while (fscanf(fp,"%lf",&c[i])!=EOF){ printf("%3d : %3lf",++n,c[i]); printf("\n"); i++; } printf("\n"); i=0; n=0; printf("ファイル名 : ");    gets(fname2); if((fp = fopen(fname2, "r")) == NULL){ printf("ファイルがオープンできません\n"); exit(1); } printf("\n"); while (fscanf(fp,"%lf",&d[i])!=EOF){ printf("%3d : %3lf",++n,d[i]); printf("\n"); i++; } …(以下計算) のようになっています。 整数のデータで計算を行うと、正常に動くのですが…。 コンパイルしてもエラーが出ないので、どこが悪いのかわからず困っています。 どなたか教えていただけないでしょうか。お願いしますm(_ _)m

  • C言語についてです。

    mのn乗を計算する関数power()を作成せよ. ただし,関数power()はm,nを引数とし, 戻り値としてmのn乗の値を返すものとする. m,nは,正整数とする.提出するプログラムには, 関数power()だけでなく,m,nを入力し, mのn乗を出力するメイン関数main()を含むものとする. main()は,power()の前に記述すること. また,power()のプロトタイプ宣言も記述する これについて、作ってみたのですが実行できません。 どこが間違ってるか教えてください。 #include<stdio.h> int power(int m, int n); int main() { int m,n; int a,sum; printf("整数を入力してください:"); scanf("%d",&m); printf("何乗しますか?"); sum = power(n,m); printf("%dの%d乗は%dです。\n",n,m,sum); } int power(int m, int n) { int a, kotae; kotae = 1; for(a=1; a<=n; a++) kotae = kotae * m; return kotae; }

  • C言語のプログラミングについてですが・・・

    初期値a を9 とし、a←3*a+4 で更新されるaを50 回分順に出力するプログラムをfor 文を利用して作成して下さい。 (漸化式a(i+1)=3*a(i)+4、初期値a(0)=9 で表される数列のa(0)~a(49)の値を順に求め、出力する) という問題がわかりません><; 実行結果が count=0 a=             9 count=1 a=            31    ・    ・    ・ count=49 a= 2632292621536793592856576 となるように作成するらしいのですが・・・。 一応私なりに #include<stdio.h> void main( ) { double a=9; int i; for(i=0; i<50; i++){ a=+3*a+4; printf("count=%d a=%.0lf\n",i,a); } } とやってみたのですが最初がa=31となってしまいます。 どなたか詳しい方教えてください。 よろしくお願いしますm( _ _ )m

  • C言語のプログラミング (基礎)教えてください。

    以下のような問題があります。 プログラムを作ってみたのですが、 コンパイルすると無限ループになったり、 正しく結果が出ません。 どのように直せば良いか教えていただけると助かります。 よろしくお願いします。 整数が入力される度に今までの合計を出力するプログラムを作成しなさい。なお、0 が入力されたら終了するものとする。 ただし、繰り返しの命令は while 文を使用し、条件は常に真 ( 1 ) とし、break 文を使うこと。 ▼実行例 整数:1     合計:1 整数:2     合計:3 整数:3     合計:6 整数:0 ******************************** #include<stdio.h> int main(void) { int n,sum; sum=0; while(1){ printf("¥n整数:"); scanf ("%d", &n); sum=sum+n; printf("¥n    合計:%d", sum); scanf ("%d", &sum);          if(n==0){ break;   } } }

  • C言語 プログラミングで行詰まりました…

    標準入力(キーボード)からi,jk,nの値を入力し、次の漸化式を計算し、X_0からX_nまで求めるプログラムを作成したいのですが、うまく表示されません。どかがおかしいのかご指摘お願いします。 <漸化式> X_n=(a+b)/X_(n-1) , X_0=c(n=0) ================================================================== #include<stdio.h> float f_X(int a,int b,float c) { float y; y=(a+b)/c; return y; } int main (void) { int number,i,j; float k,l,n,X; printf("i:"); scanf("%d", &i); printf("j:"); scanf("%d", &j); printf("k:"); scanf("%f", &k); printf("n:"); scanf("%f", &n); X=k; printf("X_0= %.6f\n",X); for(number=1;number<=n;number++) { l=f_X(i,j,X); printf("X_%d= %.6f \n",number,l); X=l; } return 0; } ===================================================================

専門家に質問してみよう