编程.docx
- 文档编号:23749693
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:106
- 大小:46.34KB
编程.docx
《编程.docx》由会员分享,可在线阅读,更多相关《编程.docx(106页珍藏版)》请在冰豆网上搜索。
编程
编写一个程序,输入a、b、c三个值,输出其中最大值。
Input
一行三个数据,分别为abc
Output
abc其中最大的数
SampleInput
102030
SampleOutput
30
#include
#include
intmain()
{
inta,b,c,max;
scanf("%d%d%d",&a,&b,&c);
if(a>b)
max=a;
else
max=b;
if(c>max)
max=c;
else
max=max;
printf("%d",max);
return0;
}
要将"China"译成密码,译码规律是:
用原来字母后面的第4个字母代替原来的字母.例如,字母"A"后面第4个字母是"E"."E"代替"A"。
因此,"China"应译为"Glmre"。
请编一程序,用赋初值的方法使cl、c2、c3、c4、c5五个变量的值分别为,’C’、’h’、’i’、’n’、’a’,经过运算,使c1、c2、c3、c4、c5分别变为’G’、’l’、’m’、’r’、’e’,并输出。
Input
无
Output
加密后的China
SampleInput
SampleOutput
Glmre
#include
#include
intmain()
{
charc1='C',c2='h',c3='i',c4='n',c5='a';
c1=c1+4;
c2=c2+4;
c3=c3+4;
c4=c4+4;
c5=c5+4;
printf("%c%c%c%c%c",c1,c2,c3,c4,c5);
return0;
}
请参照本章例题,编写一个C程序,输出以下信息:
**************************
Very Good!
**************************
提示:
(1)数*号可看出,Very前面9空格,Good前面……
(2)*也是输出的一部分,别光打印VeryGood!
(3)Good!
后面有空格或没有空格,字面上是看不出来的
#include
#include
intmain()
{
printf("**************************\n");
printf("VeryGood!
\n");
printf("**************************\n");
return0;
}
设圆半径、圆柱半径、圆球半径都是r,圆柱高h。
求圆周长C1、圆面积Sa、圆球表面积Sb、圆球体积Va、圆柱体积Vb。
用scanf输入数据,输出计算结果,输出时要求有文字说明(见样例输出),计算结果取小数点后两位数字。
请编程序。
程序中圆周率取3.14
Input
两个浮点数,r和h
Output
圆周长C1、圆面积Sa
圆球表面积Sb、圆球体积Va
圆柱体积Vb。
所有结果均保留两位小数,每个结果后都换行。
SampleInput
1.53
SampleOutput
C1=9.42
Sa=7.07
Sb=28.26
Va=14.13
Vb=21.19
#include
#include
intmain()
{
floatr,h,C1,Sa,Sb,Va,Vb;
scanf("%f%f",&r,&h);
C1=2*3.14*r;
Sa=3.14*r*r;
Sb=4*3.14*r*r;
Va=(4.0/3.0)*3.14*r*r*r;
Vb=3.14*r*r*h;
printf("C1=%.2f\nSa=%.2f\nSb=%.2f\nVa=%.2f\nVb=%.2f\n",C1,Sa,Sb,Va,Vb);
return0;
}
1505有三个整数abc,由键盘输入,输出其中的最大的数。
Input
一行数组,分别为abc
Output
abc其中最大的数
SampleInput
102030
SampleOutput
30
#include
intmain()
{
inta,b,c;
scanf("%d%d%d",&a,&b,&c);
if(a
if(b elseprintf("%d\n",b); elseif(a elseprintf("%d\n",a); return0; } 1506有一个函数 y={x x<1 |2x-1 1<=x<10 3x-11 x>=10 写一段程序,输入整数x,输出y Input 一个整数x Output 一个数y SampleInput 14 SampleOutput 31 #include #include intmain() { intx,y; scanf("%d",&x); if(x<1) y=x; if(x>=1&&x<10) y=2*x-1; if(x>=10) y=3*x-11; printf("%d",y); return0; } 1507给出一百分制成绩,要求输出成绩等级‘A’、‘B’、‘C’、‘D’、‘E’。 90分以上为A80-89分为B70-79分为C60-69分为D60分以下为E Input 一个整数0-100以内 Output 一个字符,表示成绩等级 SampleInput 90 SampleOutput A #include intmain(){ intn,r; while(scanf("%d",&n)==1){ switch(n/10){ case10: case9: r='A'; break; case8: r='B'; break; case7: r='C'; break; case6: r='D'; break; default: r='E'; break; } printf("%c\n",r); } return0; } 1508给出一个不多于5位的整数,要求1、求出它是几位数2、分别输出每一位数字3、按逆序输出各位数字,例如原数为321,应输出123 Input 一个不多于5位的整数 Output 共三行: 第一行: 位数 第二行: 用空格分开的每个数字,注意最后一个数字后没有空格 第三行: 按逆序输出这个数 SampleInput 12345 SampleOutput 5 12345 54321 #include #include intmain(){ chars[6],c; intlen,i; while(scanf("%s",s)==1){ len=strlen(s); printf("%d\n",len); printf("%c",s[0]); for(i=1;i printf("%c",s[i]); } printf("\n"); for(i=len-1;i>=0;--i){ printf("%c",s[i]); } printf("\n"); } return0; } 1509企业发放的奖金根据利润提成。 1、利润低于或等于100000元的,奖金可提10%; 2、利润高于100000元,低于200000元(100000 3、200000 4、400000 5、600000 6、I>1000000时,超过1000000元的部分按1%提成。 从键盘输入当月利润I,求应发奖金总数。 提醒: 计算机对于实数的计算是不精确的,比如: 当利润是150000时,计算出的奖金=100000*0.1+50000*0.075=13749,而不是13750,标准答案应该是后者。 再比如: 当利润是100012时,标准答案应该是10001。 Input 一个整数,当月利润。 Output 一个整数,奖金。 SampleInput 900 SampleOutput 90 #include intmain() { inti; floaty,y1,y2,y3,y4,y5; y1=100000*0.1; y2=y1+100000*0.075; y3=y2+200000*0.05; y4=y3+200000*0.03; y5=y4+400000*0.015; scanf("%d",&i); if(i<=100000) y=i*0.1; elseif(i<=200000) y=y1+(i-100000)*0.075; elseif(i<=400000) y=y2+(i-200000)*0.05; elseif(i<=600000) y=y3+(i-400000)*0.03; elseif(i<=1000000) y=y4+(i-600000)*0.015; else y=y5+(i-1000000)*0.01; printf("%.0f",y); return0; } #include #include #definePI3.1415927 intmain() { doublen; while(scanf("%lf",&n)! =-1) { { if(n>=0) printf("%.2lf\n",n); else printf("%.2lf\n",-n); } } return0; }1528 #include #include intprime(intx) { inttemp,i,k; temp=(int)(sqrt(x)); for(i=2;i<=temp;++i) if(x%i==0) { k=0;break; } if(i>temp) k=1;returnk; } intmain() { intx; intk; scanf("%d",&x); k=prime(x); if(k) printf("prime\n"); else printf("notprime\n"); return0; } 1529写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。 Input 一个3x3的矩阵 Output 转置后的矩阵 SampleInput 123 456 789 SampleOutput 147 258 369 #include intd(inta[3][3]) { inti,j; for(i=0;i<3;i++) { for(j=0;j<3;j++) { printf("%d",a[j][i]); } printf("\n"); } return0; } intmain() { intsum[3][3],b,j; for(b=0;b<3;b++) { for(j=0;j<3;j++) { scanf("%d",&sum[b][j]); } } d(sum); return0; } 2556 #include intmain() { inta[10]={3,-2,6,9,0,4,1,8,7,5}; inti; for(i=0;i<10;i++) for(i=0;i<10;i++) printf("%d\n",a[i]); printf("\n"); return0; } 2558 #include intmain() { inta[3][4]={2,5,8,1,9,0,3,4,7,11,6,10}; int*p,i; p=a; for(i=0;i<12;i++) p=a; for(i=0;i<12;i++,p++) printf("%d",*p); return0; } 2582 #include intmain() { intadd(inta,intb); inta; intb; floatc; scanf("%d%d",&a,&b); c=sqrt(a*a+b*b); printf("%.2f",c); return0; } intadd(inta,intb) { floatz; z=sqrt(a*a+b*b); returnz; } 2584 #include intmain() { intprint_message(); print_message(); return0; } intprint_message() { printf("ABCDEFGHIJKLMNOPQRSTUVWXYZ\n"); return0; } 1522 #include #include intmain() { inta[10]; inti,j,t; for(i=0;i<10;i++) scanf("%d",&a[i]); for(j=0;j<9;j++) for(i=0;i<9-j;i++) if(a[i]>a[i+1]) { t=a[i]; a[i]=a[i+1]; a[i+1]=t; } for(i=0;i<10;i++) printf("%d\n",a[i]); return0; } 1523 求一个3×3矩阵对角线元素之和。 Input 矩阵 Output 主对角线副对角线元素和 SampleInput 123 111 321 SampleOutput 37 #include intmain() { inti=0,j=0,a[3][3],s1,s2; for(i=0;i<3;i++) for(j=0;j<3;j++) scanf("%d",&a[i][j]); s1=a[0][0]+a[1][1]+a[2][2]; s2=a[0][2]+a[1][1]+a[2][0]; printf("%d%d\n",s1,s2); return0; } 1524 有一个含10个元素的数组,已有9个按从小到大顺序排好的数据,今输入一个数要求按原来排序的规律将它插入数组中。 Input 第一行,原始数列。 第二行,需要插入的数字。 Output 排序后的数列 SampleInput 1781723245962101 50 SampleOutput 1 7 8 17 23 24 50 59 62 101 #include #include intmain() { inti,a[10],n,j; for(i=0;i<9;i++) scanf("%d",&a[i]); scanf("%d",&n); if(n>a[8]) a[9]=n; else for(i=0;i<9;i++) if(a[i]>n) { for(j=8;j>=i;j--) a[j+1]=a[j]; a[i]=n; break;} for(i=0;i<=9;i++) printf("%d\n",a[i]); return0; } 1852 从键盘上输入任意一个整数n,计算1到n的和: Input 从键盘输入任意整数n Output 输出1到n的和 SampleInput 3 SampleOutput 6 #include intmain() { inti,n,sum=0; i=1; scanf("%d",&n); while(i<=n) { sum=sum+i; i++; } printf("%d\n",sum); return0; } 1854 从键盘上输入任意一个整数,然后判断该数是否为素数;如果是素数则输出"Thisisaprime."否则输出“Thisisnotaprime.” Input 输入任意一个整数n。 Output 判断n是否为素数,并输出判断结果: 如果n是素数则输出"Thisisaprime."否则输出“Thisisnotaprime.” SampleInput 3 SampleOutput Thisisaprime. #include #include intmain() { intn,i,k; scanf("%d",&n); if(n==1||n==0) printf("Thisisnotaprime\n"); if(n>=2) { k=sqrt(n); for(i=2;i<=k;i++) if(n%i==0)break; if(i>k)printf("Thisisaprime."); elseprintf("Thisisnotaprime."); } return0; } #include #include intmain() { intn,i,k; scanf("%d",&n); if(n==1||n==0) printf("Thisisnotaprime\n"); if(n>=2) { k=sqrt(n); for(i=2;i<=k;i++) if(n%i==0)break; if(i>k)printf("Thisisaprime."); elseprintf("Thisisnotaprime."); } return0; } 1855 从键盘输入任意一个大于等于0的整数n,然后计算n的阶乘,并把它输出。 Input 输入任意一个大于等于0的整数n。 Output 输出n! SampleInput 3 SampleOutput 6 #include #include intmain() { inti,n,s=1; scanf("%d",&n); for(i=1;i<=n;i++) s*=i; printf("%d",s); return0; } 2544 #include intmain() { inta; longt; scanf("%d",&a); if(a>=500) t=a*8*80; elseif(a>=300) t=a*8*82; elseif(a>=200) t=a*8*85; elseif(a>=100) t=a*8*90; elseif(a<100) t=a*800; printf("%ld",t); return0; } 2551 #include intmain() { inta,b,c; for(a=1;a<=98;a++) for(b=1;b<=8;b++) for(c=1;c<=98;c++) if(a+b+c==100&&4*a+40*b+2*c==400) printf("%d,%d,%d\n",a,c,b); return0; } 2560 #include #include intmain() { inta,b,c,i,j,k,t=0; scanf("%d%d%d",&a,&b,&c); intm[a][b],n[b][c],p[a][c]; if(a>0&&a<=10&&b>0&&b<=10&&c>0&&c<=10) { for(i=0;i for(j=0;j scanf("%d",&m[i][j]); for(i=0;i for(j=0;j scanf("%d",&n[i][j]); for(i=0;i { for(j=0;j { for(k=0;k { t=t+m[i][k]*n[k][j]; } p[i][j]=t; t=0; } } }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 编程