1.1 代码:
#include <stdio.h>
#define N 100
int readscore(int score[],int n);
int printscore(int score[],int n);
double average(int score[],int n);
int findmin(int score[],int n);
void findminlndex(int score[],int n);
int findmax(int score[],int n);
void findmaxlndex(int score[],int n);
void findscore(int score[],int n);
void bubblesort(int score[],int n);
int main ()
{
int score[N]={0},n,max,min;
double average1;
printf("请输入学生数量");
scanf("%d",&n);
readscore(score,n);
bubblesort(score,n);
average1=average(score,n);
printf("这%d名学生的平均成绩为%.2lf\n",n,average1);
max=findmax(score,n);
min=findmin(score,n);
printf("这些学生成绩中的最高分是%d,最低分是%d\n",max,min);
findmaxlndex(score,n);
findminlndex(score,n);
findscore(score,n);
return 0;
}
int readscore(int score[],int n)
{
int i;
printf("请输入分数\n");
for(i=0;i<n;i++)
{
scanf("%d",&score[i]);
}
return i;
}
void bubblesort(int score[],int n)
{
int i,j,k,l;
for(i=0;i<n-1;i++)
{
l=0;
for(j=0;j<n-i-1;j++)
{
if(score[j]>score[j+1])
{
k=score[j];
score[j]=score[j+1];
score[j+1]=k;
l=1;
}
}
if(l==0)
{
break;
}
}
for(i=0;i<n;i++)
{
printf("%d号的学生成绩:%d\n",i+1,score[i]);
}
}
double average(int score[],int n)
{
int i,sum=0;
for(i=0;i<n;i++)
{
sum+=score[i];
}
return (double)sum/n;
}
int findmin(int score[],int n)
{
int i,min=score[0];
for(i=1;i<n;i++)
{
if(score[i]<min)
{
min=score[i];
}
}
return min;
}
void findminlndex(int score[],int n)
{
int i,min;
min=findmin(score,n);
printf("得最低分的同学有:\n");
for(i=0;i<n;i++)
{
if(score[i]==min)
{
printf("第%d名学生 ",i+1);
}
}
printf("\n");
}
int findmax(int score[],int n)
{
int i,max=score[0];
for(i=1;i<n;i++)
{
if(score[i]>max)
{
max=score[i];
}
}
return max;
}
void findmaxlndex(int score[],int n)
{
int i,max;
max=findmax(score,n);
printf("得最高分的同学有:\n");
for(i=0;i<n;i++)
{
if(score[i]==max)
{
printf("第%d名学生 ",i+1);
}
}
printf("\n");
}
void findscore(int score[],int n)
{
int i,score2,l=0;
printf("请输入你要查找的分数:\n");
scanf("%d",&score2);
for(i=0;i<n;i++)
{
if(score[i]==score2)
{
printf("得该分数的是:\n");
printf("第%d位学生\n",i+1);
}
}
}
1.2 程序运行结果:

2.1 代码:
#include <stdio.h>
#define N 100
int main ( )
{
int i,score[N]={0},a=0;
for(i=0;i<N;i++)
{
score[i]=i+1;
}
for(i=0;i<N;i++)
{
if(score[i]%3==0||score[i]%7==0)
{
score[i]=0;
}
else
{
a++;
printf("%4d",score[i]);
if(a%10==0)
{
printf("\n");
}
}
}
printf("\n 共输出了%d个数",a);
return 0;
}
2.2 程序运行结果:

1.注意逻辑混乱问题,不要写成两个最大值或最小值。
2.,定义的变量名是什么,在主程序里调用也得用什么,变量名要改一下,不能同名。
3.相似的代码粘也可以,不过不一样的地方要记得改。
4.要记得加大括号,把相应的内容放进去。
形参的应用于实参有一定的区别,在写程序时不同的写法可以合理运用形参,也可以不用,因为不同的程序在写的时候,用形参和不用形参得出的结果可能会不一样。,比如在程序1和2中,看似相同的变量,却因形参的不同用法而导致结果不同。
原文:http://www.cnblogs.com/wei530/p/6122911.html