ios之c语言学习笔记

C语言笔记


1.Printf输出函数语法
printf的语法 输出语句
(1)printf("你想输出的内容");
(2)printf("格式字符串",...);占位符%d整形数 %f小数 %s字符串 %c单个字符
printf("\n");换行 
2.常量与变量
定义变量  语法:数据类型 变量名

C语言中数据类型:
       字符char,短整型short
       整型int,长整型long
       单精度浮点:float
       长精度浮点:double
       要想使用变量,必须先定义它。变量通过赋值语句保存东西.

3.scanf输入函数语法
scanf("数据类型的占位符",地址)%d %f %s %c
%ld %lf

inta,b;
printf("请输入第一个数")
scanf("%d",&a)
printf("请输入第二个数")
scanf("%d",&b)
printf("%d+%d=%d\n",a,b,a+b);

4.运算符
(1)特殊运算符:() .-> []
(2)算术运算符:+—×/%++--
(3)关系运算符:> >= < <= ==  !=
(4)位操作运算符:&∧/<< >>
(5)逻辑运算符:&&\\!
(6)条件运算符:?:
(7)赋值运算符:= += -= ×= /= %=
5.无条件转向之goto语句

goto l;
l:

条件转向语句if语句
if(条件)
{
条件成立时要做的事(一行或多行代码)
}
举例:

int a;
scanf(“%d”,&a);
if(a%2==0)
{
  Pintf(“%d是偶数!\n”,a);
}
if(a%2!=0)
{
  Pintf(“%d是奇数!\n”,a);
}

6.条件判断之if else语句

if(条件1)
{
条件1成立时要做的事(一行或多行代码)
}
else if(条件2)
{
条件2成立时要做的事(一行或多行代码)
}..................
else
{
以上条件都不成立时的代码
}

举例1:

int a;
scanf(“%d”,&a);
if(a%2==0)
{
  Pintf(“%d是偶数!\n”,a);
}
else
{
  Pintf(“%d是奇数!\n”,a);
}

举例2:

int a=0;
printf(“请输入一个有效的分数(0-100):”);
scanf(“%d”,&a);
if(a<60)
{
  Printf(“%d是不及格!\n”,a);
}
else if(a<80)
{
  Printf(“%d是及格!\n”,a);
}
else if(a<90)
{
  Printf(“%d是优良!\n”,a);
}
else
{
  Printf(“%d是优秀!\n”,a);
}

7.条件判断之switch开关语句

Swith(表达式)
{
  case1:
  做是值1的事
  breakcase2:
  做是值2的事
  break;
...........
  default:
  如果前面的值都不是的事
}

举例1:

int a;
scanf(“%d”,&a);
if (a==0)
{
  printf(“零\n”);
}
else If (a==1)
{
  printf(“壹\n”);
}
else If (a==2)
{
  printf(“贰\n”);
}
else If (a==3)
{
  printf(“叁\n”);
}
else  If (a==4)
{
  printf(“肆\n”);
}
else If (a==5)
{
Printf(“伍\n”);
}
else  If (a==6)
{
  printf(“陆\n”);
}
else If (a==7)
{
  printf(“柒\n”);
}
else If (a==8)
{
  printf(“捌\n”);
}
else If (a==9)
{
  printf(“玖\n”);
}
else
{
  printf(“对不起,无法转换!”);
}

举例2:

switch(a)
{
  case 0printf(“零\n”);
    breakcase 1printf(“壹\n”);
    breakcase 2printf(“贰\n”);
    breakcase 3printf(“叁\n”);
    breakcase 4printf(“肆\n”);
    breakcase 5printf(“伍\n”);
    breakcase 6printf(“陆\n”);
    breakcase 7printf(“柒\n”);
    breakcase 8printf(“捌\n”);
    breakcase 9printf(“玖\n”);
    breakdefaultprintf(“对不起,无法转换\n”);
    break;
}

8.循环之for语句
从某一处开始,连续不断的做一件事,就叫循环。

for(表达式1(赋值语句 初值);表达式2(条件);表达式3(增值的赋值语句))
{
  循环要做的事(一行或多行代码)
}

举例1:

for(int i=0i8i++)
{
printf(“1\n”);(输出81)

}

举例2:

for(int i=1i101i++)
{
  printf(“%d\n”,i);(输出1100的数)
}

举例3:

