n?m:n;for(;(k%m!=0)||(k%n!=0);k++);returnk;}【問題1】(5分)(1)請(qǐng)寫出發(fā)生函數(shù)調(diào)用test_fl(9,6)時(shí),函數(shù)的返回值;(2)請(qǐng)說明函數(shù)test_fl的功能?!菊f明2】設(shè)在某C系統(tǒng)中為每個(gè)字符分配1個(gè)字節(jié),為..."/>
閱讀以下說明、C函數(shù)和問題,將解答寫入答題紙的對(duì)應(yīng)欄內(nèi)。
【說明1】
函數(shù)test fl (int m,int n)對(duì)整數(shù)m、n進(jìn)行某種運(yùn)算后返回一個(gè)整數(shù)值。
【C函數(shù)1】
int test_fl (int m, int n)
{ int k;
k=m>n?m:n;
for(;(k%m!=0)||(k%n!=0);k++);
return k;
}
【問題1】(5分)
(1)請(qǐng)寫出發(fā)生函數(shù)調(diào)用test_fl(9,6)時(shí),函數(shù)的返回值;
(2)請(qǐng)說明函數(shù)test_fl的功能。
【說明2】
設(shè)在某C系統(tǒng)中為每個(gè)字符分配1個(gè)字節(jié),為每個(gè)指針分配4個(gè)字節(jié),sizeof(x)計(jì)算為x分配的字節(jié)數(shù)。
函數(shù)test_f2()用于測(cè)試并輸出該C系統(tǒng)為某些數(shù)據(jù)分配的字節(jié)數(shù)。
【C函數(shù)2】
void test_f2()
{ char str[]="NewWorld"; char *p=str; char i=‘\0’;
void *ptr=malloc(50);
printf("%d\t",sizeof(str)); printf("%d\n",sizeof(p));
printf("%d\t",sizeof(i)); printf("%d\n”,sizeoqptr)),
}
【問題2】(4分)
請(qǐng)寫出函數(shù)test_f2()的運(yùn)行結(jié)果。
【說明3】
函數(shù)test_f3(char s[])的功能是:將給定字符串s中的所有空格字符刪除后形成的串保存在字符數(shù)組tstr中(串s的內(nèi)容不變),并返回結(jié)果串的首地址。
【C函數(shù)3】
char *test_f3 (const char s[])
{ char tstr[50]={‘\0’}; unsigned int i,k=0;
for(i=0;i<strlen(s);i++)
if(s[i]!= ‘ ’)tstr[k++]=s[i];
return tstr;
}
【問題3】(6分)
函數(shù)test_f3()對(duì)返回值的處理有缺陷,請(qǐng)指出該缺陷并說明修改方法。