,if语句,switch语句的使用,熟练掌握for,while,do-while三种基本的循环控制语句的使用,掌握重复循环技术,了解转移语句与标号语句。,while,do-while语句来编写程序。。:单步执行,设置断点,观察变量值。(一)计算个人所得税。源程序如下:shangji2\chengxu9#include<>intmain(){doublex,y;do{printf("请输入工资数:");scanf("%lf",&x);}while(x<0);if(x<1000)y=0;elseif(x<2000)y=*x;elseif(x<3000)y=*x;elseif(x<4000)y=*x;elseif(x<5000)y=*x;elsey=*x;printf("个人所得税为:%.2lf",y);return0;}实验步骤:步骤一:输入工资数。步骤二:用if条件句划分好范围,使输入的数据能被计算机读取并归入到相应的范围中。步骤三:根据对应范围的计算公式计算出个人所得税并进行输出。调试及编译过程:测试数据:1500(第二类范围)测试数据:3500(第四类范围)测试数据:6000(第六类范围)出现的不足及修改:无运行结果:输出预期结果。(二)计算两数的最大公约数和最小公倍数源程序如下:shangji2\chengxu10#include<>intmain(){intx,y,m,n,r;do{printf("inputtwonumbers:");scanf("%d%d",&x,&y);}while((x<0)||(y<0));m=x;n=y;while((r=(x%y))!=0){x=y;y=r;}printf("最大公约数为:%d\n",y);printf("最小公倍数为:%d",(m/y)*(n/y)*y);return0;}实验步骤:步骤一:定义两个整型变量,并输入两数赋值到这两个变量。步骤二:定义一个中间变量,用来实现辗转相除法的过程中对余数的控制,设置一个循环语句用来寻求最大公约数,其中循环结束的标志为余数为0,即能整除。循环过程中不断将y的值赋给x,再将r的值赋给y。步骤三:退出循环后得出最大公约数,再通过最大公约数得到最小公倍数,最后将这两数分别输出。调试及编译过程:测试数据:12,30(一般情况)测试数据:12,6(两个成倍数的数)测试数据:7,13(两个互质的数)出现的不足及修改:无运行结果:输出预期的结果。(三)判断一个数是否为素数。源程序如下:shangji2\chengxu11#include<>#include<>intmain(){intn,r,i;do{printf("inputanumber:");scanf("%d",&n);}while(n<2);for(i=2,r=1;i<=sqrt(n);i++)r=n%i;if(r)printf("%disaprime",n);elseprintf("%disnotaprime",n);return0;}实验步骤:步骤一:定义三个整型变量,分别用来存放该数,控制循环的标志数,以及余数。步骤二:设置循环,将i从2开始直到该数的算数平方根,若余数为0或已到循环结束的标志则退出循环。步骤三:在循环结束后判断余数的值,若不为0,则判断该数为素数,否则该数不为素数。调试及编译过程:测试数据:2(特殊情况)测试数据:7(质数)测试数据:12(不是质数)(四)输出2到100间的素数。源程序如下:shangji2\chengxu12#include<>#include<>intmain(){inti,j,r,t;t=0;for(i=2;i<=100;i++){for(j=2,r=1;(j<=sqrt(i))&&r;j++)r=i%j;if(r){printf("%4d",i);if(!(++t%5))printf("\n");}}return0;}实验步骤:步骤一:定义四个整型变量,分别控制内层循环,外层循环,余数及保证一行5个的数。步骤二:外层循环为2到100间的数,内层循环为逐个检查它们是否为素数,若是,则输出,且t+1,当t为5的倍数是输出换行符即可保证一行5个。调试及编译过程:出现的不足及修改:编写程序工程中if后没有加花括号,导致输出错误。后检
C语言程序设计-实验第二次上机实验报告 来自淘豆网www.taodocs.com转载请标明出处.