- 締切済み
C++で表を作成したいのです 初心者です
こんばんは。C++初心者です。 下に載せた表を表示したいです。 以下は、無知ながらに作成したプログラムです。 #include<stdio.h> main(void) { int i,j; int A[][]={{1,2,3,4,5,6,7}, {1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3}, {1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,1,1,1,1,1,1}, {1,1,1,1,1,1,1,1,1,2,2,3,2,2,3,1,1,1,1,1,2}, {2,2,3,2,2,3,2,2,3,3,3,3,3,3,3,2,2,2,2,3,3}, {2,2,3,2,2,3,2,3,3,3,4,4,3,4,4,3,3,4,2,3,4}, {3,3,4,2,2,3,3,3,3,3,4,4,4,4,4,4,4,4,2,3,4}, {1,1,1,1,1,1,1,1,2,3,3,3,4,4,4,4,4,4,2,3,4}, {2,2,3,1,1,1,1,1,2,4,4,4,4,4,4,3,3,3,1,1,1}, {2,2,3,1,1,1,2,3,3,4,4,4,4,4,4,4,4,4,1,1,1}, {2,3,3,2,2,3,2,2,3,4,4,4,4,4,4,4,4,4,2,3,4}, {3,3,4,2,3,4,3,3,4,4,4,4,4,4,4,4,4,4,2,3,4}, {4,4,4,2,3,4,3,3,4,4,4,4,4,4,4,4,4,4,2,3,4}}; i=3*(A-1)+(B-1); j=3*(C-1)+(D-1); XX=A[i][j]; ・・・と、中途半端かつ意味不明なプログラムに仕上がりました。 是非ヒントでも何でもいいので教えて下さい。 宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
関連するQ&A
- Borland C++を利用しているのですが、簡単なプログラムが実行できません。
Borland C++を利用しているのですが、簡単なプログラムが実行できません。 以下のようなプログラムをコンパイルして実行しようとしたのですが... #include <stdio.h> void main(void) { int i,j,k; i=1; j=2; k=i+j; printf( "k=%d,k); } Borland C++は、初めて使うのですが、C言語の勉強には使えないのでしょうか? もし使えるなら、どのようにすればよいのでしょうか?
- ベストアンサー
- C・C++・C#
- C++の問題についてです
5個の数字をキーボードから受け取って、その中に同じ数字があれば、画面にその旨報告する。 というプログラムを作っているのですが、自分で作った結果、 #include "stdafx.h" #include <stdio.h> int main(void) { int i, j, a; i = 0; do{ printf("値を入力してください:"); scanf("%d", &a[i]); for(j=0; j < 5; j++) { if(a == i) { printf("%dは同じ値があります。\n", a[i]); } } i++; } while(i<5); return 0; } となりました。 このプログラムで文法がおかしいというところがあれば教えていただけませんか? 自分で考えてみたものの、全然わかりませんでした。 使用しているソフトはVisual C++2005 Express Edition というソフトです。 どうかよろしくお願いします。
- ベストアンサー
- C・C++・C#
- C++ ポインタ初級
C++で、自作関数内でメインの数字をインクリメントします。 自作関数はVOIV型でやりたいんです。 #include <stdio.h> void plus( int * ); main( ){ int a = 1; int *&p = &a; plus( p ); printf( "%d" , *p ); } void plus( int *i ){ ( *i )++; } int型の変数を2つ宣言したけど、1つでやる方法はないですか? #include <stdio.h> void plus( int * ); main( ){ int a = 1; plus( &a ); // aのアドレスを渡して、 printf( "%d" , a ); } void plus( int *i ){ // アドレスの値を ( i )++; // インクリメントしたつもりだけど } 結果は1のままでした。
- ベストアンサー
- C・C++・C#
- C言語の問題で困っています。
C言語の問題で困っています。 誰か教えてください。 下の問題ですが、intがiだけでプログラムするにはどうしたら良いでしょうか? (a)から(d)に入るプログラムをすいませんが教えてください。 お願いします。 【問題】 1以上10以下の整数を昇順に区切って表示するプログラムです。 実行例 1 2 3 4 5 #include <stdio.h> int main (void) { int i; (A) while ((b)){ (c); (d); } printf("¥n"); return(0); }
- ベストアンサー
- C・C++・C#
- 現在、私はC言語を学んでいます。
現在、私はC言語を学んでいます。 プログラミングの初期の初期の問題なんですが、 「Hello World」という有名なプログラムがありますよね? それについての質問です。 #include<stdio.h> main() { printf("Hello World"); return 0; } も #include<stdio.h> main(void) { printf("Hello World"); return 0; } も #include<stdio.h> int main() { printf("Hello World"); } もちゃんと表示できます。 ここで質問です。 int main(void) int main() main() main(void) はどう違うんですか? あと、 return 0; はあっても無くてもいいようなんですが どういう意味があるんでしょうか?
- ベストアンサー
- その他(インターネット・Webサービス)
- C言語の初心者です。これを実行してみてください。
「a」って打ち込んだら「a」ってでましたか? #include<stdio.h> int main(void){ char a; printf("aaa\n"); scanf_s("%c", &a); printf("%c", a); return 0; }
- ベストアンサー
- C・C++・C#
- C言語についてなのですが・・・
さきほども上げたのですがカテゴリが間違っていたのでもう一回書き込みました まだプログラムの勉強をはじめた初心者なのですが、 テキストファイルから文字を読みこみ、大文字ならば小文字に変換し辞書順に並びかえるプログラムを作っているのですがどうしてもうまくいきません。 例えばtest.txtに XXX YYY YY XX BBB aaa aa BB とあれば aa aaa bb bbb xx xxx yy yyy と表示されるよにしたいんです。 自分が作ったプログラむはこれです。 まだテキストファイルからでなくキーボードからの入力になっていますが・・・ #include<stdio.h> #include<stdlib.h> #include<string.h> #include <ctype.h> int soto( const void *x, const void *y); int main(int argc, char *argv[]){ FILE *input; char str1[1000]; int i, j; for (i = 1; i < argc; i++){ qsort(argv[i], 1000, sizeof( char *), soto); strcpy(str1, argv[i]); for(j = 0; j < 100; j++){ str1[j] = tolower( str1[j] ); } printf("%s\n", str1); } return 0; } int soto( const void *a, const void *b){ char *x, *y; x = (char*)a; y = (char*)b; return x-y; } これだと小文字にはなるんですがソートされずに表示されてしまいます・・・ どのようにすればいけるのかご指摘のほどおねがいします
- 締切済み
- C・C++・C#
- C言語の問題で一部分からないところがあります。
C言語の問題で2つの4x4行列の2次元配列に格納し、それらの積を求めるというプログラムで以下のような関数を作成しました。 #include <stdio.h> void m_ena(int a0[4][4], int a1[4][4], int result[4][4]); int main(void) { } void m_ena(int a0[4][4], int a1[4][4], int result[4][4]) { int a[4][4], b[4][4], r[4][4]; int i, j; for(i=0; i<4; i++){ for(j=0; j<4; j++){ scanf("%d", &a[i][j]); } } for(i=0; i<4; i++){ for(j=0; j<4; j++){ scanf("%d", &b[i][j]); } } for(i=0; i<4; i++){ for(j=0; j<4; j++){ r[4][4] = a[i][j]*b[i][j]; } } } ここまで出来たのはいいのですが、これ以降どのようにメイン関数に書けばいいのか分からず困っています。 この問題は必ず上記関数を使う必要がありますのでどうぞよろしくお願いします。
- 締切済み
- その他(学問・教育)
- C言語 九九表
九九表を作ろうとしたのですが、うまくいきません、解説お願いします。 #include<stdio.h> main() { int i ; int j ; for( i=1 ; i<=10 ; i++){ for( j = 1 ; j<=10 ; j++) { printf("%4d\n") , i*j ; } printf("\n") ; } } 結果 10 -748408832 -748408832 -748408832 -748408832 -748408832 -748408832 -748408832 -748408832 -748408832 が10個続いてました・・・・
- ベストアンサー
- C・C++・C#
- DCP-J1200の印刷指示に対して白紙が出るトラブルについて解決策を教えてください。
- Windows10を使用して有線LANで接続しているDCP-J1200の印刷指示で白紙が出る問題が発生しています。関連するソフト・アプリはすべてのアプリです。
- DCP-J1200の印刷指示で白紙が出る問題について、JCOMの電話回線を使用している場合にも発生する可能性があります。
補足
申し訳ありません、質問の意図を間違っていたようです。 4桁の数値を入力して、表中の1つの数字を出力させるプログラムを作成したいです。 以下表の見方となっています。 4桁の数値というのは、ABCDの順に対応しています。 例えば、 2111であれば2になります。 2112であれば2になります。 2113であれば3になります。 ちなみにMicrosoft visual c++6.0を使用しています。 一から勉強したいのですが、時間がありません。 あつかましい質問になってしまいますが、 できる範囲での意見をいただきたいです。 宜しくお願いします。