プログラミング教えてください!!!お願いします。
プログラミング教えてください!!!お願いします。
次の文が実行されると何がどのようにプリントされるか。何もプリントされない時は「なし」と記せ。
また、途中に「ブランク」が入る場合は、”b”と記せ。
(1)
int func1(), func2();
int data = 100;
main() {
int w = 1;
static x =10;
printf("** %d, %d, %d\n" ,w,x,data);
func1();
printf("** %d, %d, %d\n" ,w,x,data);
}
int func1(){
int w = 2;
static int x = 20:
printf("*** %d, %d, %d\n", w, x, data);
x += 10;
func2();
printf("*** %d, %d, %d\n" , w,x,data);
x *= 2;
data = data - x;
}
int func2() {
int w = 3;
static int x = 30;
printf("**** %d, %d, %d\n" ,w,x,data);
data -= x;
}
(2)
int func1(char *, char *, char *);
int func2(char *, char *, char *);
main() {
char sta[20], stb[20], stc[20], std[20];
int i=0;
func1("abc","xyz",sta);
printf("%d -- %s\n" ,++i,sta);
func1("123","456",stb);
printf("%d -- %s\n" ,++i,stb);
func1(sta,stb,stc);
printf("%d -- %s\n" ,++i,stc);
func2(sta,stb,std);
printf("%d -- %s\n" ,++i,std);
}
int func1(char *a, char *b, char *c){
while(*a) *c++ = *a++;
while(*b) *c++ = *b++;
* c = 0x00;
}
int func2(char *a, char *b, char *c){
int i = 0;
while(*b){
if(i%2 == 0) *c++ = *a++;
else *c++ = *b++;
i++;
}
*c = 0x00;
}
お礼
ありがとうございました、動作しました。 お答えを貰って検索したところ改行が読み込まれてしまうという事を理解しました。