1.输入2个整数,求两数的平方和并输出。
#include intmain(void) {intta,b,s; printf("pleaseinputa,b:\\n"); scanf("%d%d”,&a,&b); s=a*a+b*b; printf("theresultis%d\\n",s); return0; } 2.输入一个圆半径r,当r>=0时,计算并输出圆的面积和周长, 否则,输出提示信息。 #include #definePI3.14 intmain(void) {doubler,area,girth; printf("pleaseinputr:\\n"); scanf("%lf",&r); if(r>=0) {area=PI*r*r; girth=2*PI*r; printf("theareais%.2f\\n",area); printf("thegirthis%.2f\\n",girth);} else printf("Inputerror!\\n"); return0; } 3、已知函数y=f(x),编程实现输入一个x值,输出y值。 2x+1(x<0) y=0(x=0) 2x-1(x>0) #include voidmain() {intx,y; scanf(“%d”,&x); if(x<0)y=2*x+1; elseif(x>0)y=2*x-1; elsey=0; printf(“%d”,y); } 4.从键盘上输入一个百分制成绩score,按下列原则输出其等级: score≥,90等级为A;80≤score<9,0等级为B;70≤score<8,0等级为C;60≤score<7,0等级为D;score<60,等级为E。 #include voidmain(){ intdata; chargrade; printf("Pleaseenterthescore:"); scanf("%d”,&data); switch(data/10) {case10: case9:grade=’A’b;reak; case8:grade=’B’;break; case7:grade=’C’;break; case6:grade=’D’;break; default:grade=’E’; } printf("thegradeis%c”,grade); } 5.编一程序每个月根据每个月上网时间计算上网费用,计算方法 如下: 30元10 小时 费用每小时31050小时 元 每小时2.550 元小时 要求当输入每月上网小时数,显示该月总的上网费用(6分) #include voidmain() {inthour; floatfee; printf(“pleaseinputhno”ur:); scanf(“%d”,&hour); if(hour<=10) fee=30; elseif(hour>=10&&hour<=50) fee=3*hour; elsefee=hour*2.5; printf(“Thetotalfeeis%f”,fee); } 6.从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏 幕上输出。 #include voidmain(){ inta,i,p=0,n=0,z=0; printf("pleaseinputnumber"); for(i=0;i<10;i++){ scanf("%d,",&a); if(a>0)p++; elseif(a<0)n++; elsez++; } printf("正数:%5d,负数:%5d,零:%5d\\n",p,n,z); } 7、编程序实现求1-10之间的所有数的乘积并输出。 #include voidmain() {inti; longsum=1; for(i=1;i<=10;i=i+1) sum=sum*i; printf(“thesumododfis:%ld”,sum); } 8.从键盘上输入10个数,求其平均值。 #include voidmain(){ inta,i,sum=0; floatave;; for(i=0;i<10;i++){ scanf("%d",&a); sum+=a; } ave=(float)sum/10; printf("ave=%f\\n",ave); } 9、编程序实现求1-1000之间的所有奇数的和并输出。 #include voidmain() {inti,sum=0; for(i=1;i<1000;i=i+2) sum=sum+i; printf(“thesumofoddis:%d”,sum); } 10.有一个分数序列:2/1,3/2,5/3,8/5,13/8,⋯⋯编程求这个序列 的前20项之和。 #include voidmain(){ inti,t,n=20; floata=2,b=1,s=0; for(i=1;i<=n;i++) {s=s+a/b; t=a; a=a+b; b=t; } printf("sum=%6.2f",s); } 11.从键盘输入两个数,求出其最大值(要求使用函数完成求最大值, 并在主函数中调用该函数) #include floatmax(floatx,floaty); voidmain() {floata,b,m; scanf("%f,%f",&a,&b); m=max(a,b); printf("Maxis%f\\n",m); } floatmax(floatx,floaty) { if(x>=y) returnx; else returny; } 12.编写程序,其中自定义一函数,用来判断一个整数是否为素数, 主函数输入一个数,输出是否为素数。 #include #include intIsPrimeNumber(intnumber) {inti; if(number<=1) return0; for(i=2;i return0;} return1;} voidmain() {intn; printf(“Pleaseinputn:”); scanf(“%d”,&n); if(IsPrimeNumber(n)) printf(n“%disaPrimeNumber”,n); elseprintf(n“%disnotaPrimeNumber”,n);} 13、从键盘输入n个数存放在数组中,将最小值与第一个数交换,输 出交换后的n个数。 #include intmain(void){ inti,n,iIndex,temp; inta[10]; printf("Entern:"); scanf("%d",&n); printf("Enter%dintegers:\\n"); for(i=0;i iIndex=0; for(i=1;i temp=a[0];a[0]=a[iIndex];a[iIndex]=temp; for(i=0;i printf("\\n"); return0; } 第二种解法利用函数 #include intcomp(intarry[],intn) { inti,index,temp; printf("为数组赋值:\\n"); for(i=0;i } for(i=1,index=0;i<=n-1;i++) {if(arry[i] } } temp=arry[0];arry[0]=arry[index];arry[index]=temp; for(i=0;i } return0; } main() {intn; inta[10]; printf("为n赋值:\\n"); scanf("%d",&n); comp(a,n);} 14.用数组实现以下功能:输入5个学生成绩,而后求出这些成绩的 平均值并显示出来。 #include voidmain() {inta[5],s=0; inti; for(i=0;i<5;i++) scanf(“%d”,&a[i]); for(i=0;i<5;i++) s=s+a[i]; printf(“result=%f”,s/5.0); } 15、输入一个正整数n(n<=6),再输入n×n的矩阵,求其主对角线元 素之和及副对角线元素之和并输出。 #include intmain(void){ inti,j,n,sum1=0,sum2=0; inta[6][6]; printf("Entern(n<=6):"); scanf("%d",&n); printf("Enterdata:\\n"); for(i=0;i if(i==j) sum1+=a[i][j]; if(i+j==n-1) sum2+=a[i][j]; } printf("sum1=%d,sum2=%d",sum1,sum2); return0; } 16、从键盘输入30名学生的成绩数据,求其中的最高分、最低分和 平均分。 (提示:用数组存放成绩数据) #include #defineM30 voidmain() {floatscore[M],max,min,aver; inti; printf(“pleaseinputsconr”e:); for(i=0;i max=score[0]; min=score[0]; aver=score[0]; for(i=1;i aver+=score[i]; } printf(“max=%f,min=%f,aver=%f”,max,min,aver/M); } 17.将一个有5个元素的数组中的值(整数)按逆序重新存放。 例:原来顺序为:8、6、5、4、1,要求改为1、4、5、6、8 #defineN5 #include voidmain() {inta[N],i,temp; printf(“enterarrany”a:); for(i=0;i for(i=0;i a[i]=a[N-i-1]; a[N-i-1]=temp; } printf(“n”); for(i=0;i printf(n“”); } 18.从键盘上输入一个2*3的矩阵,将其转秩后形成3*2的矩阵输出。 #include voidmain() {inta[2][3],b[3][2],i,j; for(i=0;i<2;i++) for(j=0;j<3;j++) scanf(“%,&d”a[i][j]); for(i=0;i<3;i++) for(j=0;j<2;j++) b[i][j]=a[j][i]; for(i=0;i<3;i++) {for(j=0;j<2;j++) printf("%5d",b[i][j]); n”); } } 19、从键盘输入10名学生的成绩数据,按成绩从高到低的顺序排列 并输出。(提示:用数组存放成绩数据) #include voidmain() {inta[10]; inti,j,temp; printf("inputscore:\\n"); for(i=0;i<10;i++) scanf("%d",&a[i]); printf("\\n"); for(i=1;i<10;i++) for(j=0;j<9;j++) if(a[j]{temp=a[j]; a[j]=a[j+1]; a[j+1]=temp; } for(i=0;i<10;i++) printf("%d,",a[i]); } 20、从键盘上输入一个4*3的整型数组,找出数组中的最小值及其 在数组中的下标。 #include voidmain() {inta[4][3],i,j,min,m,n; printf("Pleaseenterdata:"); for(i=0;i<4;i++) for(j=0;j<3;j++) scanf(“%d”,&a[i][j]); min=a[0][0]; m=0;n=0; for(i=0;i<4;i++) for(j=0;j<3;j++) if(a[i][j] m=i; n=j; } printf("theminis%d\\n,min); printf("posionis%d%d\\n,m,n); }下载本文