c++ string转double_C||用电脑指挥挖掘机炒菜

c语言干货(一)

1,c语言的主要特点

     a:语言简洁,紧凑,使用方便,灵活。

     b:运算符丰富。

C. 数据结构丰富。

D.  具有结构化的控制语句。

E. 语法限制不太严格。

F. c语言允许直接访问物理地址。

G. 用c语言编写的程序可移植性好。

H. 生成目标代码的质量高。

2,c语言程序结构

     a:一个程序由一个或多个源程序文件组成。

     ①预处理指令。

     ②全局声明。

     ③函数定义。

     b:函数是c语言的主要组成部分。

     c:一个函数包括两个部分。

     ①函数首部

     ②函数体(声明部分,执行部分(执行部分的程序总是从main函数开始执行。程序中要求计算机完成的操作是由函数中的c语句完成的。每个数据声明和语句的最后必须有一个分号。c语言本身不提供输入输出的语句。c语言程序应当有注释)。

3,算法的特征:①有穷性②确定性③有零个或多个输入④有一个或多个输出⑤有效性。

4,常量

①整型常量

     ②实型常量

     ③字符常量

     ④字符串常量

     ⑤符号常量

5,变量:必须先定义后使用。

6,标识符:在计算机语言中用来对变量,符号常量名,函数,数组,类型等命名的有效字符序就是标识符。由字母,数字,下划线三种字符组成。且第一个字母必须是字母或者下划线

例如下面合法的表示符号

Sum ,average,_tatal,Class,day,Student_name

例如下面是不合法的标识符号

M. G.G,  *honjsh  ,1254

7,最基本的数据类型①整型(int)②浮点型(单精度float,双精度 double)③字符型(char)

8,c语言的最基本的运算符

算术运算符(+  -  *  /  %  ++  --)

关系运算符号(>  <  ==  >=  <=  !=)

关系运算符的优先级(< <= > >=)优先级相同高(== !=)优先级相同低

逻辑运算符(!逻辑非  &&逻辑与  ||逻辑或)

逻辑运算符的优先级(逻辑非>逻辑与>逻辑或)

赋值运算符(=)

条件运算符(?;)

指针运算符(* &)

下表运算符([])

11,c语言的控制语句

①if()....else....(条件语句)

②for()...(循环语句)

③while()......(循环语句)(先判断后执行)

④do....while()...(循环语句)(先之后后判断)

⑤continue(结束本次循环语句)

⑥break(终止执行switch循环语句)

⑦switch(多分枝选择语句)

⑧return (从函数返回语句)

12,if语句的一般格式

      ①if(表达式)  语句1     (没有else部分)

      ②if(表达式)

          语句1

      else

          语句2

      ③if(表达式1)     (在else部分镶嵌了多层if语句)

else  if(表达式)    语句1

else  if(表达式)     语句2

else  if(表达式)    语句3

else  if(表达式n)  语句n

else                 语句n+1

例题

代码部分:

#include

 int main()

 {

  printf("这是一个简单的c语言程序\n");

printf("hello world\n") ;

printf("青春同路人");

    return 0;

  }

运行结果;

b2a486c72dc550c40b5276dcbc4d1845.png

例题

当a=6,b=8请输出两个相加的结果

代码部分:

#include

 int main()

 {

 int a,b,sum;

 a=6;

 b=8;

 sum=a+b;

 printf("sum=%d\n",sum);

 printf("青春同路人");

 return 0;

  }

运行结果; 

b292ceb4eb0c603f2681e1e92bb8afb5.png

                      程序=算法+数据结构

例题

求1×2×3×4×5

代码部分

#include

 int main()

 {

  int a=2,multiply=1;

  for(a=1;a<=5;a++){

   multiply=multiply*a;

 }

 printf(”5!=%d\n",multiply);

     printf("青春同路人");

 return 0;

}

运行结果:

7ebae17168ba22c14ddec05af3643292.png

例题

请输入一个年份判断是否是闰年,如果是则输出yes不是则输出NO。

代码部分

#include

 int main()

 {

  int year;

  printf("请输入一个年份");

  scanf("%d",&year);//引入一个输入语句scanf 功能:将从键盘输入的字符转化为输入控制符所规定格式的数据,然后存入以输入参数的值为地址的变量中

  if(year%4==0&&year%100!=0||year%400==0)//引入一个条件语句if

  {

   printf("yes\n");

 }

 else

 {

  printf("NO\n");

 }

     printf("青春同路人");

 return 0;

}

运行结果:

fc18b6234f6957c5f02e2a1e1ed55e1e.png

例题

求1-1/2+1/3-1/4+........-1/100

代码部分

#include

 int main()

 {double i=-1,j,sum,x;

  for(j=1;j<=100;j++)//引入for循环,for循环里面的书写规则 for(初始化表达式; 循环条件; 操作表达式){ 执行语句 … }

  {

   i=(-1)*i;

   x=i/j;

   sum=sum+x;

 }

 printf("sum=%lf\n",sum);

 printf("青春同路人\n");

 return 0;

}

运行结果;

668ea3c9c2d743ab7bd1f5263a940a3a.png

9,自增(++)自减(--)的运算符

++i   先自增后使用    --i  先自减后使用

i++   先使用后自增    i--  先使用后自减法

例题

代码部分:(演示自增,自减同理)

#include

 int main()

 {

  int i=1,j;

  j=++i;

  printf("j=%d\n",j);

  printf("青春同路人\n");

 return 0;

}

运行结果:

4bc57f6c72b3149415b29812353db922.png

#include

 int main()

 {

  int i=1,j;

  j=i++;

  printf("j=%d\n",j);

     printf("青春同路人\n");

 return 0;

}

运行结果

8dff0c3f495b7dc68fd7e368efcf73b7.png

      10,ASCⅡ值表格

5ab6cecf48bf56b848b65f7226e0045b.png

例题

给定一个大写字母要求用小写字母输出变显示他的ASCⅡ值

代码部分:

#include

 int main()

 {

  char a,b;

  printf("请输入一个大写字母");

 scanf("%c",&a);

  b=a+32;

  printf("%c\n",b);

  printf("%d\n",b);

   printf("青春同路人\n");

 return 0;

}

运行结果:

9f8a9c3d05cfa952a2bc111857b8a407.png

例题

要求输入一个字符,判断该字符是否是数字,如果是,则输出汉字“正确”;如果同时满足字符为“0”这一条件,则输出其ASCII值;如果不是,则输出“error”。

代码部分

#include

 int main()

 {

  char a;

  printf("请输入一个字符");

  scanf("%c",&a);

  if(a>'0'&&a<='9')

  {

   printf("正确");

 }

 else if(a=='0')

 {

  printf("%d\n",a);

 }

 else

 {

  printf("error");

 }

    printf("青春同路人\n");

 return 0;

}

运行结果

9c29055003859744afe72a9fd9c2cd03.png fa2aa2810aef5fb56aee65788db4cff6.png

例题

输出所有100—999以内的3位水仙花数。

(注:所谓水仙花数是指所有位的数字的立方之和等于该数,例如:153=13+33+53)。

代码部分:

 #include

 int main()

 {

  int i,a,b,c,sum;

 for(i=100;i<=999;i++)

 {

  a=i/100;

  b=(i-(a*100))/10;

  c=(i-(a*100+b*10))%10;

  if(i==a*a*a+b*b*b+c*c*c)

  {

   printf("%d\n",i);

 }

 }

 printf("青春同路人\n");

 return 0;

}

运行结果:

072e755c45b192af5db1ec7d3ff56f46.png

例题

编写程序完成以下要求。

(1)输入一个三位数的整数,并反向输出。

  (2)输入一个整数,计算它的位数并反向输出。

代码部分

#include

 int main()

 {

  int i,a,b,c;

  printf("请输入一个三位数");

 scanf("%d",&i);

  a=i/100;

  b=(i%100)/10;

  c=((i%100)%10);

  i=c*100+b*10+a;

  printf("%d\n",i);

 printf ("青春同路人\n");

 return 0;

}

运行结果

36784d8d26c076aefe16e1ec9b435a9f.png

代码部分(while循环)

#include

int main()

{

int a,i;

 int n=0;

 printf("输入一个数:");

 scanf("%d",&a);

 while(a!=0)

 {

  i=a%10;

  a=a/10;

  n++;

 printf("%d",i);

 }

 printf(" 位数=%d\n",n);

 printf("青春同路人");

 return 0;

}

运行结果:

da6104870f7bb0b852a501c6f3968777.png

do  while循环、

代码部分

#include

int main()

{

int a,i;

 int n=0;

 printf("输入一个数:");

 scanf("%d",&a);

do

 {

  i=a%10;

  a=a/10;

  n++;

 printf("%d",i);

 }

 while(a!=0);

 printf(" 位数=%d\n",n);

 printf("青春同路人");

 return 0;

}

运行结果:

d6f4f64666ec111614f4b4c12d65b1f7.png 045b2d544cfcea58692643ed3b3505cd.png

扫码关注我们

投稿请联系qq : 2296696493

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值