鱼C论坛

 找回密码
 立即注册
查看: 1903|回复: 10

求帮助

[复制链接]
发表于 2022-6-7 15:01:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
求帮助,不会写
KE$@){3N}NSBN(QYS(F6IQ6.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-7 15:47:37 | 显示全部楼层

回帖奖励 +10 鱼币

本帖最后由 jhq999 于 2022-6-7 17:10 编辑

纯手写,只是个思路
  1. 1、
  2. typedef struct STUDENT
  3. {
  4.         float hl,np,avg;
  5.        
  6. }STT,*pSTT;
  7. STT st[5]={0};
  8. 输入计算
  9. 排序
  10. FILE *fp=fopen(.........);
  11. fwrite(st,sizeof(STUDENT)*5,1,fp);
  12. fclose(fp);
  13. 2、
  14. void stradd(char* s,char* t,int *f)
  15. {
  16.         int i=0,j=0;
  17.         while(s[i])i++;
  18.         while((s[i]=t[j]))i++,j++;
  19.         *f=i;
  20. }
  21. int strnew(char* s,char* a,char* b)
  22. {
  23.         int i=0,j=0,k=0,count=0,slen=0,alen=0,blen=0;///slen是 s长度, alen 是a长度, blen 是b长度
  24.         for(i=0;s[i];i++)//找出s多少个a
  25.         {
  26.                 if(s[i]==a[0])
  27.                 {
  28.                         for(j=0;a[j]&&a[j]==s[i+j];j++);////如果在a循环结束之前a[j]不等于s[i+j]就不是
  29.                         if('\0'==a[j])alen=j,count++;/////a在a[j]结束全都等于s[i+j],那么这段就是,count统计a在s的数量,alen是顺便得出的a的长度
  30.                 }
  31.         }
  32.         slen=i;
  33.         for(i=0;b[i];i++);
  34.         blen=i;
  35.         char *tmp=(char*)malloc(count*(blen-alen)+slen+1);
  36.         for(i=0,k=0;s[i];i++,k++)
  37.         {
  38.                 if(s[i]==a[0])
  39.                 {
  40.                         for(j=0;a[j]&&a[j]==s[i+j];j++);
  41.                         if('\0'==a[j])
  42.                         {
  43.                                 for(j=0;b[j];j++)tmp(k++)=b[j];
  44.                         }
  45.                 }
  46.                 i+=alen;
  47.                 tmp[k]=s[i];
  48.         }
  49.         tmp[k]='\0';
  50.         for(i=0;tmp[i];i++)s[i]=tmp[i];
  51.         s[i]='\0';
  52.         free(tmp);
  53.         return i;
  54. }
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-7 17:01:10 | 显示全部楼层

回帖奖励 +10 鱼币

stradd(s,t,f)中f为标志是什么意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-7 18:46:27 | 显示全部楼层

回帖奖励 +10 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-7 19:30:16 | 显示全部楼层

回帖奖励 +10 鱼币

临时号 发表于 2022-6-7 17:01
stradd(s,t,f)中f为标志是什么意思


我觉得是:
当 f = 0 时,字符串 s 并置到字符串 t 后,
当 f = 1 时,字符串 t 并置到字符串 s 后 。

f 应该是 front 吧,或 flag?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-7 20:26:27 | 显示全部楼层

回帖奖励 +10 鱼币

学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-8 07:24:39 | 显示全部楼层

回帖奖励 +10 鱼币

指针还不是很熟,主要是拿鱼币,鱼币不够用了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-8 08:51:47 | 显示全部楼层

回帖奖励 +10 鱼币

+1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-9 09:14:55 | 显示全部楼层

回帖奖励 +10 鱼币

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-6-9 14:01:45 | 显示全部楼层

回帖奖励 +10 鱼币

学习了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-6-10 06:21:55 | 显示全部楼层

回帖奖励 +10 鱼币

结构体那个就正常用个排序法,文件的不太清楚,不能用strcpy就用循环在第三个数组把前两个写进去,结束循环记得加上一个\0
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-6-4 14:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表