首页 > 其他分享 >c语言-字符串+转义字符+注释、语句、函数、数组、操作符 2

c语言-字符串+转义字符+注释、语句、函数、数组、操作符 2

时间:2023-06-24 17:06:27浏览次数:45  
标签:语句 10 int sum Add 转义字符 操作符 printf

一、字符串+转义字符+注释

字符串类型(相较于 字符数据类型):eg:“ ”;//空字符串

定义:由双引号引起的一串字符为字符串字面值,简称字符串。(后面默认会有\0,结束标志 不算内容

int main()
{
   char arr1[]="abc"; //数组
                   //"abc"——'a' 'b' 'c' '\0' ——'\0'为字符串的结束标志
   printf("%s\n",arr1);
   return 0;
}
  
  char arr2[]={'a','b','c',\0或0};  //输出为 abc

*数据在计算机上存储时,使用的二进制

每个字符有对应的编号/码值   eg:a(ASCII编码)  ——对应:97(ASCII码值)

函数:strlen

printf("%d\n",strlen(arr1));//strlen—string length  
                           计算字符串长度,不包含结束标志"\0"

\+_介绍:

\0:转义字符

\n:换行    \t:水平制表符

??+)——>三字母词,会编译为其他符号,给每个 ? 前加个 \ 就可以 

eg:\?\?)

\ 可以用于转义 \表示普通的\

\\:表示一个反斜杠,防止被解释为一个转义序列符

进制数相关转化

八进制转化为10进制:

3  2——>3*81+2*80

            =24+2=26

printf("%d\n",strlen("c:\test\32\test.c"));

结果显示13位,中显示的数字不能出现>=8

\3 2——32是两个八进制数

3 2作为八进制代表的那个十进制数字,作为ASCII码值对应的字符

3 2——>转化十进制为 26——>作为ASCII值代表的字符

\ddd:ddd表示1~3个八进制的数字

\xdd:dd表示两个十六进制数字

printf("%c\n",'\x61');  // \x61表示一个字符对应字符

6  1 ——>6*161+1*60=96+1=97

ASCII编码:48——>0、 65——>A、97——>a

注释

c的注释风格:/* xxxxxxx   */   缺陷:不能嵌套注释

——多个注释时,只识别到第一个*/就停止了

c++的注释风格://xxxxx    选中快捷键注释:ctrl+k+c  取消:ctrl+k+u

*代码比较复杂时可以加入注释

二、语句

选择语句:

int main()
{
   int input=0;
   printf("你喜欢听歌吗?(1/0)>:");
   scanf("%d",&input); //1/0
   if(input==1)
      printf("听歌\n");
   else
      printf("不听\n");
   return 0;
}

#include <string.h>


循环语句:包含while语句、for语句、do...while语句

int main()
{
   int line=0;
   printf("学习c课程\n");
   while(line<20000)
   {
      printf("敲一行代码:%d\n",line);
      line++;
   }
   if(line>=20000)
      printf("暴富\n");
   return 0;
}

函数分为:自定义函数、库函数

int num1=10;

int num2=20;

sum=num1+num2;

sum=Add(num1,num2); //使用自定义函数Add 使三四行代码作用相同

|

int Add(int x,int y);//Add:函数名,int x、int y函数中的参数
{
	int Z=x+y;
	return z;


eg:

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=num1+num2;
   sum=Add(num1,num2);
   //sum=a+b;
   sum=Add(a,b);
   printf("sum=%d\n",sum);
   return 0;
}

三、数组

int arr[10]={1,2,3,4,5,6,7,8,9,10}; //定义一个存放有10个整数数字的数组

{1,2,3,4,5,6,7,8,9,10}下标为:

 0,1,2,3,4,5,6,7,8,9    //0~9

printf("%d\n",arr[4]);  //用下标的方式访问呢元素 ,4为下标对应数字为5

int i=0;
while(i<10)
{
	printf("%d",arr[i]);
  i++;
}

操作符

1、算术操作符:+、-、*、/、%(取模:除了之后的余数)

eg:int a=5%2;  //得1

2、移位操作符:>>右移、<<左移

