c 语言案例大全
1.求身高
#include <stdio.h>
int main()
{ int foot,inch;
scanf("%d%d",&foot,&inch);
printf("%f\n",(foot + inch / 12.0) * 0.3048);
return 0;
}
2.求身高1.1
#include <stdio.h>
int main()
{ double foot;
double inch;
scanf("%lf %lf",&foot,&inch);
printf("身高是%f米。\n",((foot + inch / 12) * 0.3048));
return 0;
}
3.求数字的各位之和
#include <stdio.h>
int main()
{
int a,b=0;
scanf("%d",&a);
do
{
b+=a%10;
a=a/10;
}
while(a!=0);
printf("%d",b);
}
## 求小于数的平方和
```cpp
#include <stdio.h>
int main()
{
int i,j;
int sum=0;
scanf("%d",&i);
for(j=1;j<i;j++)
sum+=j*j;
printf("%d",sum);
}
求一个整数的平方
#include <iostream>
using namespace std;
int square(int x)
{
x=x*x;
return x;
}
int main()
{
int i,j;
i=8;
j=square(i);
cout<<"i="<<i<<endl;
cout<<"j="<<j<<endl;
return 0;
}
求余商
#include <stdio.h>
int main()
{
int a,b;
scanf("%d%d",&a,&b);
printf("商为%d,余数为%d",a / b,a % b);
return 0;
}
全局变量
#include <iostream>
using namespace std;
int age;
void getAge()
{
cout<<"请输入你的年龄";
cin>>age;
}
void showAge(int age)
{
cout<<"你的年龄是:"<<age<<endl;
return;
}
int main()
{
int age;
getAge();
age=::age;
showAge(age);
return 0;
}
三数最大
#include <stdio.h>
int main()
{
int a,b,c,i;
scanf("%d %d %d",&a,&b,&c);
i=a;
if(b>a)
i=b;
if(c>b)
i=c;
printf("最大为%d",i);
return 0;
}
##设置定值
#define PI 3.14;
#include <stdio.h>
int main()
{
int a;
float b;
a=3;
a=4;
b=PI;
printf("a=%d\n",a);
printf("b=%f\n",b);
}
求三角形面积
#include <stdio.h>
#include<math.h>
int main()
{
float a,b,c,s,area;
printf("please input 3 number:");
scanf("%f %f %f",&a,&b,&c);
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf("a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n",a,b,c,s);
printf("area=%7.2f\n",area);
}
统计字符
#include<stdio.h>
int main(){
char ch;
int space=0,number=0,character=0,other=0;
ch=getchar(); //字符输入
while(ch!='\n'){ // '\n'是回车
if(ch==' '){ //字符ch为空' '
space++;
}
else if(ch>='0'&&ch<='9'){ //字符为数字0~9
number++;
}
else if(ch>='a'&&ch<='z'||ch>='A'&&ch<='Z'){ //字符为字母a~z,A~Z
character++;
}
else{
other++;
}
ch=getchar();
}
printf("%d %d %d %d",character,number,space,other);
return 0;
}
## 大小写转化
```cpp
#include <stdio.h>
int main()
{
char a,b;
scanf("%c %c",&a,&b);
printf("%c %c",a,b);
printf("%c %c",a-32,b-32);
return 0;
}
数组求成绩
#include <stdio.h>
#define N 5
#define M 4
int main()
{
int i,j;
float s=0,ave,v[M],a[N][M];
printf("请输入学生的成绩:\n");
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
scanf("%f",&a[i][j]);
s=s+a[i][j];
}
v[i]=(s)/N;
s=0;
}
ave=(v[0]+v[1]+v[2]+v[3])/M;
printf("输出各科的平均成绩:%.2f,%.2f,%.2f,%.2f\n",v[0],v[1],v[2],v[3]);
printf("各科总平均成绩:%.2f\n",ave);
}
双分支
#include <stdio.h>
int main()
{
int age = 20;
if(age < 18)
printf("未成年\n");
else
printf("成年");
return 0;
}
数组
#include <stdio.h>
int main()
{
int arr[10] = {1,2,3,4,5,6,7,8,9,10};
int i = 0;
while(i<10)
{
printf("%d",arr[i]);
i++;
}
return 0;
}
找钱
#include <stdio.h>
int main()
{ int price = 0;
int bill = 0;
printf("请输入金额:",price);
scanf("%d",&price);
printf("请输入票面:",bill);
scanf("%d",&bill);
if (bill >= price)
{
printf("找您%d元",bill - price);
}
else
{
printf("不够\n");
}
return 0;
}
循环
#include <stdio.h>
#include <string.h>
int main()
{
int line = 0;
printf("加入比特\n");
while(line<20000)
{
printf("敲一行代码%d\n",line);
line++;
}
printf("好offer\n");
return 0;
}
长整数类型
#include <stdio.h>
int main()
{
long a;
printf("input a long number\n");
scanf("%ld",&a);
printf("%ld",a);
}
求三位数最大
#include <stdio.h>
int main()
{
int a,b,c;
int max;
scanf("%d%d%d",&a,&b,&c);
if(a>b)
{
if(a>c)
max=a;
else
max=c;
}
else
{
if(b>c)
max=b;
else
max=c;
}
printf("%d",max);
}
指向字符串的指针
#include <stdio.h>
int main()
{
char str[]="hello,c!";
printf("%s",str);
}
指针1
#include <stdio.h>
int main()
{
int a[10];
printf("%p\n",a);
printf("%p\n",&a);
printf("%p\n",&a[1]);
printf("%p\n",&a[2]);
return 0;
}
指针2
#include <stdio.h>
int main()
{
int i,a,x[10];
int *p,*q;
p=&a,q=x;
*p=3;
for(i=0;i<10;i++)
{
scanf("%d",q);
q++;
}
q=x+9;
printf("a=%d\n",a);
for(i=0;i<10;i++,q--)
printf("%d,",*q);
printf("\n");
}
for循环
#include <stdio.h>
int main()
{
int i,n;
int sum=0;
scanf("%d",&n);
for(i=0;i<=n;i++)
{
if(i<=n)
sum += i;}
printf("%d",sum);
return 0;
}
递归调用
#include <stdio.h>
void print(int n)
{
if(n>9)
{ print(n/10);
}
printf("%d ",n%10);
}
int main()
{
unsigned int num = 0;
scanf("%d",&num);
print(num);
}
自增自减
#include<stdio.h>
int main()
{
int m = 5;
if(m++ > 5)
{
printf("%d\n",m);
}
else
printf("%d\n",m--);
return 0;
}
算数运算
#include <stdio.h>
int main()
{
printf("hello world!\n");
printf("%d\n", 93 % 45);
printf("23+45=%d\n", 23 + 45);
return 0;
}
各类型大小
#include <stdio.h>
int main()
{ printf("%d\n",sizeof(char));//
printf("%d\n",sizeof(short));//
printf("%d\n",sizeof(int));//
printf("%d\n",sizeof(long));//
printf("%d\n",sizeof(long long));//
printf("%d\n",sizeof(float));//
printf("%d\n",sizeof(double));//
return 0;
}
枚举类型
enum Color
{
RED,
YELLOW,
BLUE
};
int main()
{
enum Color color = BLUE;
return 0;
}
求x,y,z的值
#include <stdio.h>
int main()
{
int x=0,y=3,z=2;
if(x++&&y++) z--;
else if(x+1==6||y--)
z++;
printf("%d%d%d",x,y,z);
}
求平方
#include <stdio.h>
int main()
{
int a,b;
int n,t;
int m,q;
int sum;
scanf("%d%d",&a,&b);
sum=a+b;
printf("和为%d",sum);
n=sum*sum;
printf("和的平方为%d",n);
t=a*a;
q=b*b;
m=t+q;
printf("和的平方为%d",m);
}
九九乘法表
#include <stdio.h>
int main()
{
int a,b;
for(a=1;a<10;a++)
{
for(b=1;b<=a;b++)
printf("%d*%d=%d",a,b,a*b);
printf("\n");
}
}
100以内的基数
#include <stdio.h>
int main()
{
int i = 1;
while(i <= 100)
{
if(i %2 == 1)
printf("\n");
printf("%d",i);
i++;
}
return 0;
}
100以内的素数
#include <stdio.h>
int main()
{
int i,j;
for(i=1;i<100;i++)
{
for(j=2;j<i;j++)
{
if(i%j==0)
break;
}
if(j==i)
printf("%d ",i);
}
}
成绩判定
#include <stdio.h>
int main()
{
int a;
printf("请输入成绩");
scanf("%d\n",a);
switch(a)
{
if(100 > a >= 90)
printf("A");
break;
else if(80 >= a > 90)
printf("B");
break;
default:printf("不合格");
}
return 0;
}
case语句
#include <stdio.h>
int main()
{
int a,b;
char c;
printf("a+(-*/)b/n");
scanf("%d%c%d",&a,&c,&b);
switch (c)
{
case'+' :printf("%d",a+b);break;
case'-':printf("%d",a-b);break;
case'*':printf("%d",a*b);break;
case'/':printf("%d",a/b);break;
default:printf("input error");
}
}
for 循环
#include <stdio.h>
int main()
{
int i = 0;
for(i = 1;i <= 10; i++)
{if(i ==5 )
continue;
printf("%d",i);
}
return 0;
}
putchar函数
#include <stdio.h>
int main()
{
int ch = 0;
while((ch = getchar()) != EOF)
{putchar(ch);}
printf("%c\n",ch);
return 0;
}
case语句
#include <stdio.h>
int main()
{
int n = 1;
int m = 2;
switch(n)
{
case 1: m++;
case 2: n++;
case 3:
switch (n)
{case 1: n++;
case 2: m++;
n++;
break;
}
case 4: m++;
break;
default:
break;
}
printf("m = %d,n = %d\n",m,n);
return 0;
}
case语句
#include <stdio.h>
int main()
{
int type = 0;
scanf("%d",&type);
switch (type)
{
type = 1;
printf("你好");
break;
default:
printf("什么呀");
break;
}
return 0;
}
打出字符
#include <stdio.h>
int main()
{char c1,c2;
c1='A';
c2='\101';
printf("c1=%c,c2=%c\n",c1,c2);
}
构造函数
#include <stdio.h>
int sum(int x,int y)
{
int z;
z = x + y;
return z;
}
int main()
{
int a,b,c;
scanf("%d %d",&a,&b);
c = sum(a,b);
printf("sum = %d",c);
}
函数
#include <stdio.h>
int Add(int x,int y)
{
int z = x + y;
return z;
}
int main ()
{
int num1 = 10;
int num2 = 20;
int sum = 0;
//int a = 100;
//int b = 200;
sum = Add(num1,num2);
//sum = Add(a,b);
printf("sum = %d\n",sum);
return 0;
}
函数交换两数
#include <iostream>
using namespace std;
void swap(int x,int y)
{
int temp;
temp=x;
x=y;
y=temp;
return;
}
int main()
{
int i,j;
cout<<"请输入两个整数i和j";
cin>>i>>j;
swap(i,j);
cout<<"调用后:i="<<i<<",j="<<j<<endl;
return 0;
}
计算复利
#include <stdio.h>
int main()
{
int x;
scanf("%d", &x);
double amount = x * (1 + 0.033) * (1 + 0.033) * (1 + 0.033);
printf("%f", amount);
return 0;
}
各类型精度
#include <stdio.h>
int main()
{
int a,b;
float c,d;
long e,f;
unsigned int u,v;
char c1,c2;
printf("请输入数据:\n");
scanf("%d,%d",&a,&b);
scanf("c=%f,d=%f",&c,&d);
scanf("%*c%c%c",&c1,&c2);
scanf("e=%1d,f=%1d",&e,&f);
scanf("%o,%o",&u,&v);
printf("a=%-4d,b=%3d\n",a,b);
printf("c=%f,d=%8.2f\n",c,d);
printf("c1=%c,c2=%c",c1,c2);
printf("e=%161d,f=%161d\n",e,f);
printf("u=%o,v=%o\n",u,v);
}
利用函数求一个数的模
#include <stdio.h>
int ff(int n)
{
int f;
if(n<0) printf("input error !");
else if(n==0 ||n ==1) f=1;
else f=ff(n-1)*n;
return(f);
}
int main()
{
int n,y;
printf("\ninput a integer number:\n");
scanf("%d",&n);
y=ff(n);
printf("%d!=%d",n,y);
}
求两数的平均值
#include <stdio.h>
int main()
{
int a;
int b;
scanf("%d%d",&a,&b);
double c = (a + b) / 2.0;
printf ("c%f",c);
return 0;
}
逻辑语句
#include <stdio.h>
int main()
{
int a=3,b=4,c=5;
int x,y,z,m,n;
x=(c>b>a);
y=(c>b&&b>a);
z=(a=3);
m=(a==3);
n=a+b<c*a-b;
printf("x=%d,y=%d,z=%d,m=%d,n=%d\n",x,y,z,m,n);
}
case语句
#include <stdio.h>
int main()
{
int a=0,b=1,c=2;
switch (a)
{
case 0:switch (b)
{
case 1:printf(" # ");break;
case 0:printf(" * ");break;}
case 1:switch (c==2)
{
case 1:printf("&");break;
case 0:printf("!");break;
}
}
}
是否构成三角形以及构成的种类
#include <stdio.h>
int main()
{
int a,b,c;
printf("请输入三角形的三边:\n");
scanf("%d,%d,%d",&a,&b,&c);
if(a+b<=c||a+c<=b||b+c<=a)
printf("不构成三角形");
else
{
printf("构成");
{
if(a==b||b==c||a==c)
printf("为等腰三角形");
if(a==b&&b==c)
printf("为等边三角形");
if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a)
printf("为直角三角形");
}
}
}
冒泡法
#include <stdio.h>
int main()
{
int a[10];
int i,j,t;
printf("input 10 numbers :\n");
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);}
printf("\n");
for(i=0;i<9;i++)
{
for(j=0;j<9-i-1;j++)
if(a[j]>a[j+1])
{
t=a[j];a[j]=a[j+1];
a[j+1]=t;
}
}
printf("the sorted numbers:\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
}