• 締切済み

c言語のプログラミング

大学1年です。大学からプログラミングを勉強してます。c言語です。うちの学科は情報系の学科でプログラミング中心の学科です。ですが、はやくも僕はプログラミングに苦手意識を持ち始めています。中間テストも酷い点数で今度の期末テストも高得点をとらない限り単位を落とします。そんな状況なんですが、プログラミングの授業楽しみながらしているのでが、実力がなかなかつかなくて困ってます。ちなみに、ポインタや外部関数、局所関数あたりまで習いました。プログラミングを得意になるコツとかを教えてください。よろしくお願いします。

みんなの回答

  • a-saitoh
  • ベストアンサー率30% (524/1722)
回答No.2

大学1年や2年では、「まじめに努力すれば誰にでも出来る」といった初歩レベルのプログラミングしかしません。 すなわち、才能の有無が物を言うレベルではありません。 勉強の量と質の問題です。 ちゃんとプログラムの文法と意味を理解していますか? 闇雲にサンプルプログラムをアトランダムに書き換えてみているというようなことをしてたら、100年経っても上達しません。 大学のカリキュラムを最初からしっかり追っていってください。つまり、ちゃんと復習すること。 あと、アーキテクチャとか情報論、計算論などの関連専門科目もしっかり勉強すると、C言語がよりよく使いこなせます。

noname#43107
noname#43107
回答No.1

(1) 手を動かす。数をこなす。  スポーツでも料理でも、本やネットを読めば一つの参考にはなります。でも上手くなるには練習しかない。プログラミングでも同じです。稚拙でも小規模でもいいから作ってみることです。 (2) 既存のプログラムを参考にする。改造する。  と言っても、まったくのゼロから作り上げるのはハードルが高いので、まずは既存のプログラムをそのまま入力してみましょう。  大学のテキストでも、本やネットでも構いません。  これの効用は、プログラミングの定石というか「よく使う汎用的な構文」を学べること。これが身に付けばプログラミングの効率は段違いに上がります。  また、入力して動かしてみたら、これまでに覚えた知識を生かして少しづつ改造実験してみましょう。たとえば「この局所関数からstaticを取ったら何がおきるのか?」のように。元のプログラムが正しいと分かっているので安心感があります。 (3) バグを恐れない  バグは付き物です。どんなに優秀なプログラマーでも、バグをまったく出さない人はいません。  そしてバグには必ず原因があります。それを放り出さずに一つ解くたびに大きくスキルが上がるでしょう。