int main()
{
	int a=1;
  int b=a<<2;
  printf("%d\n",b);

a为:00000000 00000000 00000000 00000001

b为:00000000 00000000 00000000 00000100

3、(二进制)位操作符:&、^、|   (十进制——转换>二进制)

&:按位与  (同1才为1,其余为0)

^:按位异或(同为假,异为真)计算规则:对应二进制位相同为0,则为1;

|:按位或(有一真就为真);

4、赋值操作符:=、+=、-=、*=、/=、&=、^=、|=、>>=、<<=

=:为赋值  eg:a=20;

==:为判断

复合赋值符

a=20;

a=a+10;   等于   a+=10;  

a=a-20;  等于   a-= 20;

a=a&2;   等于   a&=2;

单目操作符:

双目操作符:eg:a+b; //+:双目操作符

三目操作符:

!逻辑反操作    +(正号)都会省略  -负值

C语言中表示真假:0——假;非零——真

int a=10;
printf("%d\n",!a);   //输出为0
//当a=0时,!a  输出为1

sizeof:计算的是变量/类型所占空间的大小,单位是字节

int a=10;
printf("%d\n",sizeof(a)); //(a)/a/(int)  //输出4
int main()
{
	int arr[10]={0}; //10个整型元素的数组
  int sz=0;
  //10*sizeof(int)=40
  printf("%d\n",sizeof(arr));
  //计算数组的元素个数
  //个数=数组总大小/每个元素大小
  sz=sizeof(arr)/sizeof(arr[0]);
  printf("sz=%d\n",sz);  //10

标签:语句,10,int,sum,Add,转义字符,操作符,printf
From: https://blog.51cto.com/u_16168627/6541146

相关文章

  • day112 - mybatis的查询与特殊sql语句
    mybatis查询与特殊语句查询普通语句/***根据id查询用户信息*@paramid*@return*/UsergetUserById(@Param("id")Integerid);​<!--UsergetUserById(@Param("id")Integerid);--><selectid="getUserById"resultType="com.......
  • 字符转换(switch语句)
    #include<iostream>usingnamespacestd;intmain(intargc,char**argv){ charn; cout<<"请输入要转换的字符"; cin>>n;switch(n){ case'a':n=n-32;break;case'b':n=n-32;break; case'c':n=n......
  • hibernate打印完整sql语句
    采用p6spy完整显示hibernate的SQL语句   虽然在hibernate中有show_sql选项,但是显示出来的语句大多类似   select*fromxxxwherevalue=?   但是有时候我们需要得到完整的SQL语句,怎么办呢?使用P6SPY就可以完成这个任务   p6spy是一个开源软件,它可以跟踪任何使......
  • RestCilent语句【ElasticSearch】
    packagecn.itcast.hotel;importcn.itcast.hotel.mapper.HotelMapper;importcn.itcast.hotel.pojo.Hotel;importcn.itcast.hotel.pojo.HotelDoc;importcom.alibaba.fastjson.JSON;importorg.apache.http.HttpHost;importorg.elasticsearch.action.admin.indices.......
  • VB.NET开发Autocad,拿来就用的常用语句
    一,导入命名空间                             一、导入命名空间ImportsAcApps=Autodesk.AutoCAD.ApplicationServicesImportsAutodesk.AutoCAD.DatabaseServicesImportsAutodesk.AutoCAD.EditorInputImpor......
  • POSTGRESQL SQL 语句案例,一场由LIMIT 1 引发的“奇怪异像”
    开头还是介绍一下群,如果感兴趣polardb,mongodb,mysql,postgresql,redis等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。最近一段工作很少优化SQL,实际上7-8年前的确有一段疯狂优化的“美好时光”。 最近一个同事提出一个问题,他的一个POSTGRESQL的SQ......
  • python在if判断语句中对于0和None的处理
    情景:我在访问一个字典的key,但是我不知道这个key有没有,或者有,我也不知道value取值多少,即dict1.get(key)有可能输出None,也有可能输出0如果我对这个key进行判断,例如:ifdict1.get(key)这种判断,可能对于None和0的条件都是一样的,因此,如果我只是想判断是否存在这个key,我需要ifdict1......
  • new操作符都做了哪些事情
    一、概念new能创建一个实例对象;这个对象是给定的构造函数functionPerson(name,age){this.name=name;this.age=age;console.log(this)//Person{name:'Tom',age:20}}Person.prototype.sayName=function(){console.log(this.name)}......
  • PG-DBA培训05:PostgreSQL数据查询与SQL语句增删改 原创
    一、风哥PG-DBA培训05:PostgreSQL数据查询与SQL语句增删改本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQL数据库SQL开发与应用实战阶段之PostgreSQL数据查询与SQL语句增删改,学完本课程可以掌握PostgreSQLSQL增删改,插入数据(insert),修改数据(update),删除......
  • PG-DBA培训05:PostgreSQL数据查询与SQL语句增删改
    一、风哥PG-DBA培训05:PostgreSQL数据查询与SQL语句增删改本课程由风哥发布的基于PostgreSQL数据库的系列课程,本课程属于PostgreSQL数据库SQL开发与应用实战阶段之PostgreSQL数据查询与SQL语句增删改,学完本课程可以掌握PostgreSQLSQL增删改,插入数据(insert),修改数据(update),删除数......