for(int i=11i<=55i=i+3{
  printf(“%d\n”,i);(输出111417.。。。。。。53)
}

举例4:

for(int i=9i0i--)
{
  printf(“%d\n”,i);(输出987654321)
}

Continue:结束本次循环,开始下一次循环
Break:跳出循环
For循环的嵌套:外面的for循环一次,里面的for循环一圈,再循环到外面的for。
举例5:

int a=9;
scanf(“%d”,&a);
forint i=a;i>0;i--)
{
    for(int j=1;j<=3;j++)
   {
      printf(“%d\n”,j)
    }
}
(当输入5时,输出5123

9.循环之while语句

while(条件)
{
  循环体
}

举例1:

int sum=0,i;
for(i=1;i<=100;i++)
{
  sum=sum+i
}
printf(“sum=%d\n”,sum);(5050

举例2:

int sum=0,i;
for(i=1;i<=100;i++)
{
  sum=sum+i
  ifsum=3003)
  {
    break;
  }
}
printf(“i=%d\n”,i);(77

举例3:

int i=0whilei100{
  i++;
  Printf(“%d\n”,i);
}
(输出1-100)

举例4:

int i=0sum=0whilesum!=3003)
{
  i++;
 sum+=i
}
printf(“i=%d\n”,i);(77

10.循环之do while语句
do
{
循环体
}while(条件);
举例1:

int i=0sum=0do
{
  i++;
 sum+=i
}whilesum!=3003);
printf(“i=%d\n”,i);(77

当知道循环次数的时候,用for循环,当不知道循环次数的时候,用while或do while循环。
举例:

int n;(保存总人数)
int score;(成绩)
int sum=0;(总分)
printf(“请输入你班级总人数”)
scanf(“%d”,&n)
forint i=1;i<=n;i++)
{
  printf(“请输入第%d名同学成绩”,i);
  scanf(“%d”,&score);
  sum+=score;
}
printf(“平均分是%g\n,sum*1.0/n”);

举例:

int n=0;(计数器)
int sum=0;(累加器)
int temp;(每一名同学成绩)
printf(“请输入第%d名同学成绩”,n+1);
scanf(“%d”,&temp);
while(temp>0)
{
  n++;
  sum+=temp;
  printf(“请输入第%d名同学成绩”,n+1);
  scanf(“%d”,&temp);
}
printf(“平均分是%g\n,sum*1.0/n”);

11.函数
1.在程序的不同地方出现了相同的代码
2.把大的应用改成几个小的部分
定义(函数的主体部分,代表函数)
声明(告诉下面的代码这个函数存在,你可以使用它)
调用(使用函数)
返回值 函数的名字(参数的列表)——函数头
{
函数体
}
Paste_Image.png
Printf(“11”);相同时,就用函数,例如:
Paste_Image.png
12.自定义函数
举例1.

举例2.
Paste_Image.png
13.函数的调用
点右键-——add file to-——add.c/add.h文件
Add.c文件:{
float add(float a,float b,float c,)定义
Return a+b+c;
}
Add.h文件:float add(float a,float b,float c,);声明

全局变量(定义在所有函数外面的变量叫全局变量)
局部变量(定义在大括弧里面的变量)
变量的作用域,就是变量的生命周期:在大括号外面使用不了里面的变量,里面能够使用外面的变量(里面能够看到外面)
14.数组
要想使用数组,就必须先定义它。
语法: 数据类型 数组名称[整型常量]
举例:Int cj[6]

(1).逐一赋值Int cj[0]=44;Int cj[1]=55;..........Int cj[5]=99;
(2).在定义时赋值Int cj[6]={44,55,66,77,88,99};
(3).for循环赋值
for(int i=0i6i++)
{
  cj[i]=60+i
}
printf(“cj[%d]=%d”,i,cj[i]);

15.二维数组
在c语言中,字符串就是使用字符数组来保存的
(1)

char chh[]={‘a’,’a’,’a’,’a’,’\0’};
Printf(“%s”,chh);(输出的是aaaa)

(2)

char chh[]=”hello”;相当于char chh[6]={‘h’,’e’,’l’,’l’,’o’,’\0’};

(3)

int n[3][3]={{0,1,2},{3,4,5},{6,7,8}};

16.指针
(1)

    int aa=123;
    printf(“%d”,*&a
&变量   取地址的符号
*地址   得到地址里面的内容

(2)

{
int a;
a=123printf(“a=%d\n”,a);
int * p;
p=&a;
*p=250;
printf(“a=%d\n”,a);
return 0;
}第一次输出123,第二次输出250.

(3)指针使用的情况:
1.在一个函数里面想访问另一个函数里的变量
2.动态内存申请


17.数组与指针
数组名就是一个指针

{
  int a[10];
  for(int i=0;i<10;i++)
  {
    a[i]=i+1
  }
  int * p=a ;
  printf(“a[9]=%d\n”,*(p+9))
}
输出数组
{
  int a[10];
  for(int i=0;i<10;i++)
  {
    a[i]=i+1
  }
  int * p=a ;
  for(int i=0;i<10;i++)
  {
    printf(“a[%d]=%d\n”,i,*(p+i)) ;
  }
}

18.字符串

#include<string.h>
Strlen计算字符串的长度
Strcat字符串相连
Strcmp字符串的比较0代表相等
Strcpy字符串的赋值

19.结构体

语法: Struct结构名称
{
结构的数据
};

举例1.:

举例2:

20.结构体的使用
结构是可以嵌套的,结构中还可以有结构。

别名typedef


21.联合和枚举

联合union

结构中的成员都有自己单独的内存,联合中的成员是共同使用内存。对于联合,在同一时间只能使用一个成员。

联合在程序中的运用:

枚举enum(罗列值)

22.文件
1.打开文件fopen
2.对文件进行操作(读r或写w)
写文件有3个函数:fputc写一个字符;fputs写一个字符串;fprintf用格式化的写。
读文件的函数:fscanf
3.关闭文件fclose

举例:

{
  FILE * fp=NULL;
  fp=fopen(“abc.txt”,”w”);第一个参数是要打开的文件;第二个参数是操作的类型w r
  if(fp==NULL)
  {
    printf(“打开文件失败!”);
    return 0;
  }
  for(int i=’a’;i<=’z’;i++)
  {
    fputc(i,fp);输出a到z的26个字母
  }
  fclose(fp);
  return 0;
}

23.二进制文件
写文件:fwrite

读文件:fread

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值