#include <stdio.h> void multi_3( int *x ) // xが指す値を3倍に更新する関数 { *x *= 3; } int multi_5( int x ) // xの値を5倍にして返す関数 { x *= 5; return x; } main() { int n = 1; multi_3( ); printf( "3倍にした値は %d\n", n ); n = 1; printf( "5倍にした値は %d\n", multi_5( ) ); }下線となっている部分に、引数として n を渡すにはどのように書けばよいでしょうか? (答えは、次回のC言語の Tips で ・・・) |
for( i = 0; name[i] != '\0' && name[i] != splitter; i++ ) ; /* 繰り返しの度に実行される(何もしない) */ putchar( name[i] ); /* forの後に1度だけ実行される */ putchar( '\n' );うっかりセミコロンをつけたので、putchar( name[i] ) が for を抜けた後に実行される形になりました。結局 forループでは、name[i] を調べ splitter '_' の前まで i を進めるだけです。その後 name[i] を表示するので '_' が出力されます。 '_' が 3行表示されたのは、3人分の名前を処理するために printFirstName 関数が3回呼ばれたからです。
//基本情報技術者試験 平成20年春期試験 問6より抜粋
for(i = 0; (ref_name[i] = fgetc(ifp)) != MARK; i++);