2、;scanf(H%d%dH,&x,&y);h=hcf(x,y);l=lcf(x,y,h);printf「最大公约数为:h=%d最小公倍数为:l=%dn,h,l);return0;}运行结果:"C:DocumentsandSettingsAdministrah=51=10tocontinue2求方程axA2+bx+c=0的根,用3个函数分别求当:bA2-4ac大于0、等于0和小于0时的根并输出结果。从主函数输入a,b,c的值。程序设计:#include#includevoidg_two
3、(doublea,doubleb,doublec){doublexl,x2;xl=(-b+sqrt(b*b-4*a*c))/(2*a);x2=(-b-sqrt(b*b-4*a*c))/(2*a);printf(M方程的两个根为:xl=%fx2=%fn,xl,x2);}voidg_one(doublea,doubleb,doublec){doublex;x=(-b)/(2*a);printf(n方程的两个根为:xl=x2=%fn,x);}voidg_zone(doublea,doubleb,doublec){print
4、f(H无解n);}voidmain(){voidg_two(double,double,double);voidg_one(double,double,double);voidg_zone(double,double,double);doublea?b,c,t;printf(Hi#输入a、b、c的值:M);scanf(n%lf%lf%lfH,&a,&b,&c);t=b*b-4*a*cg_two(a,b,c);elseif(t==O)g_one(a,b,c);elseg_zone(a,b,c);}运行结果:氏"C:Docum
5、entsandSettingsXAdministr<通麹入a、b、c的值:12-8方程的两个根为:xl=2.000000x2=-4■000000Pressanykeytocontinue贰"C:DocumentsandSettingsAdministratorXDc還制入a、b、c的值:121方程的两个根为:xl=x2=-l.000000Pressanykeytocontinue."C:DocumentsandSettingsAdministrato幘输入a、b、c的值:12?bEW^ressanykeytocontin
6、ue.3•写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。程序设计:#include#includeintpri(inta){inti,m=l;for(i=2;i<=sqrt((double)a)&&m==l;i++){if(a%i==0)m=0;}returnm;}intmain(){intpri(int);inta;printf「请输入一个整数:M);scanf(H%d*&a);if(pri(a))printfL该数是素数”);elseprintf「该数不是素数”
7、);return0;}运行结果:感余是羈数:9PressanykeytocontinuenC:DocumentsandSettingsAdministratorXD请输入一个整数:丄3该藪是素数Pressanykeytocontinue4•写一个函数,使给定的一个(3X3)二维整形数组转置,即行列互换。程序设计:#includeintmain(){voidex(inta[][3],inty);intij,a[3][3];printf(n请输入一个3*3二维整形数组:H);for(i=0;i<=2;i++
8、){for(j=0;j<=2;j++)scanf(H%d*&a[i]
9、j]);}ex(a3)・printf("行列互换后的数组为:iT);for(i=0;i<3;i++){for(j=0;j<3;j++)printf(H%dH,a[i][j]);printf