関連するQ&A

  • C言語プログラミング

    物理学科です。大学院進学を考えています。 C言語プログラミングはどういうときに使うんですか? 覚える価値はありますか?

  • 中間、期末テストと実力テストの差

    千葉県の三学区内に住んでいる中三の受験生です 私は学校の中間、期末のテストと実力テストの差がものすごくあります中間、期末の順位は5科が110位くらいなのに実力テストは60位~80位です。一番嫌いな英語の点数は中間、期末は30点以下なのに実力テストは60点ぐらい取れます。残りの4科の点数は国語は中間、期末が50点くらいで実力テストは60点くらいで、数学は中間、期末と実力テストの差はなくどちらも大体60点くらい取れます。理科は1分野と2分野でかなり違いますが大体50点くらいで実力テストは60点くらいで、社会は中間、期末と実力テストの差はあまりなくどちらも80点以上取れます。 通知表は英語が2で社会が4であとは全部3で9科は音楽が4ぐらいです。あとは一年の時税の標語が国で入選したくらいです。 私は柏中央に行きたいと思っています。このままでは行けないのは分かりますでも二学期がんばれば行けるんでしょうか?また通知表はどのくらい取れれば良いんでしょうか?

  • プログラミングテクニックについて(C言語).

    こんにちは.私は,大学でアプリケーションソフトをつくる作業を研究の一環としてやっています.C言語でコードを書いているのですが,計算処理の高速化を 実現したいと切に願っております. 例えば,以下のように2つの関数main とTest,があるとします. そのとき,Testは計算結果を返さないとします. #define MAX 100 void Test(i,j data); int main(void) { double data[MAX][3] for (i = 0; i <= MAX; i++ ){ for (j = 0; j <= MAX; j++){ // Test(i,j data); } } return 0; } この場合,毎回Test関数を呼ぶたびにdata配列を指すポインタを 渡し,さらにTest()関数内に定義されているローカル変数用のメモリ領域も 確保されます. ということは,処理を高速化するためには なるべくTest関数内の変数を できるだけへらせばいいのでしょうか? みなさんがプログラムを組むときに留意されているテクニックを 教えて頂きたいです. できればVC++ver6.0でのデバックツールをどのように つかってバグフィクスしておられるのかうかがいたいです. 以上、よろしく御願い致します.

  • C言語の問題

    C言語を勉強している初心者です。大学の課題なのですが、よくわかりません。 5人分の名前と点数を入力し、点数の良い順に並べ替えよ。並べ替えの部分には関数(配列またはポインタ)を使用すること。 点数を入力させるのは分かるのですが、同時に名前の文字列を入力させるのがわかりません。 ソートも名前と点数を同時に並べ替えるやり方がわかりません。 宜しくお願いします。何分、初心者なので…申し訳ありません。宜しくお願いします。

  • プログラミングの考え方が出来ません

    大学でC言語を習っていて、今も実験などでC言語のプログラミングをしなければならないのですが、なかなか思うようにプログラムが書けません。 いつも何回も友達や教授に聞かないと納得が出来ないし、とても時間がかかるので困っています。 情報系の学科なのでこれからも使うことになるだろうし、自分としてももっとプログラミングが出来るようになりたいと思っているのですが、良い勉強法などあれば教えてください。 今までちゃんとやったことのある言語はC言語のみで、大学では1年半C言語の授業がありました。 自分でプログラミングをしていて困ってしまうのは、主に条件分岐が複雑になってしまうときと、文字列の操作(ポインタ?)です。 今、3年後期なので4年次に研究室に配属されるまでにもっと出来るようになりたいのでよろしくお願いしますm(__)m

  • プログラミング言語の説明

    大学4年の者です.  プログラミング言語で作成したアプリケーションについての論文を作成しているのですが,プログラムの説明(変数や関数)についてはどのように説明を行えばよいでしょうか コメントを記載したソースコードを張り付ける方法も考えましたが,それだと文ではないだろうと考え辞めました. 関数の処理はかきつらねるべきなのか段落に番号を振ってわけるのかなど,同期にプログラミング言語を使った論文を書いている人がいないので困っています.

  • 実力テストの点が上がらない - 中3

    実力テストの点が上がらない - 中3 実力テストの点数がなかなか上がりません。 中間・期末テストなどの定期テストでは点数が取れるのですが、実力テストになると途端に下がってしまいます。 特に数学がネックになっています。(数学だけで15~20点くらい下がる) 計算よりも、図形の難問で引っかかってしまいます。 点数を少しでもアップさせる良い勉強法は無いでしょうか?

  • プログラミング言語C 参考書

    大学一年の者です。 大学の前期の授業でプログラミング言語Cの基礎を学び、 夏休みに自分なりに勉強をしようと思ったのですが どの参考書が自分に合っているのかわからず、質問いたしました。 授業で習ったこと ・四則計算 ・if while for 文 ・ソート ・関数の概念 ・ポインタの基礎 ・文字列の基礎 ・ファイルの入出力 です。 上記に関係する簡単なプログラムなら組むことができます。 ・入力した複数の数字をソートして表示する。 ・ファイルの中の小文字のアルファベットを大文字で表示する。など こんな自分に合った書籍がありましたら、アドバイスよろしくお願いいたします。 また 余談ですが 友人のプログラムは実行すると 日本語が表示されていました。 「桁数が足りていません。」「桁数が多すぎます」など これはASCIIコードか何か使用しているのでしょうか?? 長々となってしまいましたが よろしくお願いいたします。

  • C言語でプログラミングできるソフト(初心者)

    大学1年で今年から始めてプログラミング(C言語)を学ぶものです。 今のところif文やfor文、関数などの基本をかじった程度なのですが なんとか自分の家のパソコンでプログラミングを行いたいので、 何か良いソフトのようなものはないでしょうか?(有料でも構いません) 実際に文などが書けて、コンパイルし、結果を出力してくれるものです。 パソコン自体がまだ初心者なので、できればで良いのですが、分りやすいものをお願いします<m(__)m>

  • 最強のプログラミング言語は何でしょうか?

    大学4年生女子。数学系です。 プログラミングは素人で、今、pythonを勉強しています。 沢山あるプログラミング言語のことでお尋ねします。 「全国統一プログラミング王決定戦予選(https://atcoder.jp/contests/nikkei2019-qual/submissions?f.Task=&f.Language=&f.Status=&f.User=)」というサイトを見ていたら、たくさんの選手の方が参加しているのですが、 ・得点上位の人は殆どがC++ ・pythonは2.7.6も3.4.3も使われている のがわかります。ほかに知らない言語もたくさんあります。 プログラミング言語というのは、外国語みたいなものでいろいろ種類があるみたいですが、計算に適しているのって、C++とかなんでしょうか? 使っている人が多いのかもしれませんが。 最近本屋さんでもpython関係の本が多いみたいですが、勉強するのならC++の方やいいんでしょうか?