算法分析:
用n表示学生学号,n[0]代表第一个学生学号,n[i-1]代表第i个学生学号。用g代表学生成绩,g[i-1]代表第i个学生成绩,算法可表示如下。
S1:0→i
S2:如果g[i]≥80,则打印n[i]和g[i],否则不打印
S3:i+1→i
S4:如果i<10,返回S2,继续执行;否则,算法结束。
此算法对应的源程序如下:
main(){
int n[10]={1,2,3,4,5,6,7,8,9,10}; /* 学生学号 */
float score[10]={89.5,75,98.5,60,68,88,52,79,92,45}; /* 学生成绩 */
int i=0;
while(i<10){
if(score[i]>=80) printf("number[%d]=%.1f\n",n[i],score[i]);
i++;
}
}