atwiki-logo
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このウィキの更新情報RSS
    • このウィキ新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡(不具合、障害など)
OIT Archive
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
OIT Archive
  • ウィキ募集バナー
  • 目安箱バナー
  • 操作ガイド
  • 新規作成
  • 編集する
  • 全ページ一覧
  • 登録/ログイン
ページ一覧
OIT Archive
  • 新規作成
  • 編集する
  • 登録/ログイン
  • 管理メニュー
管理メニュー
  • 新規作成
    • 新規ページ作成
    • 新規ページ作成(その他)
      • このページをコピーして新規ページ作成
      • このウィキ内の別ページをコピーして新規ページ作成
      • このページの子ページを作成
    • 新規ウィキ作成
  • 編集
    • ページ編集
    • ページ編集(簡易版)
    • ページ名変更
    • メニュー非表示でページ編集
    • ページの閲覧/編集権限変更
    • ページの編集モード変更
    • このページにファイルをアップロード
    • メニューを編集
    • 右メニューを編集
  • バージョン管理
    • 最新版変更点(差分)
    • 編集履歴(バックアップ)
    • アップロードファイル履歴
    • ページ操作履歴
  • ページ一覧
    • このウィキの全ページ一覧
    • このウィキのタグ一覧
    • このウィキのタグ一覧(更新順)
    • このページの全コメント一覧
    • このウィキの全コメント一覧
    • おまかせページ移動
  • RSS
    • このwikiの更新情報RSS
    • このwikiの新着ページRSS
  • ヘルプ
    • ご利用ガイド
    • Wiki初心者向けガイド(基本操作)
    • このウィキの管理者に連絡
    • 運営会社に連絡する(不具合、障害など)
  • atwiki
  • OIT Archive
  • C演習I 09

OIT Archive

C演習I 09

最終更新:2011年05月18日 00:47

oit-archive

- view
管理者のみ編集可
work91.c
  1. #include <stdio.h>
  2.  
  3. #define NUMBER 8
  4.  
  5. int main(void){
  6. int data[NUMBER];
  7. int i;
  8. int sum;
  9.  
  10. for (i=0; i<NUMBER; i++){
  11. scanf("%d", &data[i]);
  12. }
  13.  
  14. sum = 0;
  15. for (i=0; i<NUMBER; i++){
  16. sum = sum + data[i];
  17. }
  18. printf("平均: %f\n", (double)sum/NUMBER);
  19.  
  20. return 0;
  21. }
  22.  

work92.c
  1. #include <stdio.h>
  2.  
  3. #define N 10
  4.  
  5. int main(void){
  6. int a[N] = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90};
  7. int x, y;
  8. int tmp;
  9.  
  10. printf("整数xを入力してください: ");
  11. scanf("%d", &x);
  12.  
  13. printf("整数yを入力してください: ");
  14. scanf("%d", &y);
  15.  
  16. printf("交換前: a[%d]=%d, a[%d]=%d\n", x, a[x], y, a[y]);
  17.  
  18. tmp = a[x];
  19. a[x] = a[y];
  20. a[y] = tmp;
  21.  
  22. printf("交換後: a[%d]=%d, a[%d]=%d\n", x, a[x], y, a[y]);
  23.  
  24. return 0;
  25. }
  26.  

work93.c
  1. #include <stdio.h>
  2.  
  3. #define N 12
  4.  
  5. int main(void){
  6. int a[N] = {0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110};
  7. int i;
  8. int tmp;
  9.  
  10. printf("配列a = ");
  11. for (i=0; i<N; i++){
  12. printf("%3d ", a[i]);
  13. }
  14. printf("\n");
  15.  
  16. for (i=0; i<N-1-i; i++){
  17. printf("a[%d]とa[%d]を交換します\n", i, N-1-i);
  18. tmp = a[i];
  19. a[i] = a[N-1-i];
  20. a[N-1-i] = tmp;
  21. }
  22.  
  23. printf("配列a = ");
  24. for (i=0; i<N; i++){
  25. printf("%3d ", a[i]);
  26. }
  27. printf("\n");
  28.  
  29. return 0;
  30. }
  31.  

work94.c
  1. #include <stdio.h>
  2.  
  3. #define N 5
  4.  
  5. int main(void){
  6. int a[N] = {0, 10, 20, 30, 40};
  7. int b[N] = {0, 10, 20, 30, 40};
  8. int c[N] = {0, 10, 20, 30, 40};
  9. int i;
  10. int cnt;
  11. int tmp;
  12.  
  13. for (cnt=0; cnt<N; cnt++){
  14.  
  15. /* 配列aを左シフト */
  16. for (i=0; i<N-1; i++){
  17. a[i] = a[i+1];
  18. }
  19.  
  20. printf("%d回目: a = ", cnt+1);
  21. for (i=0; i<N; i++){
  22. printf("%2d ", a[i]);
  23. }
  24. printf("\n");
  25.  
  26.  
  27. /* 配列bを右シフト */
  28. for (i=N-1; i>=1; i--){
  29. b[i] = b[i-1];
  30. }
  31.  
  32. printf("%d回目: b = ", cnt+1);
  33. for (i=0; i<N; i++){
  34. printf("%2d ", b[i]);
  35. }
  36. printf("\n");
  37.  
  38. /* 配列cを循環右シフト */
  39. tmp = c[N-1];
  40. for (i=N-1; i>=1; i--){
  41. c[i] = c[i-1];
  42. }
  43. c[0] = tmp;
  44.  
  45. printf("%d回目: c = ", cnt+1);
  46. for (i=0; i<N; i++){
  47. printf("%2d ", c[i]);
  48. }
  49. printf("\n\n");
  50. }
  51. return 0;
  52. }
  53.  

work95.c
  1. #include <stdio.h>
  2. #define MAXSIZE 10
  3. int main(void){
  4. int a[MAXSIZE] = {10, 20, 30, 40, 50};
  5. int index; /* キーボードから入力した添字を格納 */
  6. int data; /* キーボードから入力した値を格納 */
  7. int i;
  8.  
  9. printf("a: ");
  10. for (i=0; i<MAXSIZE; i++){
  11. printf("[%d]=%d ", i, a[i]);
  12. }
  13. printf("\n\n");
  14.  
  15. /* 1回目の入力 */
  16. printf("index: ");
  17. scanf("%d", &index);
  18. printf("data: ");
  19. scanf("%d", &data);
  20. printf("a[%d]に%dを挿入します\n", index, data);
  21.  
  22. /* 挿入 */
  23. for (i=MAXSIZE-1; i>index-1; i--){
  24. a[i] = a[i-1];
  25. }
  26. a[index] = data;
  27.  
  28. printf("a: ");
  29. for (i=0; i<MAXSIZE; i++){
  30. printf("[%d]=%d ", i, a[i]);
  31. }
  32. printf("\n\n");
  33.  
  34. /* 2回目の入力 */
  35. printf("index: ");
  36. scanf("%d", &index);
  37. printf("a[%d]を削除します\n", index);
  38.  
  39. /* 削除 */
  40. for (i=index; i<MAXSIZE-1; i++){
  41. a[i] = a[i+1];
  42. }
  43. a[MAXSIZE-1] = 0;
  44.  
  45. printf("a: ");
  46. for (i=0; i<MAXSIZE; i++){
  47. printf("[%d]=%d ", i, a[i]);
  48. }
  49. printf("\n");
  50.  
  51. return 0;
  52. }
  53.  

work96.c
  1. #include <stdio.h>
  2. #define N 10
  3. int main(void){
  4. int a[N];
  5. int i, j;
  6. int min_index;
  7. int tmp;
  8.  
  9. for (i=0; i<N; i++){
  10. scanf("%d", &a[i]);
  11. }
  12.  
  13. /* iを0からN-1まで増やしながら,以下を繰り返す */
  14. for (i=0; i<N; i++){
  15.  
  16. /* a[i]?a[N-1]の中から最小値をもつ要素の添字を
  17.   見つけ,その添字をmin_indexに格納する */
  18. min_index = i;
  19. for (j=i; j<N; j++){
  20. if (a[j] < a[min_index]){
  21. min_index = j;
  22. }
  23. }
  24.  
  25. /* a[i]とa[min_index]を交換する */
  26. tmp = a[i];
  27. a[i] = a[min_index];
  28. a[min_index] = tmp;
  29. }
  30.  
  31. printf("配列a = ");
  32. for (i=0; i<N; i++){
  33. printf("%d ", a[i]);
  34. }
  35. printf("\n");
  36.  
  37. return 0;
  38. }
  39.  

work97.c
  1. #include <stdio.h>
  2.  
  3. #define N 8
  4.  
  5. int main(void){
  6. int data[N] = {10, 20, 30, 40, 50, 60, 70};
  7. int i;
  8. int tmp;
  9.  
  10. printf("data[%d]: ", N-1);
  11. scanf("%2d", &data[N-1]);
  12.  
  13. printf("挿入前: ");
  14. for (i=0; i<N; i++){
  15. printf("%d ", data[i]);
  16. }
  17. printf("\n");
  18.  
  19. tmp = data[N-1];
  20. for (i=N-2; i>=0 && tmp<data[i]; i--){
  21. data[i+1] = data[i];
  22. }
  23. data[i+1] = tmp;
  24.  
  25.  
  26. printf("挿入後: ");
  27. for (i=0; i<N; i++){
  28. printf("%d ", data[i]);
  29. }
  30. printf("\n");
  31.  
  32. return 0;
  33. }
  34.  

work98.c
  1. #include <stdio.h>
  2. #define N 10
  3. int main(void){
  4. int a[N];
  5. int i, j;
  6. int tmp;
  7.  
  8. for (i=0; i<N; i++){
  9. scanf("%d", &a[i]);
  10. }
  11.  
  12. /* 挿入ソート */
  13. for (i=1; i<N; i++){
  14. tmp = a[i];
  15. j=i-1;
  16. while (j>=0 && tmp<a[j]){
  17. a[j+1] = a[j];
  18. j--;
  19. }
  20. a[j+1] = tmp;
  21. }
  22.  
  23. printf("配列a = ");
  24. for (i=0; i<N; i++){
  25. printf("%d ", a[i]);
  26. }
  27. printf("\n");
  28.  
  29. return 0;
  30. }
  31.  

work99.c
  1. #include <stdio.h>
  2. #define N 8
  3. int main(void){
  4. int a[N][N]; /* N×N行列 */
  5. int b[N][N]; /* N×N行列 */
  6. int c[N][N]; /* N×N行列 */
  7. int i, j;
  8.  
  9. /* N×N行列の初期設定 */
  10. for (i=0; i<N; i++){
  11. for (j=0; j<N; j++){
  12. a[i][j] = i*N+j;
  13. b[i][j] = i+j;
  14. }
  15. }
  16.  
  17. /* 行列和の計算 */
  18. for (i=0; i<N; i++){
  19. for (j=0; j<N; j++){
  20. c[i][j] = a[i][j]+b[i][j];
  21. }
  22. }
  23.  
  24. for (i=0; i<N; i++){
  25. for (j=0; j<N; j++){
  26. printf("%3d ", c[i][j]);
  27. }
  28. printf("\n");
  29. }
  30. return 0;
  31. }
  32.  
「C演習I 09」をウィキ内検索
LINE
シェア
Tweet
OIT Archive
記事メニュー

MENU

  • TOP
+ C演習I
C演習I
  • 01
  • 02
  • 03
  • 04
  • 05
  • 06
  • 07
  • 08
  • 09
  • 10
  • 11
  • 12
  • 13
  • 14

