• 締切済み

#include <stdio.h>

#include <stdio.h> int main(void) { int num1,num2; int num3 = 5; printf("所持金を入力してください?"); printf("%d",&num1); printf("\n"); printf("購入品の金額を入力してください?"); printf("%d",&num2); printf("\n"); printf("\n"); printf("購入金額%d円\n", num2); printf("\n"); printf("消費税額%d円\n", num2 * num3/100); printf("\n"); printf("合計金額%d円です \n", num2 * num3/100+num2); printf("\n"); printf("お釣りは%d円です \n", num1-(num2 * num3/100+num2)); printf("\n"); printf ("内訳は \n"); printf("\n"); printf("10000円紙幣:%d枚 \n",(num1-(num2 * num3/100+num2))/10000); printf("5000円紙幣:%d枚 \n",(num1-(num2 * num3/100+num2))/5000); printf("1000円紙幣:%d枚 \n",(num1-(num2 * num3/100+num2)-5000)/1000); printf("500円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7000)/500); printf("100円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7000)/100); printf("50円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7200)/50); printf("10円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7250)/10); printf("5円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7270)/5); printf("1円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7275)/1);   printf("です。\n"); return 0; }  なんかエラー出ます・・・どこが間違ってるんでしょうか?

みんなの回答

  • edomin7777
  • ベストアンサー率40% (711/1750)
回答No.3

「どこが間違ってるんでしょうか?」 「printf文」しか無いところも。

  • k_kota
  • ベストアンサー率19% (434/2186)
回答No.2

&num1 ってのがおかしいですね。 アドレスをprintfに%dで渡すのは多分ダメでしょう。 あと、エラーの内容くらい書いてください、探す人が大変です。 ちなみに何度も使う計算結果は適当に変数に代入する方がすっきりすると思います。 それと、支払い計算プログラムだとするとこれは正しく機能しないですね。

  • starshira
  • ベストアンサー率55% (141/256)
回答No.1

後ろから二つ目のprint文  printf("1円硬貨:%d枚 \n",(num1-(num2 * num3/100+num2)-7275)/1); のセミコロンの後ろに全角スペースが入っているからではないでしょうか。 他には、エラーになる要素は見あたりません。 なお、こういう質問をするときは、最低限、下記のことも書くようにしましょう。  どんなエラーが出たか  どんな開発環境か(VisualC++ 2008, BorlandC++ 5.5など、コンパイルに使っていソフトの名前)

関連するQ&A

  • #include<stdio.h>

    #include<stdio.h> main () { int a,b; printf("適当な数字\n"); scanf("%d %d",&a,&b); printf("(a*b)%(a+b)=%d\n",(a*b)/(a+b)); return (0); } で結果が 任意の数字 2 3 (a*b)(a+b)=1 ん なんですが違いますよね? 商の余りを求めるにはどう改変すればいいでしょうか?

  •    #include<stdio.h>

       #include<stdio.h> #include<math.h> int main(void) { int i,n,limit; printf("data? "); scanf("%d",&n); i(n>=2){ limit=int)sqrt(n); for(i=limit;i1;i--){ if(n%i==0) break; } if(i==1) printf("素数\n); else printf("素数でない\n"); } return 0; } というプログラムがあるのですが、それを改良して int型(符号付32ビット整数)および、unsigned int型(符号なし32ビット整数)のそれぞれの最大の素数を求めよという問題があり、ただし、エラトステネスのふるいは使わずに、上のプログラムを改良してみよという問題がどっかにあったんですが、全然わからないので、教えてください。

  • #include <stdio.h>

    #include <stdio.h> struct st { char a[3]; short b; char c[7]; long d; char e[5]; }; int main(void) { printf("%d\n",sizeof(struct st)); return 0; } コンパイルオプションでアライメントを変化させながら(1,2,4,…) sizeof(struct st)の変化を見たいのですが、コンパイルする時に どのようにすれば良いのでしょうか?当方、gccを使用しております。 あと、ついでなんですが、警告オプションは-Wと-Wallしかないのでしょうか?

  • なぜgccはstdio.hをインクルードしなくてもprintfが実行できるのか

    なぜgccはstdio.hをインクルードしなくてもprintfが実行できるのでしょうか。 暗黙にインクルードされるヘッダと されないヘッダファイルの差分等あれば教えていただきたく。。 // main.c int main(){ printf("SWSW\n") ; return 0 ; } % gcc main.c % ./a.out SWSW

  • ループ

    #include<stdio.h> int main(void) { int i=1,sum=0; int num=1; while(num>0) { printf("整数を入力してください。(マイナスの値で終了)\n"); scanf("%d",&num); printf("%dが入力されました。(%d番目の繰り返しです)\n",num,i); sum+=i; printf("1から%dまでをたすと%dです。\n",i,sum); i++; } printf("繰り返しが終わりました。\n"); printf("加算値は%dです。\n",sum); printf("%d回繰り返しました。\n",i); return 0; } このプログラムで101以上の数値は加算しないようにするにはどうすればいいですか。

  • 10進数を2進数に変換したいのですが・・・

    こんばんは。 入力された10進数を2進数に変換するというプログラムを、一応作成することができたのですが、表示される結果が逆に表示されてしまいます。(例えば、4なら001) どのようにすれば、正しく表示することができるのでしょうか??ちなみにプログラムは #include<stdio.h> int main(void) { int num; printf("数字を入れてください。\n"); scanf("%d", &num); for(num = num ; num>1 ; num = num/2) printf("%d",num%2); printf("%d\n",num); return 0; } です。

  • 分割コンパイルについて

    現在分割コンパイルが分からずに苦戦しています。 下記のリストは構造体を使わなければコンパイラを通すことができましたが、 使うとなぜか通りません。 あれこれ試しましたがどうしても分かりません。 何がおかしいのでしょうか? *define.hで全てのファイルへの定義や宣言を行わせています。 ////////////// //Main.cpp ////////////// #include <stdio.h> #include <conio.h> #include "define.h" int main( void ){ Tmp[0].c = 15; printf("a: %d\n", a); printf("b: %d\n", b); printf("c: %d\n", Tmp[0].c); printf("NUM:%d\n", NUM); aaa(); bbb(); getch(); return 0; } ////////////////// // A.cpp ///////////////// #include <stdio.h> #include "define.h" void aaa( void ){ printf("a: %d\n", a); printf("b: %d\n", b); printf("c: %d\n", Tmp[0].c); printf("NUM:%d\n", NUM); } ////////////////// // B.cpp ///////////////// #include <stdio.h> #include "define.h" void bbb( void ){ printf("a: %d\n", a); printf("b: %d\n", b); printf("c: %d\n", Tmp[0].c); printf("NUM:%d\n", NUM); } ////////////////// // define.cpp ///////////////// #include "define.h" int a = 10; int b = 20; struct Parameter { int c; }; struct Parameter Tmp[NUM]; ////////////////// // define.h ///////////////// #define NUM 100 extern int a; extern int b; extern struct Parameter Tmp[NUM]; void aaa( void ); void bbb( void );

  • 文字列をint型へ変換するには?

    c言語初心者です。 こちらのプログラムだとうまく表示されません何故でしょう? わかる方是非教えていただきたいと思います。 #include<stdio.h> #include <stdlib.h> int main() { int  num ;     char sum1[4]; printf("数字 str1 =>"); scanf("%d",&num); num= atoi(sum11); printf("sum1= [%d]\n",num); } コマンドに数字を入力したあとintに変換してnumに表示させたいのですが、、、、

  • c言語で平均をだす

    #include<stdio.h> int main(void) { int num; int sum; printf("テストの点数を入力してください。\n"); do{ scanf("%d",&num); sum+=num; }while(num); printf("テストの合計点は%dです\n",sum); return 0; } テストの平均点をだすプログラムを作りたいのですが、合計を出すまではわかったのですが、ここから、平均を出すようにするにはどうすればよいですか。

  • C言語 "myfunc.h"がエラーになります。

    いつも大変お世話になっております。 C言語に関する質問です。 "myfunc.h"の箇所がコンパイルエラーになります。 全体のコードとコンパイルエラーが下記です。 #include <stdio.h> #include "myfunc.h" int main(void) { int num1, num2, ans; printf("1番目の整数を入力してください。\n"); scanf("%d", &num1); printf("2番目の整数を入力してください。\n"); scanf("%d", &num2); ans = max(num1, num2); printf("最大値は%dです。\n" , ans); return 0; } コンパイルエラー C:\MinGW>gcc text13.c -o text13 text13.c:2:20: fatal error: myfunc.h: No such file or directory #include "myfunc.h" ^ compilation terminated. です。 ご多忙のところ恐れ入ります。 どこがおかしいのか、 ご回答のほどよろしくお願い申し上げます。

専門家に質問してみよう