質問編集履歴
2
若干の改行を加えました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,6 +29,7 @@
|
|
29
29
|
|
30
30
|
|
31
31
|
int main(void){
|
32
|
+
|
32
33
|
char str1[256]; /* 文字列バッファ */
|
33
34
|
int slen; /* 改行ぬきの長さ */
|
34
35
|
int nerr; /* エラーカウント */
|
@@ -43,6 +44,8 @@
|
|
43
44
|
|
44
45
|
/*指定文字数以内で入力されるまで繰り返す*/
|
45
46
|
do{ nerr = 0;
|
47
|
+
|
48
|
+
|
46
49
|
/*入力案内*/
|
47
50
|
printf(" データ%d(除改行;半角16字): ", i + 1);
|
48
51
|
|
@@ -58,20 +61,24 @@
|
|
58
61
|
printf( "文字列がありません!\n" ); nerr=1;
|
59
62
|
}
|
60
63
|
|
64
|
+
|
61
65
|
/* 指定文字数以上入力時のエラーメッセージ */
|
62
66
|
if( slen > 16 ){
|
63
67
|
printf( "長すぎます!\n" ); nerr = 1;
|
64
68
|
}
|
65
69
|
|
70
|
+
|
66
71
|
/* 指定文字数以下入力時のエラーメッセージ */
|
67
72
|
if( slen < 16 ){
|
68
73
|
printf( "短すぎます!\n" ); nerr = 1;
|
69
74
|
}
|
70
75
|
|
76
|
+
|
71
77
|
/* 再入力のプロンプト(共通メッセージ) */
|
72
78
|
if( nerr ){
|
73
79
|
printf( " 半角16文字でお願いします。\n " );
|
74
80
|
}
|
81
|
+
|
75
82
|
}while(nerr);
|
76
83
|
|
77
84
|
|
@@ -80,5 +87,6 @@
|
|
80
87
|
|
81
88
|
printf(" 入力された文字列は:%s\n ", str1);
|
82
89
|
|
90
|
+
|
83
91
|
return 0;
|
84
92
|
}
|
1
見やすいように改行やスペースを増やしました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -27,47 +27,58 @@
|
|
27
27
|
#include <stdio.h>
|
28
28
|
#include <string.h>
|
29
29
|
|
30
|
+
|
30
31
|
int main(void){
|
31
32
|
char str1[256]; /* 文字列バッファ */
|
32
33
|
int slen; /* 改行ぬきの長さ */
|
33
34
|
int nerr; /* エラーカウント */
|
34
35
|
int i; /* 試行回数 */
|
35
36
|
|
37
|
+
|
36
38
|
printf("「0」と「1」のみで構成された16桁の数字を入力してください。\n\n");
|
37
39
|
|
40
|
+
|
38
41
|
for (i = 0; i < 8; i++) {
|
39
42
|
|
43
|
+
|
40
44
|
/*指定文字数以内で入力されるまで繰り返す*/
|
41
45
|
do{ nerr = 0;
|
42
46
|
/*入力案内*/
|
43
|
-
printf("データ%d(除改行;半角16字):", i + 1);
|
47
|
+
printf(" データ%d(除改行;半角16字): ", i + 1);
|
44
48
|
|
49
|
+
|
45
50
|
/*文字列の読み込み*/
|
46
|
-
fgets(str1, sizeof(str1), stdin);
|
51
|
+
fgets( str1, sizeof(str1), stdin );
|
47
|
-
*strchr(str1,'\n') = '\0'; /*含まれた改行を消す*/
|
52
|
+
*strchr(str1,'\n') = '\0'; /* 含まれた改行を消す */
|
48
53
|
slen = strlen(str1);
|
49
54
|
|
55
|
+
|
50
|
-
/*未入力時のエラーメッセージ*/
|
56
|
+
/* 未入力時のエラーメッセージ */
|
51
|
-
if(slen == 0){
|
57
|
+
if( slen == 0 ){
|
52
|
-
printf("文字列がありません!\n"); nerr=1;
|
58
|
+
printf( "文字列がありません!\n" ); nerr=1;
|
53
59
|
}
|
60
|
+
|
54
|
-
/*指定文字数以上入力時のエラーメッセージ*/
|
61
|
+
/* 指定文字数以上入力時のエラーメッセージ */
|
55
|
-
if(slen > 16){
|
62
|
+
if( slen > 16 ){
|
56
|
-
printf("長すぎます!\n"); nerr = 1;
|
63
|
+
printf( "長すぎます!\n" ); nerr = 1;
|
57
64
|
}
|
65
|
+
|
58
|
-
/*指定文字数以下入力時のエラーメッセージ*/
|
66
|
+
/* 指定文字数以下入力時のエラーメッセージ */
|
59
|
-
if(slen < 16){
|
67
|
+
if( slen < 16 ){
|
60
|
-
printf("短すぎます!\n"); nerr = 1;
|
68
|
+
printf( "短すぎます!\n" ); nerr = 1;
|
61
69
|
}
|
70
|
+
|
62
71
|
/* 再入力のプロンプト(共通メッセージ) */
|
63
|
-
if(nerr){
|
72
|
+
if( nerr ){
|
64
|
-
printf("半角16文字でお願いします。\n");
|
73
|
+
printf( " 半角16文字でお願いします。\n " );
|
65
74
|
}
|
66
75
|
}while(nerr);
|
67
76
|
|
77
|
+
|
68
78
|
}
|
69
79
|
|
80
|
+
|
70
|
-
printf("入力された文字列は:%s\n", str1);
|
81
|
+
printf(" 入力された文字列は:%s\n ", str1);
|
71
82
|
|
72
83
|
return 0;
|
73
84
|
}
|