答案仅供参考实验一4.设计main函数实现从键盘上输入两个整型变量a、b的值,交换它们的值并输出。
#include<>void main(){int a,b,c;printf("enter first integer :");scanf("%d",&a);printf("enter second integer :");scanf("%d",&b);c=a;a=b;b=c;printf("%d,%d\n",a,b);getch();}5.设计main函数实现从键盘上输入两个整型变量a、b的值,并将b的值加入到a中,输出a的值。
#include<>void main(){int a,b,c;printf("enter first integer :");scanf("%d",&a);printf("enter second integer :");scanf("%d",&b);c=a+b;a=c;printf("a=%d,b=%d\n",a,b);getch();}6.从键盘输入整数x的值,根据公式y=x3+3x2+x-10求y的值,输出x和y的值。
#include<>void main(){int x,y;printf("enter first integer : ");scanf("%d",&x);y=x*x*x+3*x*x+x-10;printf("x=%d,y=%d\n",x,y);getch();}实验二1.编写程序,从键盘上输入一个整数(例如560)表示分钟,将其换算成用小时和分钟表示,然后输出至屏幕。
#include <>void main(){int a,b,hour,min;printf("enter first integer :");scanf("%d",&a);b=60;hour=a/b;min=a%b;printf("hour=%d,min=%d\n",hour,min);getch();}2.编写程序,输入两个整数(例如1500和350),求出它们的商和余数并进行输出。
#include <>void main(){int a,b,c,d;a=1500,b=350;c=a/b;d=a%b;printf("%d,%d",c,d);getch();}3.编写程序,读入3个整数给分别变量a,b,c,然后将a,b,c的值输出到屏幕,再交换它们中的数值,把a中原来的值给b,把b中原来的值赋给c,把c中原来的值赋给a,然后再次输出a,b,c的值到屏幕。
#include <>void main(){int a,b,c,d;printf("enter first integer : ");scanf("%d",&a);printf("enter second integer : ");scanf("%d",&b);printf("enter third integer : ");scanf("%d",&c);printf("a=%d,b=%d,c=%d\n",a,b,c);d=c;c=b;b=a;a=d;printf("a=%d,b=%d,c=%d",a,b,c);getch();}4.编写程序,读入3个双精度数,求它们的平均值输出到屏幕。
#include <>void main(){double sum=0;double a,b,c,d;printf("enter first integer :");scanf("%lf",&a);printf("enter second integer :");scanf("%lf",&b);printf("enter third integer :");scanf("%lf",&c);sum=a+b+c;d=sum/;printf("d=%lf",d);getch();}5.下列程序中,要求main函数实现如下功能:从键盘上输入3个正整数,求出它们中的最大值。
请完善程序,并在程序最后用注释的方式给出你的测试数据及在这组测试数据下的运行结果。
#include <>void main(){int a ,b ,c ,d ,max;printf(“Enter three integers:”);scanf(“%d%d%d”,&a,&b,&c);if(a>b)max=a;elsemax=b;if(c>max)max=c;printf(“max of the three numbers is %d”,max);grtch();}6. 请编程序:对从键盘上输入的x值,根据以下函数关系计算出相应的y值(设x,y 均为整型量)。
x值的范围计算y的公式x<000<=x<10x10<=x<201020<=x<40-5x+20#include <>void main(){int x,y;printf("x=");scanf("%d" ,&x);if (x<0)y=0;else if (x<10&&x>=0)y=x;else if (x>=10&&x<20)y=10;else if (x>=20&&x<40)y=(-5)*x+20;printf("%d" ,y);getch();}实验三1. 下列程序想求出满足如下条件的三位数n:(1)n除以11(整数相除)所得到的商等于n的各位数字的平方和;(2)n中至少有二位数字相同。
如:131除以11的商为11,131各位数字的平方和为11,131中有二位数字相同,故131是所要求出的三位数中的一个;又如550,也是满足条件的三位数。
源程序中有些错误,请你改正并最终使程序得到如下的运行结果:131 550 900#include <>void main(){ int n , a , b , c;for(n=1; n<1000; n++){ a=n/100; b=n/10%10; c=n%10;if(n/11==a*a+b*b+c*c&&(a==b||a==c||b==c))printf("%d\n",n); }getch();}2. 请编程序,实现从键盘上输入任意一个整数n,求出n的各位数字之和。
例如,当n 为263时,各位数字之和为11。
下面是一个可以实现逐位数字累加功能的程序段,试理解后应用到自己的程序中。
k=0;n=263;do{ k+=n%10;n/=10;}while(n);#include <>void main(){ int n,k;scanf("%d",&n);k=0;do{ k+=n%10;n/=10;}while(n);printf("%d",k);getch();3. 试找出符合下列条件的正整数:(1)该数是一个三位数;(2)该数是37的倍数;(3)该数循环左移后得到的另两个数也是37的倍数。
例如148是37的倍数,481和814也是37的倍数。
#include<>void main(){int n,a,b;for(n=100;n<1000;n++)if(n%37==0){a=n/10+n%10*100;b=n/100+n%100*10;if(a%37==0&&b%37==0)printf("%d\n",n);}getch();}4.请编程序利用下列公式求π的近似值。
公式为:要求:先求出前2n 项的π值,再求出2n+2项的π值,直至二者之差小于10-5为止。
#include<> void main()122122...7656543432122+⨯-⨯⨯⨯⨯⨯⨯⨯=n n n n πfloat a,b;a=1,b=3;n=1;while(b-a>=1e-5){a=b;n++;b=b*4*n*n/(2*n-1)/(2*n+1);}printf("%f,%f",2*a,2*b);getch();}5. 请编程序求出满足如下条件的四位数n:(1)n的范围为[5000,8000];(2)n千位上的数减百位上的数减十位上的数减个位上的数大于零。
编程要求:以每行5个输出满足条件的数及该类数的个数。
#include<>void main(){int n,a,b,c,d,k=0;for(n=5000;n<=8000;n++){a=n/1000;b=n/100%10;c=n/10%10;d=n%10;if((a-b-c-d)>0){printf("%5d",n);k++;if(k%5==0) printf("\n");}}printf("k=%d",k);getch();}6.请编程序求出满足如下条件的一个四位整数,它的9倍恰好是其反序数(例如,1234与4321互为反序数)。
#include<>void main(){int n,e,a,b,c,d;for(n=1000;n<=9999;n++){ a=n/1000;b=n/100%10;c=n/10%10;d=n%10;e=d*1000+c*100+b*10+a;if(9*n==e)printf("%d",n);}getch();}7.请编程序求出从键盘上输入的两个正整数a和b的最大公约数和最小公倍数。