计算物体自由下落的距离
#include<stdio.h>
int main(void)
{
float height;
height=10*3*3/2;
printf("height = %.2f",height);
return 0;
}
计算摄氏温度
#include<stdio.h>
int main(void)
{
int C,F;
scanf("%d",&F);
C=5*(F-32)/9;
printf("Celsius = %d\n",C);
return 0;
}
整数四则运算
#include<stdio.h>
int main(void)
{
int A,B;
scanf("%d %d",&A,&B);
int a,b,c,d;
a=A+B;
b=A-B;
c=A*B;
d=A/B;
printf("%d + %d = %d\n",A,B,a);
printf("%d - %d = %d\n",A,B,b);
printf("%d * %d = %d\n",A,B,c);
printf("%d / %d = %d\n",A,B,d);
return 0;
}
计算分段函数[1]
#include <stdio.h>
int main()
{
double x,result;
scanf("%lf",&x);
if(x!=0){
result=1.0/x;
}else{
result=0;
}
printf("f(%.1f) = %.1f",x,result);
return 0;
}
计算分段函数[2]
#include <stdio.h>
#include <math.h>
int main()
{
double x,result;
scanf("%lf",&x);
if(x>=0){
result=pow(x,0.5);
}else{
result=pow(x+1,2)+2*x+1/x;
}
printf("f(%.2f) = %.2f",x,result);
return 0;
}
输出华氏-摄氏温度转换表
#include<stdio.h>
int main()
{
int lower, upper, F;
double C;
scanf("%d %d", &lower, &upper);
if (lower <=upper && upper <=100){
printf("fahr celsius\n");
for(F=lower;F<=upper;F+=2)
{
C = 5.0*(F-32)/9;
printf("%d%6.1f\n",F,C);
}
}
else{
printf("Invalid.");
}
return 0;
}
求N分之一序列前N项和
#include<stdio.h>
int main(void)
{
int i,N;
int fenmu=1;
double a;
double sum=0.0;
scanf("%d",&N);
for(i=1;i<=N;i++)
{
a=1.0/fenmu;
sum+=a;
fenmu+=1;
}
printf("sum = %.6f\n",sum);
return 0;
}
求奇数分之一序列前N项和
#include<stdio.h>
int main(void)
{
int i,N;
int fenmu=1;
double number;
double sum=0;
scanf("%d",&N);
for(i=1;i<=N;i++){
number=1.0/fenmu;
sum+=number;
fenmu+=2;
}
printf("sum = %.6f\n",sum);
return 0;
}
求简单交错序列前N项和
#include<stdio.h>
int main(void)
{
int i,N;
scanf("%d",&N);
int fenmu=1;
int fah=1;
double number;
double sum=0;
for(i=1;i<=N;i++){
number=fah*1.0/fenmu;
sum+=number;
fenmu+=3;
fah=-fah;
}
printf("sum = %.3f\n",sum);
return 0;
}
生成3的乘方表
#include<stdio.h>
#include<math.h>
int main(void)
{
int i,n,result;
scanf("%d",&n);
for(i=0;i<=n;i++)
{
result=pow(3,i);
printf("pow(3,%d) = %d\n",i,result);
}
return 0;
}
求组合数
#include<stdio.h>
double fact(int n){
int i;
double sum=1;
for(i=1;i<=n;i++){
sum=sum*i;
}
return sum;
}
int main()
{
int m,n;
double result;
scanf("%d %d",&m,&n);
result=fact(n)/(fact(m)*fact(n-m));
printf("result = %.0f\n",result);
return 0;
}
求整数均值
#include<stdio.h>
int main()
{
int a,b,c,d,sum;
double Average;
scanf("%d %d %d %d",&a,&b,&c,&d);
sum=a+b+c+d;
Average=sum/4.0;
printf("Sum = %d; Average = %.1f",sum,Average);
return 0;
}
阶梯电价
#include <stdio.h>
int main()
{
int x;
double cost;
scanf("%d",&x);
if(x<0){
printf("Invalid Value!");}
else if(x>=0&&x<=50){
cost=0.53*x;
printf("cost = %.2lf",cost);
}else{
cost=(x-50)*0.58+0.53*50;
printf("cost = %.2lf",cost);
}
return 0;
}
求平方与倒数序列的部分和
#include<stdio.h>
int main()
{
int m,n;
double a;
double sum=0;
scanf("%d %d",&m,&n);
for(m;m<=n;m++){
a=m*m+1.0/m;
sum+=a;
}
printf("sum = %.6f",sum);
return 0;
}
求交错序列前N项和
#include<stdio.h>
int main()
{
int N;
scanf("%d",&N);
int i;
int zhengfu=1;
double sum=0.0;
double a;
for(i=1;i<=N;i++){
a=zhengfu*i*1.0/(2*i-1);
sum+=a;
zhengfu=-zhengfu;
}
printf("%.3f",sum);
return 0;
}
求平方根序列前N项和
#include<stdio.h>
#include<math.h>
int main()
{
int n,i;
scanf("%d",&n);
double sum=0;
for(i=1;i<=n;i++){
sum+=sqrt(i);
}
printf("sum = %.2f",sum);
return 0;
}
求阶乘序列前N项和
#include<stdio.h>
double fact(int n)
{
int i,a=1;
for(i=1;i<=n;i++){
a*=i;
}return a;
}
int main()
{
int n,i,sum=0;
n<=12;
scanf("%d",&n);
for(i=1;i<=n;i++){
sum+=fact(i);
}
printf("%d",sum);
return 0;
}
计算符号函数的值
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
if(n<0){
printf("sign(%d) = -1\n",n);}
else if(n==0){printf("sign(%d) = 0\n",n);
}else{
printf("sign(%d) = 1\n",n);
}
return 0;
}
统计学生平均成绩与及格人数
#include<stdio.h>
int main()
{
int n,i,c=0;
double a,sum=0;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
int x;
scanf("%d ",&x);
sum+=x;
if(x>=60){
c++;
}
}
a=1.0*sum/n;
printf("average = %.1f\n",a);
printf("count = %d\n",c);
return 0;}
统计字符
#include<stdio.h>
int main()
{
int letter,blank,digit,other,i;
char ch;
letter=blank=digit=other=0;
for(i=1;i<=10;i++)
{
ch=getchar();
if((ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z'))
{
letter++;
}else if(ch==' '||ch=='\n'){
blank++;
}else if(ch>='0'&&ch<='9'){
digit++;
}else{
other++;
}
}
printf("letter = %d, blank = %d, digit = %d, other = %d",letter,blank,digit,other);
return 0;
}
输出闰年
#include<stdio.h>
int main()
{
int nianfen,i;
scanf("%d",&nianfen);
if(nianfen>2003&&nianfen<2101){
for(i=2003;i<=nianfen;i++){
if((i%4==0&&i%100!=0)||i%400==0)
printf("%d\n",i);}}else if(nianfen>2000&&nianfen<2004){
printf("None");}
else{printf("Invalid year!");
}
return 0;
}
成绩转换
#include<stdio.h>
int main()
{
int cj;
char jg;
scanf("%d",&cj);
switch(cj/10){
case 10:jg='A';break;
case 9:jg='A';break;
case 8:jg='B';break;
case 7:jg='C';break;
case 6:jg='D';break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:jg='E';break;
}
printf("%c",jg);
return 0;
}
查询水果价格
#include<stdio.h>
int main()
{ int i;
double price;
int ch;
printf("[1] apple\n[2] pear\n[3] orange\n[4] grape\n[0] exit\n");
for(i=1;i<=5;i++){
scanf("%d",&ch);
if(ch==0)
break;
switch(ch){
case 1:price=3.00;break;
case 2:price=2.50;break;
case 3:price=4.10;break;
case 4:price=10.20;break;
default:price=0.00;break;
}
printf("price = %.2f\n",price);
}
return 0;
}
比较大小
#include<stdio.h>
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
if(a<b&&b<c)
printf("%d->%d->%d",a,b,c);
else if(a<c&&c<b)
printf("%d->%d->%d",a,c,b);
else if(b<a&&a<c)
printf("%d->%d->%d",b,a,c);
else if(b<c&&c<a)
printf("%d->%d->%d",b,c,a);
else if(c<a&&a<b)
printf("%d->%d->%d",c,a,b);
else
printf("%d->%d->%d",c,b,a);
return 0;
}
高速公路超速处罚
#include<stdio.h>
int main()
{
int cs,xs;
double x;
scanf("%d %d",&cs,&xs);
x=100.0*(cs-xs)/xs;
if(x<10){
printf("OK");
}
else if(x>=50)
{
printf("Exceed %.0f%%. License Revoked",x);
}
else{
printf("Exceed %.0f%%. Ticket 200",x);
}
return 0;
}
出租车计价
#include<stdio.h>
int main()
{
double s,jieguo,m1;
int t,m2,a;
scanf("%lf %d",&s,&t);
if(s<=3){
m1=10;
}
if(s>3&&s<=10){
m1=10+(s-3)*2;
}
if(s>10){
m1=10+14+(s-10)*3;
}
a=t/5;
m2=a*2;
jieguo=m1+m2;
printf("%.0f",jieguo);
return 0;
}
统计学生成绩
#include<stdio.h>
int main()
{
int cj;
int i,n;
int A=0;
int B=0;
int C=0;
int D=0;
int E=0;
scanf("%d\n",&n);
for(i=1;i<=n;i++){
scanf("%d ",&cj);
switch(cj/10){
case 10:A++;break;
case 9:A++;break;
case 8:B++;break;
case 7:C++;break;
case 6:D++;break;
default:E++;break;
}
}printf("%d %d %d %d %d\n",A,B,C,D,E);
return 0;}
三角形判断
#include<stdio.h>
#include<math.h>
int main()
{
double x1,x2,x3,y1,y2,y3;
scanf("%lf %lf %lf %lf %lf %lf",&x1,&y1,&x2,&y2,&x3,&y3);
double a, b,c,l,s,p;
a=pow((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2),0.5);
b=pow((x1-x3)*(x1-x3)+(y1-y3)*(y1-y3),0.5);
c=pow((x3-x2)*(x3-x2)+(y3-y2)*(y3-y2),0.5);
if(a+b>c&&a+c>b&&b+c>a){
l=a+b+c;
p=(a+b+c)/2.0;
s=pow(p*(p-a)*(p-b)*(p-c),0.5);
printf("L = %.2f, A = %.2f",l,s);
}
else{
printf("Impossible\n");
}return 0;
}
求给定精度的简单交错序列部分和
#include <stdio.h>
int main()
{
int i,fm=1;
double sum=0,eps,flag=1;
scanf("%lf",&eps);
for(i=1;;i++){
sum+=flag*1.0/fm;
flag=-flag;
if((1.0/fm)<=eps)
break;
fm+=3;
}
printf("sum = %.6f",sum);
return 0;
}
猜数字游戏
#include<stdio.h>
int main()
{
int shuiji,n,x;
int i;
scanf("%d %d",&shuiji,&n);
for(i=1;i<=n;i++)
{
scanf("%d",&x);
if(x<0)
{printf("Game Over");
break;
}
if(x>shuiji)
printf("Too big\n");
if(x<shuiji)
printf("Too small\n");
if(x==shuiji){
if(i==1)
printf("Bingo!");
if(i==2||i==3)
printf("Lucky You!");
if(i>3&&i<=n)
printf("Good Guess!");
break;}
}
if(i>n)
printf("Game Over");
return 0;
}
求e的近似值
#include<stdio.h>
double fact(int n)
{
int i;
double sum=1;
for(i=1;i<=n;i++){
sum=sum*i;
}
return sum;
}
int main()
{
int n,i,j;
double sum=0;
double a;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
a=fact(i);
sum+=1.0/a;
}sum = sum + 1;
printf("%.8f",sum);
return 0;
}
找出最小值
#include<stdio.h>
int main()
{
int i,n,x,x1;
scanf("%d",&n);
scanf("%d",&x1);
for(i=1;i<n;i++)
{
scanf("%d",&x);
if(x1>x)
x1=x;
}
printf("min = %d",x1);
return 0;
}
统计素数并求和
#include<stdio.h>
int main()
{
int m,n;
scanf("%d %d",&m,&n);
int x,i;
int c=0,sum=0;
for(x=m;x<=n;x++){
for(i=2;i<=x;i++){
if(x%i==0&&x!=i)
break;
if(i==x){c+=1;sum+=x;}
}}
printf("%d %d",c,sum);
return 0;
}
求奇数和
#include<stdio.h>
int main()
{
int i,x,sum=0;
do{
scanf("%d",&x);
if(x%2==1)
sum+=x;
}while(x>0);
printf("%d",sum);
return 0;
}
求幂级数展开的部分和
#include<stdio.h>
#include<math.h>
double fact(int n){
int i;
double sum=1;
for(i=1;i<=n;i++){
sum*=i;
}return sum;
}
int main()
{
int i=1,n;
double fz,fm,x,a,sum=1;
scanf("%lf",&x);
do{
fz=pow(x,i);
fm=fact(i);
i++;
a=1.0*fz/fm;
sum+=a;
}while(a>=0.00001);
printf("%.4f",sum);
return 0;
}
求分数序列前N项和
#include<stdio.h>
int main()
{
int i,n;
double x,y,a,sum=0;
scanf("%d",&n);
x=2,y=1;
for(i=1;i<=n;i++){
sum+=1.0*x/y;
a=x;
x=x+y;
y=a;
}
printf("%.2f",sum);
return 0;
}
特殊a串数列求和
#include<stdio.h>
int main()
{
int a,n,i,m=0;
int sum=0;
scanf("%d %d",&a,&n);
for(i=1;i<=n;i++){
m=m*10+a;
sum+=m;
}
printf("s = %d",sum);
return 0;
}
换硬币
#include<stdio.h>
int main()
{
int a,b,c,x;
int count=0;
scanf("%d",&x);
for(a=x/5;a>=1;a--){
for(b=x/2;b>=1;b--){
for(c=x;c>=1;c--){
if(x==(5*a+2*b+c)){
printf("fen5:%d, fen2:%d, fen1:%d, total:%d\n",a,b,c,a+b+c);
count++;
}
}
}
}
printf("count = %d",count);
return 0;
}
水仙花数
#include<stdio.h>
int pow(int a,int n){
int i;
int sum=1;
for(i=1;i<=n;i++){
sum*=a;
}
return sum;
}
int main()
{
int a,c,sum,n,x;
int max,min;
scanf("%d",&n);
max=pow(10,n);
min=pow(10,n-1);
for(x=min;x<max;x++){
c=x;
sum=0;
while(sum<=x&&c!=0){
a=c%10;
sum+=pow(a,n);
c/=10;
}
if(sum==x)printf("%d\n",sum);
}
return 0;
}