c语言基础

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");
}
	
  • 11
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

煎饼果子小鸢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值