+ Java
Java
  • 07

Network

ここを編集
記事メニュー2

2024-11-15

  • TOP/コメントログ

2011-06-04

  • Java演習 08
  • Java

2011-05-26

  • メニュー
  • Java演習 07

2011-05-18

  • Network
  • C演習I 10
  • C演習I 11
  • C演習I 12
  • C演習I 13
申し訳ありませんが、recent_ref プラグインは提供を終了し、ご利用いただけません。

合計: -
今日: -
昨日: -
TOP合計: -


ここを編集
人気記事ランキング
  1. C演習I
もっと見る
最近更新されたページ
  • 208日前

    TOP/コメントログ
  • 5121日前

    Java演習 08
  • 5121日前

    Java
  • 5130日前

    メニュー
  • 5130日前

    Java演習 07
  • 5139日前

    Network
  • 5139日前

    C演習I 10
  • 5139日前

    C演習I 11
  • 5139日前

    C演習I 12
  • 5139日前

    C演習I 13
もっと見る
人気記事ランキング
  1. C演習I
もっと見る
最近更新されたページ
  • 208日前

    TOP/コメントログ
  • 5121日前

    Java演習 08
  • 5121日前

    Java
  • 5130日前

    メニュー
  • 5130日前

    Java演習 07
  • 5139日前

    Network
  • 5139日前

    C演習I 10
  • 5139日前

    C演習I 11
  • 5139日前

    C演習I 12
  • 5139日前

    C演習I 13
もっと見る
ウィキ募集バナー
新規Wikiランキング

最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!

  1. MadTown GTA (Beta) まとめウィキ
  2. GTA5 MADTOWN(β)まとめウィキ
  3. R.E.P.O. 日本語解説Wiki
  4. シュガードール情報まとめウィキ
  5. SYNDUALITY Echo of Ada 攻略 ウィキ
  6. ドタバタ王子くん攻略サイト
  7. ガンダムGQuuuuuuX 乃木坂46部@wiki
  8. パズル&コンクエスト(Puzzles&Conquest)攻略Wiki
  9. ありふれた職業で世界最強 リベリオンソウル @ ウィキ
  10. Idol Showdown(アイドルショーダウン)日本 @ ウィキ
もっと見る
人気Wikiランキング

atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!

  1. アニヲタWiki(仮)
  2. ストグラ まとめ @ウィキ
  3. ゲームカタログ@Wiki ~名作からクソゲーまで~
  4. 初音ミク Wiki
  5. 発車メロディーwiki
  6. 検索してはいけない言葉 @ ウィキ
  7. 機動戦士ガンダム バトルオペレーション2攻略Wiki 3rd Season
  8. Grand Theft Auto V(グランドセフトオート5)GTA5 & GTAオンライン 情報・攻略wiki
  9. MadTown GTA (Beta) まとめウィキ
  10. 英傑大戦wiki
もっと見る
全体ページランキング

最近アクセスの多かったページランキングです。話題のページを見に行こう!

  1. 魔獣トゲイラ - バトルロイヤルR+α ファンフィクション(二次創作など)総合wiki
  2. 参加者一覧 - ストグラ まとめ @ウィキ
  3. 品川駅 - 発車メロディーwiki
  4. Famos Gray - ストグラ まとめ @ウィキ
  5. 参加者一覧 - MadTown GTA (Beta) まとめウィキ
  6. 発車メロディー変更履歴 - 発車メロディーwiki
  7. Lycoris - MadTown GTA (Beta) まとめウィキ
  8. オーバーモード/マスターモード(仮面ライダーガヴ) - アニヲタWiki(仮)
  9. FadeGate - ストグラ まとめ @ウィキ
  10. ぶんぶんギャング - MadTown GTA (Beta) まとめウィキ
もっと見る

  • このWikiのTOPへ
  • 全ページ一覧
  • アットウィキTOP
  • 利用規約
  • プライバシーポリシー

2019 AtWiki, Inc.