第六套上機(jī)試題
一、改錯(cuò)題
含有錯(cuò)誤的源程序:
#include
#include
#define N 5
struct student
{ char name[10];
int score;
} ―――――――――――①
void sort(struct student stud[],int n)
{ int i,j;
struct student p;
for(i=1;i { p=stud[i]; for(j=i-1;j>0 && p>stud[j];j--) ―――――――――――③ stud[j+1]=stud[j]; stud[j+1]=p; } } void main() { struct student stud[N]={"aaa",60,"bbb",90,"ccc",85,"ddd",65,"yyy",77}; int i; sort(stud,N); printf("sorted data:\n"); for(i=0;i } 【知識點(diǎn)】結(jié)構(gòu)體、排序 【難點(diǎn)】 插入法排序 【解析】本題是將未排序的數(shù)組元素采用插入排序方法進(jìn)行排序,其思想是:從第2個(gè)元素開始,最初與第一個(gè)元素進(jìn)行比較,由大到小排列在適當(dāng)位置,成為排好序的數(shù)組元素一員。再依次將待排序的元素與前面已排好序的元素從后向前進(jìn)行比較,如果大于該元素,則該元素向后移一位,直到待排序的元素小于已排好序的某一元素,則直接插入到該元素之后。直到待排序的元素全部完成為止。本程序的sort函數(shù)中i表示待排序的元素下標(biāo),j表示已排好序的元素下標(biāo)。 【答案】(1)標(biāo)號①:} 改為 }; (2)標(biāo)號②:for(i=1;i (3)標(biāo)號③:for(j=i-1;j>0 && p>stud[j];j--) 改為 j>=0 && p.score>stud[j].score;j--) (4) 標(biāo)號④:printf("%s\t%d\n",stud[i]); 改為printf("%s\t%d\n",stud[i].name,stud[i].score );
2010全國計(jì)算機(jī)等考二級C語言考前密卷匯總
2010年計(jì)算機(jī)等級考試二級C語言常見知識點(diǎn)
計(jì)算機(jī)等級考試二級C語言題型分析與應(yīng)試技巧
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |