2023年計算機二級C語言上機習題4

2022-04-07 06:28:44 字數 1590 閱讀 4473

填空題

給定程式中,函式fun的功能是建立乙個nn的矩陣。 矩陣元素的構成規律是:最外層元素的值全部為1;從外向內第2層元素的值全部為2;第3層元素的值

全部為3,…依次類推。例如,若n=5,生成的矩陣為:

1 1 1 1 1

1 2 2 2 1

1 2 3 2 1

1 2 2 2 1

1 1 1 1 1

請在程式的下劃線處填入正確的內容並把下劃線刪除, 使程式得出正確的結果。

注意:源程式存放在考生資料夾下的blank1.c中。

不得增行或刪行,也不得更改程式的結構!

給定源程式:

#include

#define n 7

void fun(int (*a) __1__)

} main()

,i,j;

fun(x);

printf("nthe result is:n");

for(i=0; i  

} 解題思路:

第一處:建立乙個nn的矩陣,所以應填:[n]。

第二處:j的起始變數值應i。

第三處:也應該填寫i+1。

改錯題給定程式modi1.c中函式 fun 的功能是: 將十進位制正整數m轉換成k(2≤k≤9) 進製數, 並按高位到低位順序輸出。

例如,若輸入8和2,則應輸出1000(即十進位制數8轉換成二進位制表示是1000)。

請改正 fun 函式中的錯誤,使它能得出正確的結果。

注意:不要改動 main 函式。不得增行或刪行,也不得更改程式的結構!

給定源程式:

#include

#include

void fun( int m, int k )

printf( "%d", aa[ i ] );

} main()

解題思路:

第一處:應該取模而不是整除,所以應為:aa[i]=m%k;。

第二處:輸出aa的位置不正確,所以應為:printf("%d",aa[i-1]);。

程式設計題編寫乙個函式,從num個字串中找出最長的乙個字串,並通過形參指標max傳回該串位址。(注意: 主函式中用****作為結束輸入的標誌,函式fun中給出的語句僅供參考。)

注意:部分源程式在檔案prog1.c中。

請勿改動主函式main和其它函式中的任何內容,僅在函式fun的花括號中填入你編寫的若干語句。

給定源程式:

#include

#include

fun(char(*a)[81],int num,char **max)

*max=a[k];

} main()

n=i;

fun(ss,n,&ps);

printf("nmax=%sn",ps);

nono();

} 解題思路:

本題是考察考生怎樣從已輸入的字串中找出長度最大的字串。求字串的長度可以使用strlen函式。

fun(char(*a)[81],int num,char **max)

} *max=a[k];

}

2023年計算機二級C語言上機習題8

填空題 函式fun的功能是 把形參a所指陣列中的奇數按原順序依次存放到a 0 a 1 a 2 中,把偶數從陣列中刪除,奇數個數通過函式值返回。例如 若a所指陣列中的資料最初排列為 9 1 4 2 3 6 5 8 7,刪除偶數後a 所指陣列中的資料為 9 1 3 5 7,返回值為5。請在程式的下劃線處...

2023年計算機二級C語言上機習題3

填空題 給定程式的功能是 呼叫函式fun將指定原始檔中的內容複製到指定的目標檔案中,複製成功時函式返回值為1,失敗時返回值為0。在複製的過程中,把複製的內容輸出到終端螢幕。主函式中源檔名放在變數sfname中,目標檔名放 在變數tfname中。請在程式的下劃線處填入正確的內容並把下劃線刪除,使程式得...

2023年計算機二級C語言上機習題5

填空題 用篩選法可得到2 n n 10000 之間的所有素數,方法是 首先從素數2開始,將所有2的倍數的數從數表中刪去 把數表中相應位置的值置成0 接著從數 表中找下乙個非0數,並從數表中刪去該數的所有倍數 依此類推,直到所找的下乙個數等於n為止。這樣會得到乙個序列 2,3,5,7,11,13,17...