1、1.1.输入输入x x,求对应求对应y y值。值。(分段函数)分段函数)#include main()float x,y;scanf(“%f”,&x);if(x1)y=x;else if(x10)y=2*x-1;else y=3*x-11;printf(“y=%f”,y);第1页2.2.求一元二次方程解。(求一元二次方程解。(不考虑不考虑a!=0a!=0和有复根情况)和有复根情况)#include#include main()floata,b,c,d,x1,x2;scanf(%f%f%f,&a,&b,&c);d=sqrt(b*b-4*a*c);x1=(-b+d)/(2*a);x2=(-b-d)
2、/(2*a);printf(x1=%5.2f,x2=%5.2fn,x1,x2);第2页3.3.输入输入三个整数,输出其中最大数输入输入三个整数,输出其中最大数。#include main()int a,b,c,max;scanf(%d%d%d,&a,&d,&c);max=a;if(maxb)max=b;if(maxc)max=c;printf(max=%dn,max);第3页#includemain()inti,n,s=0scanf(“%d”,&n);for(i=1;i=n;i+)s=s+i;printf(“%d”,s);4.s=1+2+3+n第4页#includemain()inti,n;d
3、oubles=1;scanf(“%d”,&n);for(i=1;i=n;i+)s=s*i;printf(“s=%f”,s);5.s=n!。第5页#includemain()inti,n;doublep=1,s=0;scanf(“%d”,&n);for(i=1;i=n;i+)p=p*i;s=s+p;printf(“s=%f”,s);6.s=1!+2!+3!+n!第6页#includemain()inti,j;for(i=1;i10;i+)j=i*10+6;if(j%3!=0)countinue;printf(%5d,j);7.输出输出100以内(不含以内(不含100)能被)能被3整除且个位数为整
4、除且个位数为6全部整全部整数。数。第7页#includemain()intn;floatsum=0;for(n=1;n+)sum=sum+1.0/n;if(sum10)break;printf(n=%dn,n);8.求调和级数中第多少项值大于求调和级数中第多少项值大于10。第8页#includemain()inti,m,n=0;for(m=201;m300;m=m+2)if(n%10=0)printf(n);for(i=2;i=m)printf(%5d,m);n+;9.求求100200间全部素数。间全部素数。第9页#includemain()intf1,f2,f3,i;f1=0;f2=1;pr
5、intf(“%10d%10d”,f1,f2);for(i=3;i=20;i+)f3=f1+f2;printf(%10d,f3);if(i%5=0)printf(n);f1=f2;f2=f3;10.求菲波那契数列前求菲波那契数列前20个数。个数。第10页#includemain()intx,y,z;for(x=0;x=20;x+)for(y=0;y=33;y+)z=100-x-y;if(15*x+9*y+z=300)printf(“x=%dty=%dtz=%dn,x,y,z);11.百钱买百鸡问题。百钱买百鸡问题。第11页12.编程输出九九乘法表。编程输出九九乘法表。#includemain()
6、intm,n;for(m=1;m10;m+)for(n=1;n=m;n+)printf(%4d,m*n);printf(n);第12页13.将一个整数各位数字颠倒后输出。将一个整数各位数字颠倒后输出。#includemain()inti,r;scanf(%d,&i);dor=i%10;printf(%d,r);i=i/10;while(i!=0);第13页#include#include main()main()int m,n,r;int m,n,r;float p;float p;scanf(%d%d,&m,&n);scanf(%d%d,&m,&n);r=m%n;p=m*n;r=m%n;p=
7、m*n;while(while(r!=0r!=0)m=n;n=r;r=m%n;m=n;n=r;r=m%n;printf(“%d,%fn,n,p/n);printf(“%d,%fn,n,p/n);14.求两个正整数求两个正整数m和和n最大公因数和最小公倍数最大公因数和最小公倍数第14页#includemain()inti,n,s;for(n=1;n1000;n+)s=0;for(i=1;in;i+)if(n%i=0)s=s+i;if(s=n)printf(“%5d”,n);15.打印打印1000以内完数。以内完数。第15页16.冒泡法从小到大排序程序。冒泡法从小到大排序程序。#includema
8、in()inti,j,t,a10=3,9,-1,.;for(i=0;i=8;i+)for(j=0;jaj+1)t=aj;aj=aj+1;aj+1=t;for(i=0;i10;i+)printf(%5d,ai);第16页17.比较交换法从小到大排序程序。比较交换法从小到大排序程序。#includemain()inti,j,t,a10=1,9,6,.;for(i=0;i=8;i+)for(j=i+1;jaj)t=ai;ai=aj;aj=t;for(i=0;i10;i+)printf(%5d,ai);第17页18.选择排序法从小到大排序程序。选择排序法从小到大排序程序。#includemain()i
9、nti,j,t,a10=9,6,1,44;for(i=0;i=8;i+)k=i;for(j=i+1;jaj)k=j;if(k!=i)t=ai;ai=ak;ak=t;for(i=0;i10;i+)printf(%5d,ai);第18页#includemain()inti,j;inta34=1,2,3,4,9,8,7,6,-10,10,-5,2;scanf(%d,%d,&i,&j);printf(a%d%d=%d,i-1,j-1,ai-1j-1);19.有一个有一个3*4矩阵,要求编程求出第矩阵,要求编程求出第I行、第行、第j列元素值。列元素值。第19页20.在一个有序数组中插入一个值。在一个有序
10、数组中插入一个值。#includemain()inta11=1,2,3,4,6,7,8,9,10,11,i,x;scanf(%d,&x);for(i=9;i=0;i-)if(xai)ai+1=x;break;elseai+1=ai;if(i=0)ai=x;for(i=0;i11;i+)printf(%5d,ai);第20页21.将一维数组元素按逆序存放。将一维数组元素按逆序存放。#includemain()inti,t,a10=0,1,2,3,4,5,6,7,8,9;for(i=0;i=9/2;i+)t=ai;ai=a9-i;a9-i=t;for(i=0;i=9;i+)printf(%5d,a
11、i);第21页22.求一个求一个3*3矩阵主对角线和。矩阵主对角线和。#includemain()inti,j,a33=1,2,3,4,5,6,7,8,9,s=0;for(i=0;i3;i+)s+=aii;printf(“%d”,s);第22页23.求一个求一个3*4矩阵最大元素及其位置。矩阵最大元素及其位置。#includemain()inti,j,a34=66,-1,33,5.,max,m=0,c=0;max=a00;for(i=0;i3;i+)for(j=0;jmax)max=aij;m=i;c=j;printf(“%d,%d,%d”,max,m,c);第23页24.求二维数组每行元素平
12、均值。求二维数组每行元素平均值。#includemain()inti,j,a34=1,2,3,4.;floats;for(i=0;i3;i+)s=0;for(j=0;j4;j+)s=s+aij;printf(“%fn”,s/4);第24页25.删除数列中值为删除数列中值为x元素,将其它元素元素,将其它元素前移,不重复。前移,不重复。#includemain()inta10=-3,0,1,5,7,99,10,15,30,90,x,i,j=0;scanf(“%d”,&x);while(x!=aj)j+;for(i=j;i10;i+)ai=ai+1;for(i=0;i9;i+)printf(“%5d
13、”,ai);第25页26.有有N*N矩阵,以对角线为对称线,对矩阵,以对角线为对称线,对称元素相加并将结果存放在左下三角元称元素相加并将结果存放在左下三角元素中,右上三角元素置素中,右上三角元素置0。比如:若。比如:若N=3,有以下矩阵:,有以下矩阵:123计算结果为计算结果为10045665078910149。第26页#includemain()intt33=1,2,3,4,5,6,7,8,9,i,j;for(i=1;i3;i+)for(j=0;ji;j+)tij=tij+tji;tji=0;for(i=0;i3;i+)for(j=0;j3;j+)printf(“%5d,tij);print
14、f(n);26题题第27页27.将将a所指所指4*3矩阵中第矩阵中第k行元素与第行元素与第0行元素交换。行元素交换。比如比如k=2时,第时,第2行元素与第行元素与第0行元素交换行元素交换。#includemain()intx43=1,2,3,4,5,6,7,8,9,10,11,12,i,j,k,temp;scanf(%d,&k);for(i=0;i3;i+)temp=x0i;x0i=xki;xki=temp;for(i=0;i4;i+)for(j=0;j3;j+)printf(“%5d,xij);printf(n);第28页28.把把str1中非空格字符拷贝至中非空格字符拷贝至str2中中。#
15、includemain()charstr180=”nicetomeetyou!”;charstr280;inti=0,j=0;for(;str1i!=0;i+)if(str1i!=)str2j=str1i;j+;str2j=0;puts(str2);第29页29.找出串中指定字符个数找出串中指定字符个数。#includemain()chara80,c;intn=0,i=0;gets(a);c=getchar();for(i=0;ai!=0;i+)if(ai=c)n+;printf(“n%dn”,n);第30页30.依次取出某字符串中全部数字字符,形成依次取出某字符串中全部数字字符,形成新字符串,并取代原字符串。新字符串,并取代原字符串。#includemain()chars80;intn=0,i,j=0;gets(s);for(i=0;si!=0;i+)if(si=0&si=9)sj=si;j+;sj=0;puts(s);第31页