質問編集履歴

2

書式の改善

2020/11/16 14:15

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -30,7 +30,9 @@
30
30
 
31
31
 
32
32
 
33
- int main(int argc, char *argv[]) {
33
+ int main(int argc, char *argv[])
34
+
35
+ {
34
36
 
35
37
  char *a, *b, *c;
36
38
 
@@ -38,13 +40,31 @@
38
40
 
39
41
 
40
42
 
41
- scanf("%d", &n);
43
+ if (argc != 2) {
42
44
 
43
- a = calloc(n+1, sizeof(char));
45
+ printf("usage: %s number_of_digits\n", argv[0]);
44
46
 
45
- b = calloc(n+1, sizeof(char));
47
+ return 1;
46
48
 
49
+ }
50
+
51
+ n = atoi(argv[1]);
52
+
53
+ if (n < 1) {
54
+
55
+ puts("number of digits should be greater than 1");
56
+
57
+ return 1;
58
+
59
+ }
60
+
61
+
62
+
63
+ a = calloc(n + 1, sizeof(char));
64
+
65
+ b = calloc(n + 1, sizeof(char));
66
+
47
- c = calloc(n+1, sizeof(char));
67
+ c = calloc(n + 1, sizeof(char));
48
68
 
49
69
  if ((a == NULL) || (b == NULL) || (c == NULL)) {
50
70
 
@@ -64,11 +84,11 @@
64
84
 
65
85
 
66
86
 
67
- for (; nb<=n;){
87
+ for (; nb <= n;) {
68
88
 
69
89
  r = 0;
70
90
 
71
- for (i=0; i!=nb; i++) {
91
+ for (i = 0; i != nb; i++) {
72
92
 
73
93
  r = a[i] + b[i] + r;
74
94
 
@@ -78,21 +98,21 @@
78
98
 
79
99
  }
80
100
 
81
- if (r == 1) {
101
+ if (r == 1) {
82
102
 
83
- c[i] = 1;
103
+ c[i] = 1;
84
104
 
85
- nc = nb + 1;
105
+ nc = nb + 1;
86
106
 
87
- } else {
107
+ } else {
88
108
 
89
- nc = nb;
109
+ nc = nb;
90
110
 
91
- }
111
+ }
92
112
 
93
- for (i=0; i!=nb; i++) a[i] = b[i];
113
+ for (i = 0; i != nb; i++) a[i] = b[i];
94
114
 
95
- for (i=0; i!=nc; i++) b[i] = c[i];
115
+ for (i = 0; i != nc; i++) b[i] = c[i];
96
116
 
97
117
  na = nb;
98
118
 
@@ -102,11 +122,11 @@
102
122
 
103
123
 
104
124
 
105
- for (i=na-1; i>=0; i--) printf("%d", a[i]);
125
+ for (i = na - 1; i >= 0; i--) printf("%d", a[i]);
106
126
 
107
127
  printf("\n");
108
128
 
109
-
129
+
110
130
 
111
131
  free(a);
112
132
 

1

書式の改善

2020/11/16 14:15

投稿

退会済みユーザー
test CHANGED
File without changes
test CHANGED
@@ -20,9 +20,9 @@
20
20
 
21
21
  ### 該当のソースコード
22
22
 
23
- C言語```ここに言語を入力
23
+ ```C
24
24
 
25
- コード
25
+
26
26
 
27
27
  #include <stdio.h>
28
28
 
@@ -118,7 +118,9 @@
118
118
 
119
119
  return 0;
120
120
 
121
+ }
122
+
121
- }```
123
+ ```
122
124
 
123
125
 
124
126