sprintf関数について

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
スライク

sprintf関数について

#1

投稿記事 by スライク » 16年前

またお世話になります。
下なんですがコンパイルしてもエラーが出てよくわかりません。
本とおりにやったのですが・・・・よろしくお願いします。

#include<stdio.h>
#include<string.h>

int main()
{
 char buffer[128],name[32];
 int age;
double bl,bw;

 while (1){
  printf(氏名----);
  gets(name);
  if(!strcmp(name,)){
  printf(氏名が記入さていません\n);
 continue;
      }
 break;
}
 while(1)
  printf(年齢----);
  scanf(%d,&age);
  if(age<0 || age>150){
  printf(年齢が不適切です\n);
  continue;
 }
   break;
}
 while (1){
  printf(身長(cm)---);
  scanf(%lf,&bl);
  if(bl<0.0 || bl>250.0){
   printf(身長の値が不適切です\n);
    continue;
     }
    break;
}
 while (1){
  printf(体重(kg)---);
  scanf(%lf,&bw);
  if(bw<0.0 || bw>200.0){
    printf(体重の値が不適切です\n);
     continue;
  }
    break;
}
sprintf(buffer,
  \n%sさん(年齢は%d歳)のプロフィール\n
  身長は%5.1fcm、体重%5.1fkgで、BMIは%4.1fです\n,
   name,age,bl,bw,bw*10000.0/(bl*bl));
    printf(buffer);
    return 0;
}

box

Re:sprintf関数について

#2

投稿記事 by box » 16年前

> 下なんですがコンパイルしてもエラーが出てよくわかりません。

エラーメッセージの全文を載せてください。
「エラーが出ます」だけでは不十分です。

御津凪

Re:sprintf関数について

#3

投稿記事 by 御津凪 » 16年前

よく見ると引数がおかしい箇所があります。
エラーが出たらどこがおかしいのか良く確認しましょう。

Justy

Re:sprintf関数について

#4

投稿記事 by Justy » 16年前

 よくみると(インデントが壊滅しているのでわかりづらいですが)括弧{}の対応も変ですね。
 そのあたりも直す必要があるでしょう。

スライク

Re:sprintf関数について

#5

投稿記事 by スライク » 16年前

見ずらいですがこれでいいんでしょうか?

1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(12) : warning C4996: 'gets': This function or variable may be unsafe. Consider using gets_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(279) : 'gets' の宣言を確認してください。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(21) : warning C4996: 'scanf': This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.
1> c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(306) : 'scanf' の宣言を確認してください。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(24) : error C2044: 'continue' が正しくありません。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(26) : error C2043: 'break' が正しくありません。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(28) : error C2059: 構文エラー : 'while'
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(28) : error C2143: 構文エラー : ';' が '{' の前にありません。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(28) : error C2447: '{' : 対応する関数ヘッダーがありません (旧形式の仮引数リスト?)
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(37) : error C2059: 構文エラー : 'while'
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(37) : error C2143: 構文エラー : ';' が '{' の前にありません。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(37) : error C2447: '{' : 対応する関数ヘッダーがありません (旧形式の仮引数リスト?)
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(46) : error C2065: 'buffer' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'name' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'age' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'bl' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'bw' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'bw' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'bl' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2065: 'bl' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2365: 'sprintf' : 再定義; 以前の定義は '関数' でした。
1> c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(366) : 'sprintf' の宣言を確認してください。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(49) : error C2078: 初期化子の数が多すぎます。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(50) : error C2065: 'buffer' : 定義されていない識別子です。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(50) : error C4430: 型指定子がありません - int と仮定しました。メモ: C++ は int を既定値としてサポートしていません
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(50) : error C2365: 'printf' : 再定義; 以前の定義は '関数' でした。
1> c:\program files\microsoft visual studio 9.0\vc\include\stdio.h(287) : 'printf' の宣言を確認してください。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(52) : error C2059: 構文エラー : 'return'
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(53) : error C2059: 構文エラー : '}'
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(53) : error C2143: 構文エラー : ';' が '}' の前にありません。
1>c:\documents and settings\ゆう\my documents\visual studio 2008\projects\syana\syana\syana.cpp(53) : error C2059: 構文エラー : '}'
1>ビルドログは "file://c:\Documents and Settings\ゆう\My Documents\Visual Studio 2008\Projects\syana\syana\Debug\BuildLog.htm" に保存されました。
1>syana - エラー 26、警告 2
========== ビルド: 0 正常終了、1 失敗、0 更新不要、0 スキップ ==========

スライク

Re:sprintf関数について

#6

投稿記事 by スライク » 16年前

お騒がせしました。

{}の位置を直した所無事できました。
ありがとうございます!

Dixq (管理人)

Re:sprintf関数について

#7

投稿記事 by Dixq (管理人) » 16年前

ソースコードを投稿する時はプレタグを使っていただくとキレイに表示されます。
詳しくは規約をご覧下さい。

スライク

Re:sprintf関数について

#8

投稿記事 by スライク » 16年前

プレタグ・・・?
ありがとうございます。

次回からはそうします!

閉鎖

“C言語何でも質問掲示板” へ戻る