C语言编辑作业二1.docx
《C语言编辑作业二1.docx》由会员分享,可在线阅读,更多相关《C语言编辑作业二1.docx(31页珍藏版)》请在冰点文库上搜索。
C语言编辑作业二1
一
1. 求出10至1000之内能同时被2、3、7整除的数,并输出。
#include
intmain()
{intn;
for(n=10;n<=1000;n++)
{if(n%42==0)
printf("%d",n);
}
printf("\n");
return0;
2. 用switch语句编一程序,对于给定的一个百分制成绩,输出相应的五分制成绩,设:
90分以上为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。
{floatscore;
chargrade;
scanf("%f",&score);
switch((int)(score/10))
{
case10:
case9:
grade='A';break;
case8:
grade='B';break;
case7:
grade='C';break;
case6:
grade='D';break;
case5:
case4:
case3:
case2:
case1:
case0:
grade='E';break;
default:
printf("error\n");
printf("%c\n",grade);
3、有10个数围成一圈,求相邻三个数之和的最小值。
{floata[10];
floatt,b;
inti;
printf("qingshuru10geshu:
\n");
for(i=0;i<=9;i++)
scanf("%f",&a[i]);
t=a[0]+a[1]+a[9];
for(i=1;i<9;i++)
{b=a[i-1]+a[i]+a[i+1];
if(t>b)
t=b;
printf("Thesmallestnumberis:
%6.2f\n",t);
4. 编程判断输入的正整数是否既是5又是7的整倍数。
若是,则输出yes;否则输出no。
scanf("%d",&n);
if(n%5==0&&n%7==0)
printf("yes\n");
elseprintf("no\n");
5. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。
例如6=1+2+3.编程找出1000以内的所有完数。
intm,s,i;
for(m=2;m<1000;m++)
{s=0;
for(i=1;iif(m%i==0)s=s+i;if(s==m){printf("%d,itsfactorsare",m);for(i=1;iif(m%i==0)printf("%d",i);printf("\n");}}return0;}法二#includeintmain(){intm,i,s;for(m=2;m<1000;m++){s=1;for(i=2;i<=m/2;i++){if(m%i==0)s=s+i;}if(s==m){printf("%dis完数itsfactorsare",m);for(i=1;i<=m;i++)if(m%i==0)printf("%d",i);printf("\n");}}return0;}二1. 把100---200间的不能被3整除的数输出。#includeintmain(){intn;for(n=100;n<=200;n++)if(n%3!=0)printf("%3d\n",n);return0;}2.编写一函数fun,实现矩阵(3行3列)的转置(即行列互换)。#include#defineN3floatb[3][3];floata[3][3];intmain(){voidfun(floata[][3]);inti,j;printf("qingshurushuzu:\n");for(i=0;ifor(j=0;jscanf("%f",&a[i][j]);printf("\nyuanshuzua:\n");for(i=0;i{for(j=0;j{printf("%8.2f",a[i][j]);}printf("\n");}fun(a);printf("zhuanzhihoushuzua:\n");for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
if(m%i==0)
s=s+i;
if(s==m)
{printf("%d,itsfactorsare",m);
for(i=1;iif(m%i==0)printf("%d",i);printf("\n");}}return0;}法二#includeintmain(){intm,i,s;for(m=2;m<1000;m++){s=1;for(i=2;i<=m/2;i++){if(m%i==0)s=s+i;}if(s==m){printf("%dis完数itsfactorsare",m);for(i=1;i<=m;i++)if(m%i==0)printf("%d",i);printf("\n");}}return0;}二1. 把100---200间的不能被3整除的数输出。#includeintmain(){intn;for(n=100;n<=200;n++)if(n%3!=0)printf("%3d\n",n);return0;}2.编写一函数fun,实现矩阵(3行3列)的转置(即行列互换)。#include#defineN3floatb[3][3];floata[3][3];intmain(){voidfun(floata[][3]);inti,j;printf("qingshurushuzu:\n");for(i=0;ifor(j=0;jscanf("%f",&a[i][j]);printf("\nyuanshuzua:\n");for(i=0;i{for(j=0;j{printf("%8.2f",a[i][j]);}printf("\n");}fun(a);printf("zhuanzhihoushuzua:\n");for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
printf("%d",i);
法二
intm,i,s;
s=1;
for(i=2;i<=m/2;i++)
printf("%dis完数itsfactorsare",m);
for(i=1;i<=m;i++)
二
1. 把100---200间的不能被3整除的数输出。
intn;
for(n=100;n<=200;n++)
if(n%3!
=0)
printf("%3d\n",n);
2.编写一函数fun,实现矩阵(3行3列)的转置(即行列互换)。
#defineN3
floatb[3][3];
floata[3][3];
{voidfun(floata[][3]);
inti,j;
printf("qingshurushuzu:
for(i=0;ifor(j=0;jscanf("%f",&a[i][j]);printf("\nyuanshuzua:\n");for(i=0;i{for(j=0;j{printf("%8.2f",a[i][j]);}printf("\n");}fun(a);printf("zhuanzhihoushuzua:\n");for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
for(j=0;jscanf("%f",&a[i][j]);printf("\nyuanshuzua:\n");for(i=0;i{for(j=0;j{printf("%8.2f",a[i][j]);}printf("\n");}fun(a);printf("zhuanzhihoushuzua:\n");for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
scanf("%f",&a[i][j]);
printf("\nyuanshuzua:
for(i=0;i{for(j=0;j{printf("%8.2f",a[i][j]);}printf("\n");}fun(a);printf("zhuanzhihoushuzua:\n");for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{for(j=0;j{printf("%8.2f",a[i][j]);}printf("\n");}fun(a);printf("zhuanzhihoushuzua:\n");for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{printf("%8.2f",a[i][j]);
fun(a);
printf("zhuanzhihoushuzua:
for(i=0;i{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{for(j=0;jprintf("%8.2f",b[i][j]);printf("\n");}return0;}voidfun(floata[][3]){inti,j,t;for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
printf("%8.2f",b[i][j]);
voidfun(floata[][3])
{inti,j,t;
for(i=0;ifor(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
for(j=0;jb[j][i]=a[i][j];}3. 从键盘输入100个整数,统计其中正数、负数及零的个数。#includeintmain(){inti,n,s1,s2,s3;for(i=1,s1=0,s2=0,s3=0;i<=100;i++){scanf("%d",&n);if(n>0)s1=s1+1;if(n<0)s2=s2+1;if(n==0)s3=s3+1;}printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);return0;}4. 求1到100之间的奇数之和及偶数之和,并将二者输出。#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}三1. 编程:输出100~300中的素数及素数的个数#include#includeintmain(){intn,k,i,m=0;for(n=101;n<=300;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%4d",n);m=m+1;if(m%10==0)printf("\n");}}printf("\n");printf("m=%3d\n",m);return0;}2. 有一数列,包含10个数,已按升序排好。现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:原数列:2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。#includeintmain(){intaa[10]={2,4,6,8,10,12,14,16,18,20},i;voidsort(inta[],intn);sort(aa,5);for(i=0;i<10;i++)printf("%d",aa[i]);printf("\n");return0;}voidsort(inta[],intn){inti,j,t;for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
b[j][i]=a[i][j];
3. 从键盘输入100个整数,统计其中正数、负数及零的个数。
{inti,n,s1,s2,s3;
for(i=1,s1=0,s2=0,s3=0;i<=100;i++)
{scanf("%d",&n);
if(n>0)s1=s1+1;
if(n<0)s2=s2+1;
if(n==0)s3=s3+1;
printf("s1=%ds2=%ds3=%d\n",s1,s2,s3);
4. 求1到100之间的奇数之和及偶数之和,并将二者输出。
{inti,s1=0,s2=0;
for(i=1;i<=100;i++)
{if(i%2==0)
s1=s1+1;
elses2=s2+1;
printf("s1=%d\ns2=%d\n",s1,s2);
5. 编写一个函数,求6行、6列的二维数组全体元素中负数的个数。
inti,j,a[6][6],n=0;
printf("输入6*6数组:
for(i=0;i<6;i++)
for(j=0;j<6;j++)
scanf("%d",&a[i][j]);
{for(j=0;j<6;j++)
if(a[i][j]<0)
n=n+1;
printf("n=%d\n",n);
三
1. 编程:
输出100~300中的素数及素数的个数
intn,k,i,m=0;
for(n=101;n<=300;n=n+2)
{k=sqrt(n);
for(i=2;i<=k;i++)
if(n%i==0)break;
if(i>=k+1)
{printf("%4d",n);
m=m+1;
if(m%10==0)printf("\n");
printf("m=%3d\n",m);
2. 有一数列,包含10个数,已按升序排好。
现要求编一程序,从指定位置开始的n个数按逆序重新排列并输出新的完整数列(例:
原数列:
2,4,6,8,10,12,14,16,18,20,若要求把从第4个数开始的5个数按逆序重新排列,则得到新数列为2,4,6,16,14,12,10,8,18,20)要求在主函数中输入10个数及指定位置m的值,并输出新的数列,在被调函数中从指定位置开始的n个数按逆序重新排列。
intaa[10]={2,4,6,8,10,12,14,16,18,20},i;
voidsort(inta[],intn);
sort(aa,5);
for(i=0;i<10;i++)
printf("%d",aa[i]);
voidsort(inta[],intn)
for(i=3;ifor(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
for(j=i;jif(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
if(a[i]{t=a[i];a[i]=a[j];a[j]=t;}}3. 编程:将一个数组中的数值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。#includeintmain(){inti,a[5];for(i=0;i<5;i++)scanf("%d",&a[i]);for(i=4;i>=0;i--)printf("%2d",a[i]);printf("\n");return0;}●4、编程:将字符串中的第m个字符开始的全部字符复制到另一个字符串。要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。#include#includechard[80]="0";intmain(){intcpy(chars[],intm);chara[80];intm;gets(a);scanf("%d",&m);cpy(a,m);puts(d);return0;}intcpy(chars[],intm){inti,j=0,t;t=strlen(s);for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{t=a[i];a[i]=a[j];a[j]=t;}
3. 编程:
将一个数组中的数值按逆序重新存放。
例如,原来顺序为8,6,5,4,1。
要求改为1,4,5,6,8。
{inti,a[5];
for(i=0;i<5;i++)
scanf("%d",&a[i]);
for(i=4;i>=0;i--)
printf("%2d",a[i]);
●4、编程:
将字符串中的第m个字符开始的全部字符复制到另一个字符串。
要求在主函数中输入字符串及m的值并输出复制结果,在被调函数中完成复制。
chard[80]="0";
{intcpy(chars[],intm);
chara[80];
intm;
gets(a);
scanf("%d",&m);
cpy(a,m);
puts(d);
intcpy(chars[],intm)
{inti,j=0,t;
t=strlen(s);
for(i=m-1;id[j]=s[i];}5.编程:求1到100之间的奇数之和及偶数之和,并将二者输出#includeintmain(){inti,s1=0,s2=0;for(i=1;i<=100;i++){if(i%2==0)s1=s1+1;elses2=s2+1;}printf("s1=%d\ns2=%d\n",s1,s2);return0;}6. 求6行、6列的二维数组全体元素中负数的个数。#includeintmain(){inti,j,a[6][6],n=0;printf("输入6*6数组:\n");for(i=0;i<6;i++)for(j=0;j<6;j++)scanf("%d",&a[i][j]);for(i=0;i<6;i++){for(j=0;j<6;j++)if(a[i][j]<0)n=n+1;}printf("n=%d\n",n);return0;}四1.有4名学生,每个学生考4门课,要求:写2个函数:(1)返回值为总平均分的函数(2)返回值为最低分的函数。在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分#include#defineN4intmain(){floataver(floatm[4][4]);floatlow(floatn[4][4]);floata[4][4],t,s,k;inti,j;printf("shuchushuzua:\n");for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%f",&a[i][j]);a[i][j]=k;t=aver(a);s=low(a);printf("aver=%4f",t);printf("main=%4f",s);printf("\n");return0;}floataver(floatm[4][4]){inti,j;floatsum=0,aver;for(i=0;i<4;i++)for(j=0;j<4;j++)sum=sum+m[i][j];aver=sum/4;return(aver);}floatlow(floatn[4][4]){inti,j;floatmin=n[0][0];for(i=0;i<4;i++)for(j=0;j<4;j++){if(min>n[i][j])min=n[i][j];}return(min);}2.编程:把100---200间的不能被3整除的数输出。#includeintmain(){intm;for(m=100;m<=200;m++){if(m%3!=0)printf("%4d",m);}printf("\n");return0;}3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。要求:写3个函数:(1)输入10个数的函数,(2)交换处理的函数,(3)输出10个数的函数。在main()函数中调用以上3个函数。#includeintmain(){intinput(inta[]);intf(inta[]);intoutput(inta[]);inta[10];input(a);f(a);output(a);return0;}intinput(inta[]){inti;for(i=0;i<10;i++)scanf("%d",&a[i]);}intf(inta[]){inti,j,t,max=0,min=0;for(i=1,j=0;i<10;i++,j++){if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
d[j]=s[i];
5.编程:
求1到100之间的奇数之和及偶数之和,并将二者输出
inti,s1=0,s2=0;
if(i%2==0)
6. 求6行、6列的二维数组全体元素中负数的个数。
四
1.有4名学生,每个学生考4门课,要求:
写2个函数:
(1)返回值为总平均分的函数
(2)返回值为最低分的函数。
在main()函数中输入每个学生4门课的成绩,调用以上2个函数,输出总平均分和最低分
#defineN4
{floataver(floatm[4][4]);
floatlow(floatn[4][4]);
floata[4][4],t,s,k;
printf("shuchushuzua:
for(i=0;i<4;i++)
for(j=0;j<4;j++)
a[i][j]=k;
t=aver(a);
s=low(a);
printf("aver=%4f",t);
printf("main=%4f",s);
floataver(floatm[4][4])
{inti,j;
floatsum=0,aver;
sum=sum+m[i][j];
aver=sum/4;
return(aver);
floatlow(floatn[4][4])
floatmin=n[0][0];
{if(min>n[i][j])
min=n[i][j];
return(min);
2.编程:
把100---200间的不能被3整除的数输出。
{intm;
for(m=100;m<=200;m++)
{if(m%3!
printf("%4d",m);
3. 输入10个整数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。
要求:
写3个函数:
(1)输入10个数的函数,
(2)交换处理的函数,(3)输出10个数的函数。
在main()函数中调用以上3个函数。
{intinput(inta[]);
intf(inta[]);
intoutput(inta[]);
inta[10];
input(a);
f(a);
output(a);
intinput(inta[])
{inti;
intf(inta[])
{inti,j,t,max=0,min=0;
for(i=1,j=0;i<10;i++,j++)
{if(a[max]max=i;if(a[min]>a[j])min=j;}t=a[max];a[max]=a[9];a[9]=t;t=a[min];a[min]=a[0];a[0]=t;}intoutput(inta[]){inti;for(i=0;i<10;i++)printf("%5d",a[i]);printf("\n");}●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。#include#defineN5structstu{intnum;charname[20];intscore1;intscore2;intscore3;}stu[N];intmain(){intshuru();intshuchu();shuru();shuchu();}intshuru(){inti;for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
max=i;
if(a[min]>a[j])
min=j;
t=a[max];a[max]=a[9];a[9]=t;
t=a[min];a[min]=a[0];a[0]=t;
intoutput(inta[])
printf("%5d",a[i]);
●4、设有10个学生的信息,包括学号、姓名和三门功课的成绩,试编写学生信息输入函数、学生信息输出函数,最后编写主函数,并在主函数中调用这些函数。
#defineN5
structstu
{intnum;
charname[20];
intscore1;
intscore2;
intscore3;
stu[N];
{intshuru();
intshuchu();
shuru();
shuchu();
intshuru()
for(i=0;i{printf("num=");scanf("%d",&stu[i].num);printf("name=");scanf("%s",&stu[i].name);printf("score1=");scanf("%d",&stu[i].score1);printf("score2=");scanf("%d",&stu[i].score2);printf("score=");scanf("%d",&stu[i].score3);}printf("\n");}intshuchu(){inti;printf("xueshengdexinxi:\n");for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{printf("num=");
scanf("%d",&stu[i].num);
printf("name=");
scanf("%s",&stu[i].name);
printf("score1=");
scanf("%d",&stu[i].score1);
printf("score2=");
scanf("%d",&stu[i].score2);
printf("score=");
scanf("%d",&stu[i].score3);
intshuchu()
printf("xueshengdexinxi:
for(i=0;i{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,stu[i].score2,stu[i].score3);}printf("\n");}五1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。#includeintmain(){inti,j,t,a[10];printf("shuru10geshu;\n");for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;}printf("shuchuxinpailie:\n");for(i=0;i<10;i++)printf("%d",a[i]);printf("\n");return0;}2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。#includeintmain(){inti,j,max,hang,lie,a[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);max=a[0][0];for(i=0;i<3;i++)for(j=0;j<4;j++)if(a[i][j]>max){max=a[i][j];hang=i;lie=j;}printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);return0;}3. 编程:从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。#include#includeintmain(){chara[81],d[81];inti,j,t=0;gets(a);t=strlen(a);for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{printf("%5d%10s%10s%10d%10d%10d\n",stu[i].num,stu[i].name,stu[i].score1,
stu[i].score2,stu[i].score3);
五
1. 从键盘输入10个整数,对其进行从小到大排序,将排序后的结果输出并保存到文件“DATA.DAT”中。
{inti,j,t,a[10];
printf("shuru10geshu;\n");
for(j=0;j<9;j++)
for(i=0;i<9-j;i++)
if(a[i]>a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t;}
printf("shuchuxinpailie:
printf("%d",a[i]);
2. 从3*4的矩阵中求出最大值及所在的行号、列号,并将结果存入文件“DATA.DAT”中。
{inti,j,max,hang,lie,a[3][4];
for(i=0;i<3;i++)
max=a[0][0];
if(a[i][j]>max)
{max=a[i][j];
hang=i;
lie=j;
printf("max=%d\nhang=%d\nlie=%d\n",max,hang,lie);
从键盘输入一行字符,将其中的大写字母改成小写字母存入磁盘文件“TEXT.TXT”中保存。
{chara[81],d[81];
inti,j,t=0;
t=strlen(a);
for(i=0,j=0;i{if(a[i]>='A'&&a[i]<='Z')d[j]=a[i]+32;}for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{if(a[i]>='A'&&a[i]<='Z')
d[j]=a[i]+32;
for(j=0;jprintf("%c",d[j]);printf("\n");return0;}●4、编程:从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。#include#include#defineN3intmain(){charstr[N][81],t[81];inti,j,k;for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
printf("%c",d[j]);
从键盘输入N个字符串,按字典顺序排序后输出,并将结果保存入“DATA.DAT”中。
{charstr[N][81],t[81];
inti,j,k;
for(i=0;iscanf("%s",str[i]);for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
scanf("%s",str[i]);
for(i=0;i{k=i;for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
{k=i;
for(j=i+1;jif(strcmp(str[k],str[j])>0)k=j;{strcpy(t,str[k]);strcpy(str[k],str[i]);strcpy(str[i],t);}}for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
if(strcmp(str[k],str[j])>0)
k=j;
strcpy(t,str[k]);
strcpy(str[k],str[i]);
strcpy(str[i],t);
for(i=0;iprintf("%c",str[i]);printf("\n");return0;}法二#include#include#includetypedefstruct{charc[105];}Line;Linea[10];intcmp(constvoid*x,constvoid*y){char*m=((Line*)x)->c;char*n=((Line*)y)->c;returnstrcmp(m,n);}intmain(){intL,M,i,x,y,ans;for(i=0;i<10;i++)scanf("%s",a[i].c);qsort(a,10,sizeof(a[0]),cmp);for(i=0;i<10;i++)printf("%s\n",a[i].c);return0;}5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。#includeintmain(){inti,z=0,f=0,l=0,a[10];for(i=0;i<10;i++){scanf("%d",&a[i]);if(a[i]>0)z++;elseif(a[i]==0)l++;elsef++;}printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);return0;}6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#includeintmain(){charc;intz=0,k=0,s=0,q=0;printf("qingshuchuyihangzifu:\n");while((c=getchar())!='\n'){if(c>='a'&&c<='z'||c>='A'&&c<='Z')z++;elseif(c=='')k++;elseif(c>='0'&&c<='9')s++;elseq++;}printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",z,k,s,q);return0;}。5. 输出所有的“水
printf("%c",str[i]);
typedefstruct{
charc[105];
}Line;
Linea[10];
intcmp(constvoid*x,constvoid*y)
char*m=((Line*)x)->c;
char*n=((Line*)y)->c;
returnstrcmp(m,n);
intL,M,i,x,y,ans;
scanf("%s",a[i].c);
qsort(a,10,sizeof(a[0]),cmp);
printf("%s\n",a[i].c);
5.键盘输入n个整数,统计其中正数、负数及零的个数,结果保存至“data.dat”文件中。
{inti,z=0,f=0,l=0,a[10];
{scanf("%d",&a[i]);
if(a[i]>0)z++;
elseif(a[i]==0)l++;
elsef++;
printf("zhengshu=%d\nfushu=%d\nling=%d\n",z,f,l);
6. 输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数,并将统计结果输出到磁盘文件“test”中保存#include
{charc;
intz=0,k=0,s=0,q=0;
printf("qingshuchuyihangzifu:
while((c=getchar())!
='\n')
{if(c>='a'&&c<='z'||c>='A'&&c<='Z')
z++;
elseif(c=='')
k++;
elseif(c>='0'&&c<='9')
s++;
else
q++;
printf("zimushu=%d\nkonggeshu=%d\nshuzishu=%d\nqitazifu=%d\n",
z,k,s,q);
}。
5. 输出所有的“水
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2