6[簡答題]下列給定程序中,函數proc()的功能是:利用插入排序法對字符串中的字符按從大到小的順序進行排序。插入法的基本方法是:先對字符串中的頭兩個元素進行排序,然后把第3個字符插入前2個字符中,插人后前3個字符依然有序,再把第4個字符插入前3個字符中,待排序的字符串已在主函數中賦予。例如,原始字符串為“goodluck”,則排序后的字符串為“uoolkgdc”。
請修改程序中的錯誤,使它能得到正確結果。
注意:不要改動main()函數,不得增行或刪行,也不得更改程序的結構。
試題程序:
參考解析:
7[單選題] 有以下程序
程序運行后的輸出結果是( )。
A.1B.4C.0D.3
參考答案:C
參考解析:由結構體的定義初始化可知,a[0].X=4,aEo].Y=3,a[1].x=2,a[1].Y=1,因此計算a[0].y/a[0].x$a[1].x=3/4}2=(3/4)}2=0}2=0,故答案為c選項。
8[單選題] 若有定義“float a=25,b,*p=&b;”,則下列對賦值語句“*p=a;”和“p=&a;”的正確解釋為( )。
A.兩個語句都是將變量a的值賦予變量p
B.*p=a是使P指向變量a,而P=&a是將變量的值賦予變量指針p
C.*p=a是將變量a的值賦予變量b,而&a是使P指向變量a
D.兩個語句都是使p指向變量a
參考答案:C
參考解析:“p”是指針變量,指向一個地址:“*p”為p指針所指向地址的內容。“&”是取變量地址。
9[單選題] 下列選項中,能正確定義數組的語句是( )。
A.int num[0..2008];
B.int lllllll[];
C.int N:2008:
D.#define N 2008int num[N1;int num[N];
參考答案:D
參考解析:C語言不允許定義動態數組,定義數組的大小必須為常量表達式。A選項錯誤,C語言中數組沒有此類型的定義方法;B選項錯誤,定義數組應指明數組大小,如果不指明數組大小,需要給定初值的個數;c選項錯誤,N為變量,不能用來定義數組大小。因此D選項正確。
10[單選題] 下列程序的輸出結果是( )。
A.3,6,18B.3,6,2C.6,3,18 D.6,3,2
參考答案:B
參考解析:本題考查if…else語句。如果if條件成立,則執行if下面的語句,不成立則執行else,判斷條件,發現a
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |