1.编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。字符串在主函数中输入,规定所有单词由小写字母组成,单词之间有若干个空格隔开,一行的开始没有空格
int fun(char*s){
int i,j=0;
for(i=0;s[i]!='\0';i++) //'\0'是字符串结束标志
if(s[i]!=' '&&(s[i+1]==' '|| s[i+1]==\0'))
/*下一位为空格或字符串结束则单词数+1*/
j++;
return j;
}
2.已知学生的记录由学号和学习成绩构成,N名学生的数据已存入a结构体数组中。请编写函数fun,该函数的功能是:找出成绩最低的学生记录,通过形参返回主函数(规定只有一个最低分)
void fun(STU a[], STU *s)
{
int i;
*s=a[0]; //默认第一个值最小
for(i=0;i<N;i++)
if(s->s->a[i].s) //循环中有比第一个值更小的,则指针指向该元素
*s=a[i];
}
3.矩阵上半三角元素*m
双层循环,注意i,j的顺序
void fun(int a[][N], int m)
{
int i,j;
for(j=0;j<N;j++)
for(i=0;i<=j;i++)
a[i][j]=a[i][j]*m;
}
穷举也得分,要注意*m,不是题目中的 *2
a[0][0]=a[0][0]*m;
a[0][1]=a[0][1]*m;
a[0][2]=a[0][2]*m;
a[0][3]=a[0][3]*m;
a[0][4]=a[0][4]*m;
a[1][1]=a[1][1]*m;
a[1][2]=a[1][2]*m;
a[1][3]=a[1][3]*m;
a[1][4]=a[1][4]*m;
a[2][2]=a[2][2]*m;
a[2][3]=a[2][3]*m;
a[2][4]=a[2][4]*m;
a[3][3]=a[3][3]*m;
a[3][4]=a[3][4]*m;
a[4][4]=a[4][4]*m;