可做奧鵬院校所有作業(yè),畢業(yè)論文,咨詢請?zhí)砑観Q:3230981406 微信:aopopenfd777
離線考核
《C程序設(shè)計(高起專)》
一、閱讀程序,在橫線上填空(每空2分,共20分。)
1. 百馬百擔(dān)問題:有100匹馬,馱100擔(dān)貨,大馬馱3擔(dān),中馬馱2擔(dān),兩匹小馬馱1擔(dān),問大、中、小馬各多少匹?
main( )
{ int hb,hm,hl,n=0;//hb,hm,hl分別代表大馬,中馬和小馬
for(hb=0;hb<=100;hb+=3 )
for(hm=0;hm<=100-hb;hm+= (1) )
{ hl=100-hb- (2) ;
if(hb/3+hm/2+2* (3) ==100)
{ n++;
printf("hb=%d,hm=%d,hl=%d\n",hb/3,hm/2,2*hl);
}
}
printf("n=%d\n",n);
}
2.用“起泡法”對輸入的10個字符排序后按從小到大的次序輸出。
#define N 10
char str[N];
main()
{ int i,flag;
scanf("%s",str);
sort((4) ___);
for(i=0;i<N;i++)
printf("%c",str[i]);
printf("\n");
}
sort(char str[N])
{ int i,j;
char t;
for(j=1;j<N;j++)
for(i=0;(i<N-j)&&(str[i]!='\0');i++)
if(str[i]>str[i+1])
{ t=str[i];
_(5) ____;
_(6)_ ___;
}
}
3.以下程序是一個函數(shù),功能是求二階矩陣(m行n列矩陣)的所有靠外側(cè)的各元素值之和。(本程序中二階矩陣用一維數(shù)組來表示。)
例如,矩陣為:
3 0 0 3
2 5 7 3
1 0 4 2
則所有靠外側(cè)的各元素值之和為3+0+0+3+2+3+1+0+4+2=18。
add(int m,int n,int arr[])
{ int i,j,sum=0;
for(i=0;i<m;i=i+m-1)
for(j=0;j<n;j++)
sum=sum+ (7) ;
for(j=0;j<n;j=j+n-1)
for(i=1; (8) ;i++)
sum=sum+arr[i*n+j];
return(sum);
}
4.用指針作函數(shù)參數(shù),編程序求一維數(shù)組中的最大和最小的元素值。
#define N 10
main()
{ void maxmin(int arr[],int *pt1,int *pt2,int n);
int array[N]={10,7,19,29,4,0,7,35,-16,21},*p1,*p2,a,b;
p1=&a; p2=&b;
maxmin(array,p1,p2,N);
printf("max=%d,min=%d",a,b);
}
void maxmin(int arr[],int *pt1,int *pt2,int n)
{ int i;
*pt1=*pt2=arr[0];
for(i=1;i<n;i++)
{ if(arr[i]>*pt1) (9) ;
if(arr[i]<*pt2) (10) ;
}
}
二、簡要回答下列問題(更多答案下載:(www.)8分,共40分。)
1.結(jié)構(gòu)化程序設(shè)計中常用的三種程序結(jié)構(gòu)是什么?各自用哪些語句來實現(xiàn)?
2.C語言對字符串操作的函數(shù)有哪些(舉出2個以上)?
3.C語言的構(gòu)造類型有哪幾種?各自適合描述什么樣的問題?
4.函數(shù)調(diào)用有幾種方式?函數(shù)的實參和形參是怎么進(jìn)行結(jié)合的?
5.do―while循環(huán)和while循環(huán)的區(qū)別是什么?
三、編程題(共40分)
1.一個班級有10名學(xué)生,每個學(xué)生的信息包括學(xué)號,姓名和成績。編寫一函數(shù)sort,實現(xiàn)按學(xué)生成績降序排列,排序方法任選。在函數(shù)之前,定義出函數(shù)中要使用的數(shù)據(jù)類型。(15分)
2.編寫程序打印下面的圖形。利用scanf()函數(shù)由用戶輸入星號的行數(shù)。(10分)
*
**
***
****
*****
3.已知定義int型數(shù)組a,數(shù)組a中的元素均為三位數(shù)。編寫函數(shù)jsVal(),其功能是:統(tǒng)計出3位數(shù)均為偶數(shù)的數(shù)組元素的個數(shù)c。
例如:int a[6]={123,246,345,608,420,987},則統(tǒng)計結(jié)果c=3.(15分)