#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#define WORD_MAX (10)
int main(void){
int i;
int word_string;
char data_in[WORD_MAX];
char data_out[WORD_MAX];
char *pdata_in;
char *pdata_out;
int j;
int word_string2;
char data_in2[WORD_MAX];
char data_out2[WORD_MAX];
char *pdata_in2;
char *pdata_out2;
printf("%d文字以内で文字列(姓)を入力してください。\n", WORD_MAX);
while(1){
scanf("%s", data_in);
rewind(stdin);
word_string = strlen(data_in);
printf("入力した文字列(姓)は%dです。\n", word_string);
if (word_string <= WORD_MAX) break;
printf("もう一度入力してください\n");
}
printf("============================================================\n");
pdata_in = &data_in[word_string - 1];
pdata_out = &data_out[0];
for (i = 0; i<word_string; i++)
{
*pdata_out = *pdata_in;
pdata_in--;
pdata_out++;
}
*pdata_out = '\0';
printf("%d文字以内で文字列(名)を入力してください。\n", WORD_MAX);
while(1){
scanf("%s", data_in2);
rewind(stdin);
word_string2 = strlen(data_in2);
printf("入力した文字列(名)は%dです。\n", word_string2);
if (word_string2 <= WORD_MAX) break;
printf("もう一度入力してください\n");
}
printf("============================================================\n");
pdata_in2 = &data_in2[word_string2 - 1];
pdata_out2 = &data_out2[0];
for (j = 0; j<word_string2; j++)
{
*pdata_out2 = *pdata_in2;
pdata_in2--;
pdata_out2++;
}
*pdata_out2 = '\0';
printf("入力した文字列(姓):%s\n", data_in);
printf("反転した文字列(姓):%s\n", data_out);
printf("入力した文字列(名):%s\n", data_in2);
printf("反転した文字列(名):%s\n", data_out2);
strcat(data_in, data_in2);
strcat(data_out, data_out2);
printf("入力した文字列連結:%s\n", data_in,data_in2);
printf("反転した文字列連結:%s\n", data_out,data_out2);
rewind(stdin);
getchar();
return 0;
}実行してデバックでエラーが出ますどうしてですか?
C言語
Re: C言語
ソースコードを提示する際は、BBCodeを有効にした(無効にしない)状態でcodrタグで囲んでいただけると、見やすくてありがたいです。
具体的なエラーメッセージ、または期待した動作と実際の動作を教えていただけますか?
WEB さんが書きました:実行してデバックでエラーが出ますどうしてですか?
- 77行目と78行目でprintfの書式に対して引数が多すぎる
- 長すぎる(1回目の入力と2回目の入力の合計で十文字以上)文字列を入力している
具体的なエラーメッセージ、または期待した動作と実際の動作を教えていただけますか?
複雑な問題?マシンの性能を上げてOpenMPで殴ればいい!(死亡フラグ)