1.统计一行字符串中单词的个数,单词之间有若干个空格隔开
int fun(char *s)
{
int i=0,num_word=0;
for(i=0;s[i]!='\0';i++)
/*如果一个字母的下一个字符为空格或者结束标记,则表示一个单词结束*/
if(s[i]!=' '&&(s[i+1]==' '||s[i+1]=='\0'))
num_word++;
return num_word;
}
2.定义学生结构体变量,存储了学生的学号、姓名和三门课的成绩。所有学生数据均以二进制方式输出到文件中。函数fun的功能是重写形参filename所指文件中最后一个学生的数据,即用新的学生数据覆盖该学生原来的数据,其他学生的数据不变。
#include <stdio.h>
#define N 5
typedef struct student {
long sno;
char name[10];
float score[3];
} STU;
void fun(char *filename, STU n)
{
FILE *fp;
fp = fopen(filename, "rb+");//filename
fseek(fp, -(long)sizeof(STU), SEEK_END);//fp
fwrite(&n, sizeof(STU), 1,fp);//fp
fclose(fp);
}
main()
{
STU t[N]={ {10001,"MaChao", 91, 92, 77}, {10002,"CaoKai", 75, 60, 88},
{10003,"LiSi", 85, 70, 78}, {10004,"FangFang", 90, 82, 87},
{10005,"ZhangSan", 95, 80, 88}};