版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验三C基本数据类型及运算1 .编程:根据需要定义相关变量,键盘输入、三个实数分别赋给相关三个变量,输出该3个变量的和s、乘积p和平均值a。2 .编程:输入球的半径,计算球体表面积和球体积。3 .编程:定义6个变量,通过键盘将“10,10,40000,a,hello”这六个值分别赋给相应变量,然后在屏幕上输出变量的值(每行输出一个变量)。4 .编程:从键盘接收1个字符给变量si,1个字符串(允许带有空格)给字符数组s2,输出字符变量s1的ASCII码值及字符数组s2中的字符串。5 .编程:从键盘输入二个整数分别赋给整型变量a、b,将它们按由小到大的顺序输出。6 .编程:调用标准库函数sin(x
2、)计算6800的正弦值(此题为选做)。7 .编程:键盘输入一个实数赋给变量x,计算y=x*x*x+x*x+x的值,分别输出y值、y值的整数部分和小数部分(此题为选做)。8 .编程:键盘输入四个整数分别赋给整型变量a、b、c、d,用三目运算方法将它们按由大到小的顺序输出(此题为选做)。1. #include<>main()floatx,y,z,s,p,a;scanf("x=%fy=%fz=%f",&x,&y,&z);s=x+y+z;p=x*y*z;a=s/3;printf("s=%f,p=%f,a=%f",s,p,a);
3、)2. #include<>main()floatr,s,v;printf("inputr");scanf("%f",&r);s=4*r*r;v=4/3*r*r*r;printf("s=%f,v=%f",s,v);)3. #include<>main()inta,b;longc;chard,st6;floate;scanf("%d%d%ld%c%f%s",&a,&b,&c,&d,&e,st);printf("a=%dn,b=%dn,c
4、=%dn,d=%cn,e=%fn,ch=%s",a,b,c,d,e,st);4. #include<>main()chars1,s26;scanf("%c%s",&s1,s2);printf("s1=%d,s2=%s",s1,s2);5. #include<>main()inta,b;scanf("a=%db=%d",&a,&b);if(a<b)printf("a=%db=%d",a,b);elseprintf("b=%da=%d"
5、,b,a);6. #include<>#include<>main()floata,b;scanf("%f",&a);b=sin(a);printf("%f",b);7. #include<>main()floatx,y,b;inta;scanf("%f",&x);y=x*x*x+x*x+x;a=(int)y;b=y-a;printf("%fn%dn%fn",y,a,b);实验四C分支结构程序设计1.编程:从键盘输入一个字符,如是大写字母,则输出相应小写字母;如是
6、小写字母,则原样输出;其它字符输出“Notletter!”。2 .编程:判断输入的正整数是否既是3又是5的整数倍。若是,输出Yes,否则输出No3 .编程:从键盘输入三个整数,分别赋给变量a,b,c,输出其中的最大值(要求不改变a、b、c的值)。4 .编程:用scanf输入任意两个数分别赋给变量a、b,若a大于等于b,则直接输出a、b,否则将a、b的值交换(即a的原值放入b中,b的原值放入a中)后再输出。5 .编程:输入整数a和b,若a2+b2大于100,则输出a2+b2百位以上的数字,否则输出两数之和。6 .编程:从键盘输入三个整数,分别赋给变量a,b,c,请按从小到大的顺序依次输出a、b、
7、c(要求不改变a、b、c的值)。7 .编程:从键盘输入三个整数,分别赋给变量a,b,c,请按从小到大的顺序依次将这三个数存放于a、b、c中,最后输出a、b、c。8 .编程:由系统生成一个10以内的随机整数,用户从键盘上输入一个10以内的整数,如果两者相等输出“OK,否则输出“ERRORo注:随机数的生成必须包含头文件#include<>、#include<>,必须用初始化语句srand(unsigned)time(NULL);,表达式rand()%a+1的值为1a内的随机整数1. #include<>main()charx;scanf("%c&qu
8、ot;,&x);if(x>='a'&&x<='z')printf("%c",x);elseif(x>='A'&&x<='Z')printf("%c”,x+32);elseprintf("Notletter!");2. #include<>main()intx;scanf("%d",&x);if(x>0)if(x%3=0&&x%5=0)printf("
9、;Yesn");elseprintf("Non");elseprintf("Error!");3. #include<>main()inta,b,c,max;scanf("%d%d%d",&a,&b,&c);max=a>ba:b;max=max>cmax:c;printf("a=%d,b=%d,c=%d,max=%d",a,b,c,max);)4. #include<>main()floata,b;scanf("%f%f",&
10、amp;a,&b);if(a<b)a=a+bb=a-ba=a-b;printf("a=%f,b=%fn",a,b);5.#include<>main()inta,b,t,r,s;scanf("%d%d",&a,&b);s=a+b;r=a*a+b*b;t=r/100;if(r>100)printf("%d",t);elseprintf("%d",s);6.#include<>intmain()inta,b,c,d,max,min;scanf("%d
11、%d%d",&a,&b,&c);if(a>=b)max=a;min=b;elsemax=b;min=a;if(c>=max)max=c;if(c<=min)min=c;d=a+b+c-min-max;printf("%d%d%dn",min,d,max);7.#include<>main()inta,b,c,d;scanf("%d%d%d",&a,&b,&c);if(a>=b)d=a;a=b;b=d;elseif(b>=c)d=b;b=c;c=d;prin
12、tf("a=%db=%dc=%d",a,b,c);8.#include<>#include<>#include<>main()inta,b;srand(unsigned)time(NULL);b=rand()%10+1;scanf("%d",&a);printf("a=%d,随机数b=%dn",a,b);if(a=b)printf("OK!n");elseprintf("ERROR!n");实验五C多分支结构程序设计*1.编程:计算奖学金ss的值,已知
13、奖学金ss与成绩s的关系为:具体要求:(1)用if语句实现分支结构的编程。(2)s为整型,ss要求精确到小数点后二位。(3)用scanf函数给s赋值,且输入前有相应提示。(4)结果输出时采用以下形式:成绩$=具体值,奖学金ss=具体值2.设函数f(x)如下,求函数函数法f(x)的值。具体要求:(1)用条件表达式编程。(2)用if语句编程。(3)用scanf函数给自变量赋值,且输入前有相应提示。(4)结果输出时采用以下形式:*=具体值,f(x)=具体值(5)给出你所使用的测试用例。提示:按C的语法规则,标识符由字母、数字、下划线组成,不能将f(x)作为变量名,本题中,函数名可起为f或y等。但作为
14、非格式控制字符,f(x)完全可以出现在printf函数的双引号内。3 .编程:输入一个整数,判断它能否被3,5,7整除,并输出以下信息之一:(1)能同时被3,5,7整除。(2)能被其中两数整除(指出是哪两个数)。(3)能被其中一个数(指出是哪一个数)整除。(4)不能被3,5,7任一个数整除。4 .编程:用switch语句编写一个简单的计算器程序,输入格式为:datalopdata2。其中datal和data2为参加运算的两个数;op为运算符,取值只能是+、-、*、/。5 .编程:计算你的出生日期是星期几。(1)通过键盘输入你出生那一年的元旦是星期几(2)通过键盘输入你的出生日期(3)输出结果1
15、.#include<>main()ints;floatss;printf("Pleaseinputsn");scanf("%d",&s);if(s<0|s>100)printf("ERROR!n");elseif(s>=0&&s<80)ss=0;elseif(s>=80&&s<90)ss=100+s;elseif(s>=90&&s<=100)ss=200+s*3/2;printf("成绩s=%d,奖学金ss=%
16、n",s,ss);2.#include<>main()floatx;intf;printf("Pleaseinputxn");scanf("%f",&x);if(x=0)f=0;elsef=(x>0)1:-1;printf("x=%f,f(x)=%dn",x,f);3.#include<>main()intx,a,b,c;printf("请输入一个整数x");scanf("%d",&x);a=x%3;b=x%5;c=x%7;if(a=0&a
17、mp;&b=0&&c=0)能被3,5整除n",x);printf("%d能同时被3,5,7整除n",x);elseif(a=0&&b=0)printf("%delseif(a=0&&c=0)printf("%delseif(b=0&&c=0)printf("%delseif(a=0)printf("%d能被3,7整除n",x);能被5,7整除n",x);能被3整除n",x);4.#include<>main()c
18、harop;floatd1,d2;printf("请输入算式");elseif(b=0)printf("%delseif(c=0)printf("%delseprintf("%d能被5整除n",x);能被7整除n",x);不能被3,5,7任意一个数整除n",x);scanf("%f%c%f",&d1,&op,&d2);switch(op)case'+':printf("%g+%g=%gn",d1,d2,d1+d2);break;case
19、'-':printf("%g-%g=%gn",d1,d2,d1-d2);break;case'*':printf("%g*%g=%gn",d1,d2,d1*d2);break;case'/':printf("%g/%g=%gn",d1,d2,d1/d2);break;5.#include<>main()intx,m,d;printf("请输入你出生那年元旦的星期(1至7):n");printf("请输入你的出生日期(mm/dd:n");
20、scanf("%d,%d,%d",&x,&m,&d);switch(m*30+d)/7)case0:printf("你出生那天为星期%d",x);break;case1:printf("你出生那天为星期%d",x+1);break;case2:printf("你出生那天为星期%d",x+2);break;case3:printf("你出生那天为星期%d",x+3);break;case4:printf("你出生那天为星期%d",x+4);break;c
21、ase5:printf("你出生那天为星期%d",x+5);break;case6:printf("你出生那天为星期%d",x+6);break;实验六C循环结构程序设计1.编程:输出200以内所有能被7整除的数2 .编程:求出11000之间能被13整除的最大的那个数。3 .编程:找出若干个非零数中的最小值m以及它们的平均值a。要求:若干个数由键盘输入,每次输入一个赋给变量x,x为零时,结束输入。4 .编程:求两个正整数mrn之间所有奇数之和x与偶数之和y。要求:(1)mn的值由键盘输入。(2)输入时,允许用户随意先输入大的或小的整数。5 .编程:计算函
22、数y的值。要求键盘接收自变量x的值,若x的值不为零,计算函数y的值并输出,再从键盘接收下一个x的值,直到x的值为零,显示“ThankYou,Bye!”,尔后结束程序,已知函数y与自变量x的关系为:6 .编程:计算兀的近似值,兀的计算公式为要求:(1)n值由键盘输入。(2)分别输出当n为10、100、1000时的计算结果。(3)输出时要求每行显示一组n、无的值,每行形式如下:门=具体值,无=具体值7 .我国现有人口13亿,设年增长率为1%,编写程序,计算多少年后增加到20亿。8 .求解爱因斯坦数学题。有一条长阶梯,若每步跨2阶,则最后剩余1阶;若每步跨3阶,则最后剩2阶;若每步跨5阶,则最后剩4
23、阶;若每步跨6阶,则最后剩5阶;若每步跨7阶,最后才正好一阶不剩。请问,这条阶梯最少共有多少阶9 .每个苹果元,第一天买2个苹果,第二天开始,每天买前一天的2倍,直至购买的苹果个数达到不超过100的最大值。编程:求每天平均花多少钱(此题为选做)1.#include<>main()inti;for(i=1;i<=200;i+)if(i%7!=0)continue;printf("%d",i);)2.#include<>main()inti,max=0;for(i=0;i<=1000;i+)if(i%13!=0)continue;if(max
24、<i)max=i;)printf("max=%dn",max);)3.#include<>main()inti;floatx,m,s,a;scanf("%f",&x);if(x!=0)m=x;s=x;for(i=1;i+)scanf("%f",&x);if(x=0)break;s=s+x;if(m>x)m=x;a=s/i;printf("最小值m=%f,平均值a=%f",m,a);4.#include<>voidmain()inti,m,n,t,x=0,y=0;s
25、canf("%d%d",&m,&n);if(m>n)t=m;m=n;n=t;for(i=m;i<=n;i+)if(i%2)x+=i;elsey+=i;printf("x=%dn",x);printf("y=%dn",y);5.#include<>main()(floatx,y;printf("inputx:");scanf("%f",&x);for(;x>=0;)(if(x>0&&x<100)(y=3*x+1;pr
26、intf("%f",y);elseif(x>=100)(y=x*x-1;printf("%f",y);elseprintf("thankyoubey!");break;scanf("%f",&x);6.#include<>main()intn,i;doublet,sum;printf("请输入n的值n");scanf("%d",&n);sum=2;i=1;t=2;while(i<n)t=t*(2*i)*(2*i)/(2*i-1)/(2*
27、i+1);i=i+1;printf("n=%d,无=%fn",n,t);7.#include<>main()doublet=13,s=0;while(t<=20)(t=t*(1+;s+;printf("需要经过%lf年",s);8.#include<>main()(intx=7;while(!(x%2=1&&x%3=2&&x%5=4&&x%6=5)(x=x+7;printf("%dn",x);9.#include<>main()floats=0;
28、intn=1,p=0,d=0;dod+;n=n*2;p=p+n;while(p+n*2<=100);s=p*d;printf("每天平均花g元钱!n",s);实验七C多重循环结构程序设计1.编程:输出100以内个位数为6且能被3整除的所有数。2 .编程:键盘输入6位学生的5门课成绩,分别统计出每个学生的平均成绩。,要求n的值由3 .编程:输入一个正整数,统计该数的各位数字中零的个数,并求各位数字中的最大者。4 .编程:分别用dowhile、while、for三种循环结构求:1!+2!+3!+n!键盘输入5 .编程:计算100至1000之间有多少个数其各位数字之和是56
29、 .编程:从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,输出此数后退出;若未找到,输出"notexist"。7 .编程:输出1至100之间满足如下条件的数:各位数的乘积大于各位数的和。8 .编程:将整数316表示为两个加数的和,使这两个加数分别能被13和11整除。9 .编程:打印出所有的"水仙花数"。所谓的"水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。例如,153是一个"水仙花数",因为有153=1*1*1+5*5*5+3*3*3。10 .编程:一条有10个车站的铁路线,共需要准备多少种车票1.#
30、include<>main()inti;for(i=1;i<=100;i+)if(i%10=6&&i%3=0)printf("%d",i);2.#include<>main()inti,j,a65;floats;for(i=0;i<6;i+)s=0;for(j=0;j<5;j+)printf("请输入第d个学生的第d门成绩",i+1,j+1);scanf("%d",&aij);s=s+aij;s=s/5;printf("第d个学生平均成绩为fn",i
31、+1,s);3.#include<>main()intx,i,max,t;i=0;max=0;scanf("%d",&x);dot=x%10;if(t=0)+i;elseif(max<t)max=t;x=x/10;while(x);printf("i=%d,max=%d",i,max);4.#include<>main()intn,i,a,s=0;printf("请输入n:");scanf("%d",&n);a=1;for(i=1;i<=n;i+)a=a*i;s=
32、s+a;printf("s=%dn",s);#include<>main()intn,i=1,a=1,s=0;printf("请输入n:");scanf("%d",&n);while(i<=n)a=a*i;s=s+a;i+;print("s=%d",s);#include<>main()intn,i=1,a=1,s=0;printf("请输入n:");scanf("%d",&n);doa=a*i;s=s+a;i+;while(i&
33、lt;=n);printf("s=%d",s);)5.voidmain()(inti,s,k,count=0;for(i=100;i<1000;i+)(s=0;k=i;while(k)(s=s+k%10;k=k/10;)if(s!=5)continue;elsecount+;)printf("%dn",count);)6.#include<>main()intx,i;printf("请输入10个整数:");for(i=1;i<=10;i+)scanf("%d",&x);if(x%7=
34、0)printf("firstnumberis%d",x);break;)if(i>10)printf("notexist!");)7.#include<>main()intn,k=1,s=0,m;for(n=1;n<=100;n+)k=1;s=0;m=n;while(m>=1)k*=m%10;s+=m%10;m=m/10;)if(k>s)printf("%dn",n);)8.#include<>main()inti=0,j,k;doi+;k=316-13*i;while(k%11);j
35、=k/11;printf("316=13*%d+11*%dn",i,j);9.#include<>main()inti,j,k,n;for(n=100;n<1000;n+)i=n/100;j=(n-i*100)/10;k=n%10;if(i*i*i+j*j*j+k*k*k=n)printf("%dn",n);实验八C程序控制结构综合应用1.编程计算:s=1+12+123+1234+12345+123456+1234567。2 .编程:找出1至99之间的全部同构数。所谓同构数是这样一组数:它出现在其平方数的右边。例如:5是25右边的数,2
36、5是625右边的数,5和25都是同构数。3 .若用0至9之间不同的三个数构成一个三位数,编程统计共有多少种方法。4 .编程:键盘输入一个不多于5位的正整数,要求:(此题为选做)(1) 求它是几位数(2) 逆序打印出各位数字。如原数为123,输出则为321o5 .编程:找出以下疑案的作案人(此题为选做)已知该案涉及6个嫌疑人A、BC、DE、F,并且:(1) A、B至少有一人作案。(2) A、E、F这3人中至少有2人参与作案。(3) A、D不可能是同案犯。(4) B、C或同时作案,或与本案无关。(5) C、D中有且仅有一人作案。(6) 如果D没有作案,则E也不可能参与作案。6 .编程:输出下列形式
37、的杨辉三角形的前10行(此题为选做)1111211331146411.#include<>main()ints=0,i=1,t=0;while(i<10)t=t*10+i;s+=t;i+;printf("s=%dn",s);2.#include<>main()inti;for(i=1;i<=99;i+)if(i*i%10=i|i*i%100=i)printf("%dn",i);3.#include<>main()inti,j,k,count=0;for(i=1;i<=9;i+)for(j=0;j<
38、;=9;j+)if(i=j)continue;elsefor(k=0;k<=9;k+)if(k!=i&&k!=j)count+;printf("%dn",count);实验九C的数组1.编程实现:输入一个正整数n(1<nw10),再输入n个整数,把这些数逆序存放到数组中再按顺序输出。例如:输入5,再输入三个数8、23、1、7、19,则输出为:19、7、1、23、8。2 .编程实现:输入10个正整数,将它们中的最小值与第一个数交换,最大值与最后一个数交换,然后输出交换后的10个数。3 .编程实现:已知二次等差数列的前4项为2,5,10,17,请定义
39、一维整型数组存储该数列的前20项,并每5个数为一行输出该数列的前20项。4 .已知一组整型数据已按从小到大排列好,现任意输入一个整数,请按原来排序的规律将它插入到数组中(例如:原来的一组整数为1,3,5,8,9,若输入的整数是7,则最终的结果为:1,3,5,7,8,9),请编程实现。5 .编程:将一个4X4的整型矩阵元素按副对角线(右上到左下)互换。要求:(1)键盘输入矩阵各元素的值。(2)互换前,按矩阵形式输出矩阵。(3)互换后,按矩阵形式输出矩阵。6 .求一个4X4的整数矩阵的副对角线(右上到左下)上所有奇数的和sum及偶数的平均值ave。要求:结果保留2位小数7 .通过循环按行顺序为一个
40、5X5的二维数组a赋1到25的自然数,然后输出该数组的左下半角元素的值和它们之和。8 .定义一个实数型数组,将10个实数输入到数组中,编程实现任一块区间所有元素的平均值,即输入两整数m,n,计算出数组中第m个元素开始的后n个元素的平均值,包括第m个元素(若n值过大,即个数太多,超过数组的最后一个元素,则统计到最后一个元素)。例如:数组元素为,,,输入3,5,则输出。9 .一个整型数组有10个元素,编写程序删除所有值为n的元素。如:数组中为1,3,2,4,2,7,9,0,2,5,n的值为2,删除后输出数组元素应该为1,3,4,7,9,0,5。(此题为选做)10 .定义两个N行N列的二维数组a、b
41、,编写程序,将a数组最后一行放到b数组的第0列中,把a数组中的第0行放到b数组的最后一列中,b所指二维数组中其他元素的数据不变。(此题为选做)11 .试编程实现如下功能:先定义一个4行5列的数组(矩阵),调用库函数rand()随机产生20-50之间的整数给数组元素赋值,再将矩阵中第二列与第四列的元素互换。要求先输出原数组,再输出交换后的数组(rand函数的使用请参阅教材259页)。(此题为选做)1.#include<>main()(inta10,n,i;scanf("%d",&n);for(i=n-1;i>=0;i-)scanf("%d&
42、quot;,&ai);for(i=0;i<n;i+)printf("%d",ai);printf("n");2.#include<>main()(intn,i,a10,max,min,t,r,p;scanf("%d",&n);for(i=1;i<=n;i+)scanf("%d",&ai);min=a1;for(i=1;i<=n;i+)(if(ai<a1)(min=ai;r=i;t=a1,a1=min,ar=t;max=an;for(i=1;i<=n;
43、i+)(if(ai>an)(max=ai;p=i;t=an,an=max,ap=t;for(i=1;i<=n;i+)printf("%d",&ai);3.#include<>voidmain()inta21,i;for(i=1;i<=20;i+)ai=i*i+1;printf("%d",ai);if(i%5=0)printf("n");4.#include<>main()inta10=1,3,5,7,9,11,13,15,17,i,j,n;printf("请输入1个整数");scanf("%d",&n);for(i=0;i<9;i+)if(ai>n)for(j=9;j>i;j-)aj=aj-1;ai=n;break;if(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 女生青春期生理心理教育课件
- 环艺设计板面构成与设计策略
- 儿科小儿支气管肺炎护理要点
- 全国传染病报告管理指南
- 在职4年员工和四大公司
- 家居店空间设计规划方案
- 感染科结核病治疗培训指南
- 消化内科急性溃疡性结肠炎治疗方案
- 豪宅设计体系解析与实现路径
- 服务中心景观设计方案
- 年产5万吨丙酸工艺设计
- 2025年驻村干部考试题及答案
- 2025届广东省广州市荔湾区真光中学高一物理第二学期期末学业质量监测试题含解析
- 2025年高考真题-生物(四川卷) 含答案
- 2025年山西省中考历史真题(原卷版)
- 检验表4.43 浆砌石、灌砌石挡墙浆砌体单元工程施工质量检验表
- 安全试题100道及答案
- 物业水电工应知应会培训
- 药品儿童用药管理制度
- 水利安全风险防控“六项机制”与安全生产培训
- 25年小升初作文押题+范文
评论
0/150
提交评论