• 締切済み

C言語のプログラムに関する質問です。

C言語の初心者です。 i=0~nまでのデータch1[i]の中から、負の値の個数を抽出したい場合、どのようにプログラムを書けばよいでしょうか? よろしくお願いします。

みんなの回答

回答No.1

なにがわからんのかわからんですが... 個数 ← 0 for ( i = 0 ~ n ) {  if ( ch[i] が 負である ) {   個数 ← 個数 + 1  } }

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • C言語のプログラムの質問です

    C言語で負の値が入力されたときに処理を終了する条件でキーボードから繰り返し入力するためにはどのようなプログラムにしたらいいですか? (FOR文を使い、FOR文の繰り返し条件を入れないで繰り返す)

  • C言語のプログラムについて。

    C言語のプログラミングについて質問です。 入力されたデータの配列とデータ数を渡すと配列に格納された値を逆順にして、格納し直す関数reverse関数を書き結果を出力せよ、というものなのですが下のように書いたのですが、うまく作動しません。どこがいけないのでしょうか...?教えていただきたいです。 #include <stdio.h> void reverse(int *data[], int n); #define MAX 100 int main() { int data[MAX]; int n, i; scanf("%d", &n); if (n >= MAX) n = MAX; for (i = 0; i < n; i ++){ scanf("%d", &data[i]); } reverse(data, n); for (i = 0; i < n; i ++) { printf("%d\n", data[i]); } return 0; } void reverse(int *data[], int n) { int c, i; for (i = 0; i < n; i ++) { c = *data[i]; *data[i] = *data[n - (i + 1)]; *data[n - (i + 1)] = c; } }

  • C言語のプログラムに関する質問です。

    C言語初心者で困っています。 SNをサンプリング数、FNをファイル数として、テキストファイルの1行目のデータ(kari[0])と2行目のデータ(kari[1])をそれぞれCH1、CH2に読み込むような以下のようなプログラムがあります。 ------------------------------------------ //読込みファイル名の設定// for(j=1;j<FN+1;j++){ sprintf(file_name,"%s%d%s",file,j,".txt"); printf("%d%s\n",j,file_name); if ((fp = fopen(file_name, "r")) == NULL){ printf("Error: Can't open file; %s\n", file_name); } //データの読込み// for(i=0;i<SN;i++){ fscanf(fp,"%lf,%lf\n",&kari[0],&kari[1]); ch1[i]=kari[0]; ch2[i]=kari[1]; } fclose(fp);       ・       ・       ・ fclose(fp); } ---------------------------------------------- しかし、テキストファイルの初めの3行には不必要な文字列が存在するため、4行目から読み込むように設定したいのですが、やり方がよく分かりません。 どのようにプログラムを書き換えれば良いか、教えていただけると助かります。 よろしくお願いします。

  • C言語の質問です。

    プログラムを書こうとしているのですが、行き詰まるっているのでアドバイスください。 ○データ 0 0 1 2 2 3 4 5 5 5 8 8 10 10 ・ ・ ・ このような整数がだんだん増えていく(1万以上の整数まで増えていく)書式のデータがあるとします。 僕の作りたいプログラムは 一万個以上あるすべてのデータを読み込んで個数を出す。というものです。 言葉で表現するのが難しいので例を出しますと 最終的にほしいものは データをすべて読み込んで 同じ整数がない整数の個数 同じ整数が2つの整数の個数 同じ整数が3つの整数の個数      ・      ・ 同じ整数が10つの整数の個数      ・      ・    このような情報がほしいと考えています。 例のデータで考えますと 同じ整数がない整数 =3 同じ整数が2つの整数=4 同じ整数が3つの整数=1 になります。 私が考えているやり方の手順 (1) データを読み込む (2) 読み込んだ整数のそれぞれのすべての個数を出す。    例:1=2個 15=1個 289=3個  (3) 出した個数の数を数えて出力。 という流れです。 私が行き詰まっているプログラム int main(void) { int i, n, hako[?];  ←1万個以上あるので箱を何個用意すればいいかわかりません   // n は読み込んだデータ。 FILE *fp;         配列を使おうと思っているのですが。。。 fp=fopen("FILENAME","r"); ←データの読み込み if(fp==NULL) { printf("file open error!!\n"); exit(1); } for(i=1;i<?;i++);  ←すべての箱をゼロクリアしたいのですが箱の個数がわかりません hako[i]=0; while(fsacanf(fp, "%d\n", &n)!=EOF){ if(i>n){hako[i]++;}  if(i=n){ i++; hako[i]++; } printf("%d = %d\n", i ,hako[i]); } fclose(fp); return 0; } とりあえずは流れ(2)までのプログラムを書きたいと考えています。 配列が苦手なので混乱しています。 配列のhako[]のところで間違っていると思うのですがよくわからないので質問してみました どうぞよろしくお願いします。

  • C言語のプログラムについて質問です。

    C言語初心者で困っています。 テキストデータの上から3行分を飛ばして、4行目から読み込むようにするにはどのようなプログラムを書けば良いでしょうか? ちなみにデータは2列、100003行あります。 よろしくお願いします。

  • C言語のプログラムについて

    C言語初心者です if分を用いて aが2以上の場合には10 それ以外の場合にはbに100を代入して bの値を画面に表示するプログラムを作成したいです 書き方が分からないので 作成方法を教えていただきたいです よろしくお願いします

  • 変換プログラムってどうやって作るのですか??c言語超初心者です。おねがいしますm(__)m

    大学の課題で、「カレンダのデータをiモードで見れるようにする変換プログラムを作りなさい」というのが出されたのですが、正直なんのことだかさっぱりわかりません(汗) 私なりに一生懸命考えた限りはこうです▽ ・文字コード変換プログラムをつくればいいのかな? ・もしくは、データベースをiモードでみれるようにするようにタグを付け加えていくプログラムかな? 環境はUNIXのC言語です。 c言語はまったくの初心者なので文字コード変換プログラムとかもつくれないです。どうか助けてください。

  • プログラミングの問題です。c言語でお願いします。

    プログラミングの質問です。 c言語でお願いします。 以下の結果が得られるようなプログラムを書いてください。 期末試験では必ずフローチャートを書いてください。また、フローチャートが 書けない場合は、どういう順番でプログラムを書けば よいかを書いてください。 100個のデータを入力させ、プログラム実行者が定めるある値以上のものの個数 を表示する。 プログラミングわからないのでお願いします。

  • C言語プログラムの課題

    大学で以下のような課題が出ました。でも全然わかりません。わかる方がいらっしゃったら、是非教えてほしいです★ 1整数値123を変数iに代入して、iの値を表示するプログラムを作成せよ。 2実数値3.14159を変数xに代入して、xの値を表示するプログラムを作成せよ。 3文字型せーた'A'を変数chに代入して、chの値を表示するプログラムを作成せよ。ただし、chの値を表示する際には、%d,%x,%cの書式を用いること。 4キーボードから入力された2つの整数値i,jの値を画面に表示するプログラムを作成せよ。 5キーボードから2つの整数値を、変数in1とin2に入力して、以下の計算をした結果を画面に表示するプログラムを作成せよ。 in1+in2= in1-in2= in1*in2= in1/in2= in1%in2=

  • C言語では0は・・・

    C言語では0をif文などで判定するときに 負の値になったら・・・という問題のときに 0は負の値に入るんでしょうか? それとも単純に-1とやるべきなのでしょうか コンパイルするとif(a<0)などでは0はもちろん含まないのですが -1にすると負の値として扱っているように見えるのですが、実際のところどうなんでしょうか もし負の値を入力されたら、というときに-1でいいのか0なのか。 ご回答お待ちしております