1.定义3个整型变量x,y,z和一个实型变量averge,计算并输出3个整数的平均值averge,其中x=y=1,z=0。
#include <stdio.h>int main(){int x,y,z;float average=0;x=1,y=1,z=0;average=1.0*(x+y+z)/3;printf("%f\n",average);return 0 ;}2.针对上一题要求,采用从键盘用scanf()函数输入x,y,z的值。
要求输出结果的形式为averge=…。
#include <stdio.h>int main(){float x,y,z;float average=0;scanf("%f,%f,%f",&x,&y,&z);average=1.0*(x+y+z)/3;printf("averge=%f\n",average);return 0 ;}3.输入3个整数给a,b,c,然后交换它们中的数,把a中原来的值给b,把b 原来的值给c,把c中原来的值给a。
#include <stdio.h>int main(){int a,b,c;int m,n;scanf("%d,%d,%d",&a,&b,&c);m=b;n=c;b=a;c=m;a=n;printf("a=%d,b=%d,c=%d\n",a,b,c);return 0;}4.计算某个数x的平方y,并以算术公式的形式输出x和y的值#include <stdio.h>#include <math.h>int main(){float x,y;scanf("%f",&x);y=pow(x,2);printf("x=%f,y=%f",x,y);return 0;}5.把百分制成绩转换成5级记分制,要求用switch语句。
90分以上(包括90): A80至90分(包括80):B70至80分(包括70):C60至70分(包括60):D60分以下:E输入输出示例:Input Score: 86 86的等级为B。
#include <stdio.h>int main(){float score;printf("Score :");scanf("%f",&score);if(score>=90)printf("A");else if(score>=80)printf("B");else if(score>=70)printf("C");else if(score>=60)printf("D");elseprintf("E");return 0;}6.输入2005年的任一个月,输出这个月的天数,要求使用switch语句。
输入输出示例:Input month of 2005: 10 2005年10月有31天。
#include <stdio.h>int main(){int month;printf("Month:");scanf("%d",&month);switch(month){case 1:printf("31\n");break;case 2:printf("28\n");break;case 3:printf("31\n");break;case 4:printf("30\n");break;case 5:printf("31\n");break;case 6:printf("30\n");break;case 7:printf("31\n");break;case 8:printf("31\n");break;case 9:printf("30\n");break;case 10:printf("31\n");break;case 11:printf("30\n");break;case 12:printf("31\n");break;}return 0;}7.输入x,计算并输出下列分段函数f(x)的值。
#include <stdio.h>int main(){float x,y;printf("x: ");scanf("%f",&x);if(x<1)y=x;else if((1<=x&&x<10)y=2*x-1;elsey=3*x-11;printf("y=%f\n",y);return 0;}8.输入任意三个数n1,n2,n3,求其中最大的一个数。
#include <stdio.h>int main(){float a,b,c;scanf("%f, %f , %f ",&a,&b,&c);if(a<b)if(b<c)printf("%d\n",c);elseprintf("%d\n",b);elseif(a<c)printf("%d\n",c);elseprintf("%d\n",a);return 0;}9、输入两个数,要求均为正数,如果为负数,继续输入,否则跳出循环。
#include <stdio.h>int main(){int x,y;do{scanf("%d,%d",&x,&y);if(x*y>0&&x+y>0){printf("%d,%d",x,y);break;}elsecontinue;}while(1);return 0;}10、计算...21117113191511+-+-+-=s前20项的和,要求保留8位小数。
#include<stdio.h> #include<math.h>int main(){int sign;float n,x,s;x=1,s=0;n=1.0;sign=1;while(fabs(n)<=77) /*判断最后一项是否小于等于77*/{s=s+x;n=n+4;sign=-sign;x=sign/n;}printf("s=%.8f\n",s);return 0;}11、输入一个正整数,求它的各位数字之和及位数。
例如123的各位数字之和是6,位数是3.#include <stdio.h>int main(){int x,y,z;z=1,y=0;scanf("%d",&x);for(;;z++){y=y+x%10;x=(x-x%10)/10;if(x<1)break;}printf("Digit is%d\n",z);printf("Peace is%d",y);return 0;}12、输出101-115之间不能被3整除的数,每行输出5个。
要求使用continue语句。
#include <stdio.h>int main(){int a,b,c,d;a=101,b=1,c=0;for(;a<=115;a++){if(a%3!=0)printf("%d\n",a);c=c+1;d=c%5;if(d=0)printf("\n");}return 0;}13、找出200以内的所有完数,并输出其因子。
一个数如恰好等于它的因子之和,这个数称为完数,如6=1+2+3,其中1、2、3为因子,6为因子和。
#include <stdio.h>int main(){int x,m,n,i,j;for(x=0,i=1;i<=200;i++){for(j=1;j<i;j++){if(i%j==0)x=x+j;}if(x==i)printf("%d",i);}return 0;}14、输出如下图形:11231234512345671234567891234567123451231#include <stdio.h>int main(){int m,i,j,a,b,c;for(i=1;i<=5;i++){for(j=1;j<=5-i;j++)printf(" ");for(j=1;j<=2*i-1;j++)printf("%d",j);printf("\n");}for(i=6;i<=9;i++){for(j=1;j<=i-5;j++)printf(" ");for(j=1;j<=2*(5-i%5)-1;j++)printf("%d",j);printf("\n");}return 0;}15、输出以下图形:MMMMMMMMMMMMMMMMMMMMMMMMM#include <stdio.h>int main(){int x,y;for(x=1;x<=5;x++){if(x==5)printf("MMMMM");else if(x!=5)printf("MMMMM\n");}return 0;}16、用递归函数计算Xn的值。
#include <stdio.h>int f(int n, int x){if(n==0)return 1;elsereturn x*f(n-1, x);}int main(){int n,x;printf("Please input n,x:");scanf("%d,%d",&n,&x);printf("x^n=%d",f(n,x));return 0;}17、输出Fibonacci数列1,1,2,3,5,8,…的前20个数,每行输出5个。