新思路国二C语言编程大全程序105套.docx
- 文档编号:22814483
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:53
- 大小:628.99KB
新思路国二C语言编程大全程序105套.docx
《新思路国二C语言编程大全程序105套.docx》由会员分享,可在线阅读,更多相关《新思路国二C语言编程大全程序105套.docx(53页珍藏版)》请在冰豆网上搜索。
新思路国二C语言编程大全程序105套
1.学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:
把分数低的学生数据放在b所指的数组中,注意分数最低的学生可能不止一个,函数返回最低的学生的人数。
inti,j=0,min=a[0].s;
for(i=0;i if(min>a[i].s){ j=0;b[j++]=a[i];min=a[i].s; } elseif(min==a[i].s) b[j++]=a[i]; } returnj; 2 intr=0,temp,p,sign=1; for(temp=m+1;temp //从temp开始循环,判断紧靠temp的整数 { for(p=2;p { if(temp%p! =0)//判断temp是否为素数 sign=1;//若是素数,标志设为1 else { sign=0;//若不是素数,标志设为0 break; } } if(sign==1&&p>=temp) { if(k>=0)//判断已有的素数个数是否已经满足sum个 { xx[r++]=temp;//将素数temp存入数组select k--;//将题目中要求的素数个数减1 } else break; } } } 3 3 . doubles=1.0,y=x; inti; longk=1; for(i=1;i<=n;i++){ k=k*i; s+=y/k; y*=x; } returns; 4, . inti; char*p=s,*q=t; intn=0,m=0; while(*p){ n++; p++; }while(*q) { m++; q++; } if(n>=m) p=s; else p=t; returnp 5 .inti,j=0; for(i=0;i if(s[i]%2==0)t[j++]=s[i]; t[j]='\0'; 6 longw; w=h*1000+5; return(float)w/1000; 7. . { inttot=0,i,j; for(i=0;i tot+=a[0][i]; tot+=a[M-1][i]; } for(i=1;i tot+=a[i][0]; tot+=a[i][N-1]; } returntot; 8. inti,j; for(j=0;j b[j]=0;//计数器初始化 for(i=0;i if(a[i]>=0&&a[i]<=9) //0到9岁 b[0]+=1; elseif(a[i]>=10&&a[i]<=19)//10到19岁 b[1]+=1; elseif(a[i]>=20&&a[i]<=29) b[2]+=1; elseif(a[i]>=30&&a[i]<=39) b[3]+=1; elseif(a[i]>=40&&a[i]<=49) b[4]+=1; elseif(a[i]>=50&&a[i]<=59) b[5]+=1; elseif(a[i]>=60&&a[i]<=69) b[6]+=1; elseif(a[i]>=70&&a[i]<=79) b[7]+=1; elseif(a[i]>=80&&a[i]<=89) b[8]+=1; elseif(a[i]>=90&&a[i]<=99) b[9]+=1; else b[10]+=1; } doublernd() {statict=29,c=217,m=1024,r=0; r=(r*t+c)%m;return((double)r/m); } 9 doubles=0,t=1; inti; for(i=1;i<=n;i++){ t*=i; s+=1./t; } returns; 10 . inti,j=0; doubles=0; for(i=3;i<=n;i++){ for(j=2;j if(i%j==0)break; if(j==i)s=s+sqrt(i); } returns; 11. .inti,t,j=0,*p=a; t=p[0];//设置临时变量t初值指向第一数组值 for(i=0;i<=n;i++) if(t==p[i])//当临时变量与数组中的某个值相同则跳出,比较下一个元素 ; else//如果临时变量与数组中值不同,则对临时变量重新赋值 { a[j]=t; t=p[i]; j++; } if(i>=n) a[j]=t; returnj; 12. .inti; doubleave=0.0; *n=0; for(i=0;i ave/=N;/*计算平均值*/ for(i=0;i if(a[i].s b[*n]=a[i]; (*n)++; 13 inti,n=0;//字符统计初始值设置为0 for(i=0;i //小于字符串长度进行字符循环判断 { if(s[i]>='a'&&s[i]<='z'&&s[i+1]==''||s[i+1]=='\0')//单词判断条件 n++;//单词统计计数器加1 } returnn;//返回统计值 14. intj=0; char*p=a; while(*p=='*')p++; while(*p){ a[j++]=*p; p++; } a[j]='\0'; 15。 doubles=0.0; inti; for(i=1;i<=m;i++)s+=log(1.0*i); s=sqrt(s); returns; 16。 .inti,j; for(j=0;j for(i=0;i { b[*n]=*(*(s+i)+j); *n=*n+1; } 17. inti,n=0,flag=1;//初始设置标识位flag=1 char*p=str;//设置工作指针 while(*p)//取字符串大小 { n++; p++; } for(i=0;i //循环判断字符串s是否为回文 if(str[i]==str[n-1-i]); //设置比较位j为n-1-i else //若不符合条件,标识位设为0,跳出循环 { flag=0; break; } returnflag; } 18。 。 inti,j; intt=0;//初始化数组个数 for(i=2;i { j=2; while(j { if(i%j==0)//如果i不是素数 { xx[t]=i; t++; break; } j++; } *k=t; } } 19 char*q=a; intj=0; while(*q&&q if(*q! ='*')a[j++]=*q; q++; } while(*p)a[j++]=*p++; a[j]='\0'; 20 inti; floatave=0.0; for(i=0;i ave=ave/n; returnave; 21 .inti; *n=0; for(i=7;i<1000;i++) if(((i%7)==0||(i%11)==0)&&(i%77)! =0)a[(*n)++]=i; } 22 .STRECtmp; inti,j; for(i=0;i for(j=i+1;j if(a[i].s tmp=a[i]; a[i]=a[j]; a[j]=tmp; } } 23. . inti; doublesum=0.0; for(i=1;i<=n;i++) if(i%5==0||i%9==0)/*被5或9整除*/ sum+=1.0/i; returnsum; 24 inti,max=a[0].s,n=0; for(i=1;i if(max for(i=0;i if(max==a[i].s)b[n++]=a[i];/*找相等的最高成绩并存入数组b中*/ returnn;/*返回符合条件的人数*/ } 25. inti,min=a[0].s,j=0; for(i=1;i if(min>a[i].s){/*如果最低分min仍大于当前分*/ j=i;/*记住位置*/ min=a[i].s;/*把当前分赋值给min*/ } *s=a[j]; 26. inti,pos=0,max=*s; for(i=1;i if(max<*(s+i)){ max=*(s+i); pos=i; } } *k=pos; 27 } FILE*rf,*wf; inti,a,b;longc; rf=fopen("in.dat","r"); wf=fopen("out.dat","w"); for(i=0;i<10;i++){ fscanf(rf,"%d,%d",&a,&b); fun(a,b,&c); fprintf(wf,"a=%d,b=%d,c=%ld\n",a,b,c); } fclose(rf); fclose(wf); } 28 doublet=0; inti; *n=0; for(i=0;i t=t/N; for(i=0;i returnt; 29、 intn=1;/*循环计数*/ doublesn=1;/*累计数*/ doublexn=1,xn1=0;/*x的n值,以及x的n-1值;*/ while(fabs(xn-xn1)>=0.000001)/*绝对值是否满足条件*/ { xn=xn*x*(0.5-n+1)/n;/*表达式分解以后xn=(xn-1)*x*(0.5-n+1)/n*/ n+=1; sn+=xn;/*sn累加上xn*/ } return(sn); 30 STREC*p=h->next;/*由于头结点中没有存放数据*/ doubleav=0.0;/*对计算成绩平均值的变量进行初始化*/ intn=0; while(p! =NULL){/*判断链表是否结束*/ av=av+p->s;/*对成绩进行累加*/ p=p->next;/*到下一个结点位置*/ n++;/*人数加1*/ } av/=n;/*计算成绩平均值*/ returnav;/*返回成绩平均值*/ 31 inti; c.num[0]='\0';/*置初始空串*/ c.s=-1;/*置成绩为-1*/ for(i=0;i if(strcmp(a[i].num,b)==0){/*判断学号是否相等*/ strcpy(c.num,a[i].num);/*相等,则对学号进行赋值*/ c.s=a[i].s;/*相等,则对成绩进行赋值*/ break;/*退出循环体*/ } returnc;/*返回结构体变量*/ 32. *c=(a%10)*1000+(b/10)*100+(a/10)*10+(b%10); 33. char*p=tt; inti; for(i=0;i<26;i++)pp[i]=0; while(*p){ if(*p>='a'&&*p<='z')pp[*p-'a']+=1; p++; } } 34 chart; inti,j;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 新思路 语言 编程 大全 程序 105
![提示](https://static.bdocx.com/images/bang_tan.gif)