版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全国计算机等级教育二级c语言考试原题及答案绿色部分为题目的问题位置,红色部分为答案本题库为全国计算机二级C语言上机考试原题,全部上机题库均出自此100套题,每次考试从中选50套。第01套:是给定程序的功能是调用fun函数建立班级通讯录.通讯录中记录每位学生的编号、姓名和电话号码。班级的人数和学生的信息从键盘读入,每个人的信息作为ー个数据块写到名为myfile5.dat的二进制文件中。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!给定源程序:^include<stdio.h>ftinclude<stdlib.h>8defineN5typedefstruct{intnum;charname[10];chartel[10];}STYPE;voidcheck();/**********found**********/intfun( 1*std)(/**********found**********/*fp;inti;if((fp=fopenC/myfile5.dat","wb"))==NULL)return(0);printf(*\n0utputdatatofile!\n");for(i=0;i<N;i++)/**********found**********/fwrite(&std[i],sizeof(STYPE),1» 」 );fclose(fp);return(1);}main(){STYPEs[10]={ {1,"aaaaa","111111”},{1,"bbbbb",“222222”},{Ijccccc”,"333333”},{Ijddddd,*444444"},{1Jeeeee*,*555555"});intk;k=fun(s);if(k==l){printf("Succeed!");check();}elseprintf("Fai1!");voidcheck(){FILE*fp;inti;STYPEs[10];if((fp=fopen("myfile5.dat*,"rb"))==NULL){printf("Fail!!\n");exit(0);)printf("\nReadfileandoutputtoscreen:\n");printf("\nnumnametel\n");for(i=0;i<N;i++){fread(&s[i],sizeof(STYPE),1,fp);printf("%6d%s%s\n”,s[i]・num,s[i].name,s[i].tel);}fclose(fp);}解题答案:^include<stdio.h>#include<stdlib.h>^defineN5typedefstruct{intnum;charname[10];chartel[10];}STYPE;voidcheck();/**********found**********/intfun(STYPE*std)(/**********found**********/FILE*fp;inti;if((fp二fopen("myfile5.dat","wb"))==NULL)return(0);printf(*\n0utputdatatofile!\n");for(i=0;i<N;i++)/**********found**********/fwrite(&std[i],sizeof(STYPE),1,fp);fclose(fp);return(1);}main(){STYPEs[10]={{l,"aaaaa","111111"},{1,"bbbbb“222222”},{1,"ccccc","333333”},{1,"ddddd","444444”},{1,eeeee","555555”}};intk;k=fun(s);if(k=l){printf("Succeed!");check();}elseprintf("Fail!");voidcheck(){FILE*fp;inti;STYPEs[10];if((fp=fopen("myfile5.dat","rb"))==NULL){printf(*Fail!!\n*):exit(O);)printf("\nReadfileandoutputtoscreen:\n");printf("\nnumnametel\n");for(i=0:i<N;i++){fread(&s[i],sizeof(STYPE),1,fp);printf("%6d%s%s\n”,s[i].num,s[i].name,s[i],tel);}fclose(fp);}给定程序MOD"C中函数fun的功能是:先将在字符串s中的字符按正序存放到t串中,然后把s中的字符按逆序连接到t串的后面。例如:当s中的字符串为:"ABCDE"时,则t中的字符串应为:"ABCDEEDCBA”。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:^include<stdio.h>#include<string.h>voidfun(char*s,char*t){inti,si;si=strlen(s);/************found************/for(i=0;i<=sl;i++)t[i]=s[i];for(i=0;i<sl;i++)t[sl+i]=s[sl-i-l];/************found************/t[sl]='、0';}main(){chars[100],t[100];printf(*\nPleaseenterstrings:");scanf(*%s*,s);fun(s,t);printf(*Theresultis:%s\n*,t);)解题答案:#include<stdio.h>0include<string.h>voidfun(char*s,char*t){inti,si;si=strlen(s);/************found************/for(i=0;i<=si;i++)t[i]=s[i];for(i=0;i<sl;i++)t[sl+i]=s[sl-i-l];/************found************/t[2*sl]=‘、〇';}main(){chars[100],t[100];printf〈’\nPleaseenterstrings:*);scanf('%s”,s);fun(s,t);printf(*Theresultis:%s\n”,t);}函数fun的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。例如,当a=45,b=l2时,调用该函数后,c=4152«注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。给定源程序:#include<stdio.h>voidfun(inta,intb,long*c)main(){inta,b;longc;voidNONO();printf(*Inputa,b:");scanf("%d,%d”,&a,&b);fun(a,b,&c);printf(*Theresultis:%d\n,c);NONO();}voidNONO(){/・本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/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);}解题答案:#include<stdio.h>voidfun(inta,intb,long*c){*c=(a/10)*1000+(b/10)*100+(a%10)*10+(b%10);}main(){inta,b:longc;voidNONO();printf("Inputa,b:");scanf("%d,%d",&a,&b);fun(a,b,&c);printf("Theresultis:%d\n",c);N0N0():}voidNONO(){/・本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/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);)※※※※※※※※※※※※※※※※※※※※※※派※※第02套:是给定程序的功能是:从键盘输入若干行文本(每行不超过80个字符),写到文件myfile4.txt中,用ー1作为字符串输入结束的标志。然后将文件的内容读出显示在屏幕上。文件的读写分别由自定义函数ReadText和WriteText实现。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!给定源程序:0include<stdio.h>^include<string.h>#include<stdlib.h>voidWriteText(FILE*);voidReadText(FILE*);main(){FILE*fp;if((fp二fopen("myfile4.txt","w"))ニニNULL){printf("openfail!!\n");exit(0);}WriteText(fp);fclose(fp);if((fp=fopen("myfile4.txt","r"))==NULD{printf("openfail!!\n");exit(0);}ReadText(fp);fclose(fp);}/**********found**********/voidWriteText(FILE 1 ){charstr[81];printf("\nEnterstringwith-1toend:\n");gets(str);while(strcmp(str,"-1")!=0){/**********found**********/fputs( 2 ,fw);fputs("\n",fw);gets(str);}}voidReadText(FILE*fr){charstr[81];printf("\nReadfileandoutputtoscreen:\n");fgets(str,81,fr);while(!feof(fr)){/**********found**********/printf("%s", 3 );fgets(str,81,fr);)}解题答案:#include<stdio.h>#include<string.h>^include<stdlib.h>voidWriteText(FILE*);voidReadText(FILE*);main(){FILE*fp;if((fp二fopen("myfile4.txt","w"))ニニNULL){printf("openfail!!\n");exit(0);}WriteText(fp);fclose(fp);if((fp二fopen("myfile4.txt","r"))==NULL){printf("openfail!!\n");exit(0);)ReadText(fp);fclose(fp);}/**********found**********/voidWriteText(FILE*fw){charstr[81];printf(*\nEnterstringwith-1toend:\n");gets(str);while(strcmp(str,*-1*)!=0){/**********found**********/fputs(str,fw);fputs('\n",fw);gets(str);})voidReadText(FILE*fr){charstr[81];printf(*\nReadfileandoutputtoscreen:\n");fgets(str,81,fr);while(!feof(fr)){/**********found**********/printf(飞s”,str);fgets(str,81,fr);})给定程序MODILC中函数fun的功能是:从低位开始取出长整型变量s中奇数位上的数,依次构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为:7654321时,I中的数为:7531c请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#include<stdio.h>/************found************/voidfun(longs,longt){longsl=10;*t=s%10;while(s>0){s=s/100;*t=s%10*si+*t;/林**********found************/si=s1*100;))main(){longs,t;printf("\nPleaseenters:");scanf("%ld",&s);fun(s,&t);printf(*Theresultis:%ld\n*,t);}解题答窠:#include<stdio.h>/************found************/voidfun(longs,long*t){longsl=10;*t=s%10;while(s>0){s=s/100;*t=s%10*si+*t;/************found************/sl=sl*10;))main(){longs,t;printf("\nPleaseenters:");scanf("%ld',&s);fun(s,&t);printf(*Theresultis:%ld\n”,t);)函数fun的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的千位和十位上。例如,当a=45,b=12时,调用该函数后,c=1524<,注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。给定源程序:#include<stdio.h>voidfun(inta,intb,long*c)main(){inta,b;longc;voidNONO();printf(*Inputa,b:");scanf("%d,%d",&a,&b);fun(a,b,&c);printf(*Theresultis:%ld\n”,c);N0N0();}voidNONO(){/・本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/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);}解题答案:#include<stdio.h>voidfun(inta,intb,long*c){*c=(b/10)*1000+(a%10)*100+(b%10)*10+(a/10);}main(){inta,b;longc;voidNONO();printf("Inputa,b:");scanf("%d,%d",&a,&b);fun(a,b,&c);printf("Theresultis:%ld\n",c);N0N0();}voidNONO(){/・本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/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);}※※※※※※※※※※※※※※※※※派※※※※※※※笫03套:是给定程序中,函数fun的功能是:将自然数1-10以及它们的平方根写到名为myfile3.txt的文本文件中,然后再顺序读出显示在屏幕上。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!给定源程序:#include<math.h>^include<stdio.h>intfun(char*fname){FILE*fp;inti,n;floatx;if((fp=fopen(fname,"w"))ニニNULL)return0;forgK10;i++)/**********found**********/fprintf( 1 ,"%d%f\n",i,sqrt((double)i));printf("\nSucceed!!\n");/**********found**********/—2—;printf("\nThedatainfile:\n");/**********found**********/if((fp=fopen(工,"r"))==NULL)return0;fscanf(fp,"%d%f",&n,&x);while(!feof(fp)){printf("%d%f\n",n,x);fscanf(fp,"%d%f",&n,&x);}fclose(fp);return1;)main(){charfname[]="myfile3.txt";fun(fname);)解题答案:^include<math.h>#include<stdio.h>intfun(char*fname){FILE*fp;inti,n;floatx;if((fp=fopen(fname,"w"))ニニNULL)return0;for(i=l;i<=10;i++)/**********found**********/fprintf(fp,"%d%f\n”,i,sqrt((double)i));printf("\nSucceed!!\n");/**********found**********/fclose(fp);printf("\nThedatainfile:\n");/**********found**********/if((fp=fopen(fname,"r"))ニニNULL)return0;fscanf(fp,"%d%f",&n,&x);while(!feof(fp)){printf("%d%f\n",n,x);fscanf(fp,"%d%f",&n,&x);}fclose(fp);return1;/************found************/)for(i=j+l;i<n;i++)main()if(a[p]>a[i]){charfname[]=*myfile3.txt*;/************found************/fun(fname);P=i;)if(p!=j)***************************************************{t=a[j];a[j]=a[p];a[p]=t;}给定程序MODH.C中fun函数的功能是:将n个无序整数从小到)大排序。请改正程序中的错误,使它能得出正确的结果。)注意:不要改动main函数,不得增行或删行,也不得更改程序的putarr(intn,int*z)结构!给定源程序:{inti;#include<stdio.h>for(i=1;i<=n;i++,z++)^include<stdlib.h>{printf("%4d",*z);fun(intn,int*a)if(!(i%10))printf("\n");{inti,j,p,t;}printf("\n");for(j=0;j<n-l;j++)}{p=j;main()/************found************/{intaa[20]={9,3,0,4,1,2,5,6,8,10,7},n=l1;for(i=j+l;i<n-l;i++)printf("\n\nBeforesorting/dnumbers:\n",n);putarr(n,if(a[p]>a[i])aa):/************found************/fun(n,aa);t=i;printf("\nAftersorting%dnumbers:"",n);putarr(n,if(p!=j)aa):{t=a[j];a[j]=a[p];a[p]=t;}))***************************************************)函数fun的功能是:将两个两位数的正整数a、b合并形成一个整putarr(intn,int*z)数放在c中。合并的方式是:将a数的十位和个位数依次放在c{inti;数的个位和百位上,b数的十位和个位数依次放在c数的十位和千for(i=1;i<=n;i++,z++)位上。{printf(*%4d*,*z);例如,当a=45,b=12时,调用该函数后,c=2514。if(!(i%10))printf('\n");注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的}printf("\n");数据不得修改。}请勿改动主函数main和其它函数中的任何内容,仅在函数fun的main()花括号中填入{intaa[20]={9,3,0,4,1,2,5,6,8,10,7},n=ll;你编写的若干语句。printf(*\n\nBeforesorting%dnumbers:\n*,n);putarr(n,给定源程序:aa);^include<stdio.h>fun(n,aa);voidfun(inta,intb,long*c)printf("\nAftersorting%dnumbers:\nz/,n);putarr(n,aa);}(解题答案:main()#include<stdio.h>{inta,b;longc;0include<stdlib.h>voidNONO();fun(intn,int*a)printf("Inputa,b:");{inti,j,p,t;scanf("%d,%d",&a,&b);for(j=0;j<n-l;j++)fun(a,b,&c);{p=j;printf("Theresultis:%ld\n",c);NONOO:NONOO:voidfiin(inta,intb,long*c)voidNONO(){/・本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/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);}解题答案:^include<stdio.h>voidfun(inta,intb,long*c){*c=(b%10)*1000+(a%10)*100+(b/10)*10+a/10;}main(){inta,b;longc;voidNONO();printf("Inputa,b:");scanf("%d,%d",&a,&b);fun(a,b,&c);printf("Theresultis:%ld\n",c);N0N0();}voidNONO(){/・本函数用于打开文件,输入数据「调用函数,输出数据,关闭文件。*/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);}参考答窠:*c=(b%10)*1000+(a%10)*100+(b/l0)*10+(a/10);)※※※※※※※※※※※※※※※※※※※※※※※派※第04套:是给定程序的功能是:调用函数fun将指定源文件中的内容复制到指定的目标文件中,复制成功时函数返回值为!,失败时返回值为〇〇在复制的过程中,把复制的内容输出到终端屏幕。主函数中源文件名放在变量sfname中,目标文件名放在变量tfname中。请在程序的ド划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!给定源程序:#include<stdio.h>#include<stdlib.h>intfun(char*source,char*target){FILE*fs,*ft;charch;/**********found**********/if((fs=fopen(source,1 ))==NULL)return0;if((ft=fopen(target,"w"))==NULL)return0;printf("\nThedatainfile:\n");ch=fgetc(fs);/**********found**********/while(!feof( 2 )){putchar(ch);/**********found**********/fputc(ch,:;);ch=fgetc(fs);}fclose(fs);fclose(ft);printf("\n\n");return1;)main(){charsfname[20]="myfilel",tfname[20]=*inyfile2*;FILE*myf;inti;charc;myf=fopen(sfname,w");printf("\nTheoriginaldata:\n");for(i=l;i<30;i++){c='A'+rand()%25;fprintf(myf,"%c",c)printf("%c",c);}fclose(myf);printf("\n\n");if(fun(sfname,tfname))printf("Succeed!");elseprintf('"Fail!*);解题答案:#include<stdio.h>^include<stdlib.h>intfun(char*source,char*target){FILE*fs,"ft;charch;/**********found**********/if((fs=fopen(source,"r"))==NULL)return0;if((ft=fopen(target,"w"))==NULL)return0;printf("\nThedatainfile:\n");ch=fgetc(fs);/""""""""""found""**"""*""/while(!feof(fs)){putchar(ch);/"""*""""*"found""*"""""*"/fputc(ch,ft);ch二fgetc(fs);}fclose(fs);fclose(ft);printf("\n\n");return1;}main(){charsfname[20]=*myfilel*,tfname[20]=*myfile2*;FILE"myf;inti;charc;myf=fopen(sfname,w");printf("\nTheoriginaldata:\n");for(i=l;i<30;i++){c=,A*+rand()%25;fprintf(myf,"%c”,c);printf("%c",c);}fclose(myf);printf('\n\n");if(fun(sfname,tfname))printf("Succeed!”);elseprintf("Fai1!");)给定程序MODII.C中函数fun的功能是:将长整型数中每一位上为偶数的数依次取出,构成一个新数放在t中。髙位仍在髙位,低位仍在低位。例如,当s中的数为:87653142时,t中的数为:8642。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:^include<stdio.h>voidfun(longs,long*t){intd;longsl=l;*t=0;while(s>0){d=s%10;/"*"**"*"*"*"found*"**"****"*"/if(d%2二〇){*t=d*sl+*t;si"二!0;}/""""""""""""found""""""""""""/s\=10;))main(){longs,t;printf("\nPleaseenters:");scanf("%ld",&s);fun(s,&t);printf("Theresultis:%ld\n",t);)解题答案:#include<stdio.h>voidfun(longs,long*t){intd;longsl=l;*t=0;while(s>0){d=s%10;/************found************/if(d%2==0){*t=d*sl+*t;si"二!0;}/************found************/s/=10;}}main(){longs,t;printf("\nPleaseenters:");scanf("%ld",&s);fun(s,&t);printf("Theresultis:%ld\n",t);}函数fun的功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的十位和千位上,b数的十位和个位数依次放在c数的百位和个位上。例如,当a=45,b=12时,调用该函数后,c=5142。注意:部分源程序存在文件PROG1.C中。数据文件IN.DAT中的数据不得修改。请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。给定源程序:#include<stdio.h>voidfun(inta,intb,long*c)printf("Theresultis:%ld\n",c);N0N0();}voidNONO(){/・本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/FILE*rf,*wf;inti,a,b;longc;rf=fopen("in.dat","r");wf=fopen("out.dat","w");for(i=0;i<10;i++){main(){inta,b;longc;voidNONO();printf("Inputa,b:");scanf("%d,%d”,&a,&b);fun(a,b,&c);printf("Theresultis:%ld\n",c);NONO():}voidNONO(){/・木函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/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);}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);)参考答案:voidfun(inta,intb,long*c){*c=(a%10)*1000+(b/l0)*100+(a/10)*10+(b%10);}※※※※※※※※※※※※※※※※※※※※※※派※※第05套:是给定程序中已建立一个带有头结点的单向链表,链表中的各结点按结点数据域中的数据递增有序链接。函数fun的功能是:把形参X的值放入一个新结点并插入到链表中,插入后各结点数据域的值仍保持递增有序。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得増行或删行,也不得更改程序的结构!给定源程序:解题答案:#include<stdio.h>voidfun(inta,intb,long*c)r#include<stdio.h>#include<stdlib.h>#defineN8typedefstructlist*c=(a%l0)*1000+(b/10)*100+(a/10)*10+(b%10);}{intdata;structlist*next;main(){inta,b;longc;voidNONO();printf("Inputa,b:");scanf("%d,%d",&a,&b);fun(a,b,&c);}SLIST;voidfun(SLIST*h,intx){SLIST*p,*q,*s;s=(SLIST*)malloc(sizeof(SLIST));/**********found**********/s->data=1_二
q=h;p=h->next;while(p!=NULL&&x>p->data){/**********found**********/q= 2 ;p=p->next;){SLIST*p,*q,*s;s=(SLIST*)malloc(sizeof(SLIST));/**********found**********/sー〉data二x;q=h;p二h->next;while(p!=NULL&&x>p->data){s->next=p;/**********tound**********/q->next= 3 ;)SLIST*creatlist(int*a){SLIST*h,*p,*q;inti;h=p=(SLIST*)malloc(sizeof(SLIST));for(i=0;i<N;i++){q=(SLIST*)malloc(sizeof(SLIST));q->data=a[i];p->next=q;p=q;)p->next=O;returnh;)voidoutiist(SLIST*h){SLIST*p;p=h->next;if(p=NULL)printf(n\nThelistisNULL!\n");else{printf(M\nHeadM);do{printf("->%d',,p->data);p=p->next;}while(p!=NULL);printf(H->End\nM);)/**********found**********/q=p;p二pー〉next;)sー〉next二p;/**********found**********/qー〉next二s;)SLIST*creatlist(int*a){SLIST*h,*p,*q;inti;h=p=(SLIST*)malloc(sizeof(SLIST));for(i=0;i<N;i++){q=(SLIST*)malloc(sizeof(SLIST));q->data=a[i];pー〉next=q;p=q;)p->next=0;returnh;)voidoutlist(SLIST*h){SLIST*p;p=h-〉next;if(p==NULL)printf("\nThelistisNULL!\n*);else)main(){SLIST*head;intx;inta[N]={11,12,15,18,19,22,25,29);head=creatlist(a);printf(M\nThelistbeforeinserting:\nn);outlist(head);printf(H\nEnteranumber:");scanf("%d",&x);fun(head,x);printf("\nThelistafterinserting:\nH);outlist(head);}解题答案:#include<stdio.h>^include<stdlib.h>#defineN8typedefstructlist{intdata;structlist*next;}SLIST;voidfun(SLIST*h,intx){printf("\nHead");do {printf("ー〉%d”,pー〉data); p=p-〉next;}while(p!=NULL);printf("->End\n");})main(){S
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 承德应用技术职业学院《中药鉴定学(一)》2023-2024学年第一学期期末试卷
- 承德医学院《分布式数据库原理》2023-2024学年第一学期期末试卷
- 成都中医药大学《工程岩土学及实验》2023-2024学年第一学期期末试卷
- 2025版精密机械加工外包项目合同模板2篇
- 二零二五年度二手车收购与售后服务连锁合同2篇
- 二零二五年度体育赛事合作协议书2篇
- 场内管网施工方案
- 2024消防设施智能化改造与日常维护服务协议3篇
- 二零二五年度个人股权赠与与财产分割协议书3篇
- 2024学校教师学术交流与合作研究合同3篇
- 北京市西城区2022-2023学年三年级上学期英语期末试卷(含听力音频)
- 2024年医院副院长工作总结范文(2篇)
- UL1017标准中文版-2018吸尘器UL中文版标准
- 【MOOC】诊断学-山东大学 中国大学慕课MOOC答案
- 政府采购评审专家考试试题库(完整版)
- 苏教版小学三年级科学上册单元测试题附答案(全册)
- 2024年贵州贵安新区产业发展控股集团有限公司招聘笔试参考题库含答案解析
- 2024年黑龙江省机场管理集团有限公司招聘笔试参考题库含答案解析
- 拼音四线三格加田字格模板(A4打印版可编辑打字)
- 澳门劳工求职专用简历表
- 慢性乙型病毒性肝炎临床路径
评论
0/150
提交评论