一、goto和标签
1. 作用: 帮助我们实现代码的跳转
标签的定义:
名字:
goto语句和标签配合使用
#include<stdio.h> int main() { int i; //定义一个标签 label: printf("程序开始运行了! "); for(i=0; i<5; i++) printf("hello gec! "); printf("程序准备退出了! "); //本来程序即将退出,我强行跳转到起始位置再来执行 //goto label; //往前面跳转 goto label2; //往后跳转 printf("中间还有代码111! "); printf("中间还有代码222! "); printf("中间还有代码333! "); printf("中间还有代码444! "); label2: printf("我成功跳过了中间部分的代码! "); return 0; }
二、C语言中的数组
作用:
存放多个相同类型的数据
定义数组:
类型名字 数组名[数组的大小]
例如: int a[10]; // 定义了数组名叫a,最多允许存放10个int类型的数据
float b[7]; //定义float类型数组,最多存放7个小数
char c[8]; //定义char类型数组,最多存放8个字符,开发中使用频率最高,保存字符串 "hello"(字符用单引号,字符串用双引号)
数组的大小:
sizeof求数组的大小 sizeof(a) sizeof(b)
数组的初始化和赋值:
以char类型数组为例:
char c[10]="hello"; //定义数组立马初始化
char c[10]; //定义数组,没有初始化
c="hello"; //典型错误,char类型数组赋值不能直接用=(赋值符号)
strcpy(c,"hello");
char c[10]={'h','e','l'}; //定义数组立马初始化,一个个字符依次初始化
#include <stdio.h> int main() { int i; //定义char类型的数组 //定义数组立马初始化 char a[10]="hello"; //定义char类型数组,同时将hello字符串保存到该数组中 //打印 printf("%s ",a); //由于数组是连续存储的,还可以一个个字符打印 for(i=0; i<10; i++) printf("%c ",a[i]); }
数组的下标:
a[0] ......a[n] //数组下标从0开始
数组部分初始化:
数组部分初始化,那么没有初始化的,系统默认全部都填充0
char类型数组求字符串实际长度
strlen(); 比如: strlen(buf); //求出buf中存放的字符串的实际长度
strlen和sizeof区别
sizeof可以求C语言中所有合法类型变量的大小
strlen只能用于求字符串的实际长度,其他类型的变量不能用strlen
#include <stdio.h> #include <string.h> int main() { int i; char a[10]; //(常规写法) //a="hello"; 错误//定义数组的没有赋初始化,char类型数组只能使用 strcpy(a,"hello"); //把字符串hello拷贝到数组a中 printf("a is:%s ",a); //第三种(常规写法) char b[10]={'h','e','l'}; //b[0]--b[2] printf("b is %s ",b); //第四种(非常规写法) char c[10]={'y',[3 ... 5]='h','p'}; printf("c is %s ",c); for(i=0; i<10; i++) printf("c[%d] is:%c 对应的ASCII码值是:%d ",i,c[i],c[i]); //第五种(常规写法) char d[10]; d[0]='w'; d[1]='o'; printf("d is:%s ",d); //第六种(非常规写法) char e[10]; 0[e]='g'; //常规写法 e[0] 1[e]='e'; 2[e]='c'; printf("e is:%s ",e); }
字符串的结束标记:
C语言规定,字符串必须用双引号括起来,并且字符串有结束标记' ',用来标记字符串的结尾
我们在使用char类型数组的时候,需要多定义一个字节的空间留给
char a[5]="hello"; //不建议你这么写, 没有位置
char a[6]="hello"; //给 留了一个空间
int b[2]={18,17};
int main() { int i; char other[10]="china"; //for(i=0; i<strlen(other); i++) //写法一 for(i=0; other[i]!='