目的:
加深对c语言的认识。
技术:
1.goto语句
2.数据类型的自动转换
3.数据类型的强制转换
goto语句:
其中语句标号是一个标识符,该标识符一般用英文大写并遵守标识符命名规则,这个标识符加上一个“:”一起出现在函数内某处,执行goto语句后,程序将跳转到该标号处并执行其后的语句。
缺点—使程序层次不清 不易读
技术的使用:
goto TEST;
TESE: ;
技术的实际使用:
#include <stdio.h>
int main()
{
int sum = 0;
int i;
for(i=1; i<=10; i++)
{
printf("%d\n", i);
if(i==3)
goto end;
}
end:printf("结束for循环了....");
return 0;
}
自动类型转换:
自动转换发生在不同数据类型运算时,在编译的时候自动完成。
遵循规则:

注:字节小的可以向字节大的自动转换,但字节大的不能向字节小的自动转换。
技术的使用:
char a = ‘a’;
int b = 1;
double c = 2.00;
b = a ; //字符型可自动转换为整型
c = b ;//整型可自动转换为浮点型
技术的实际使用:
#include <stdio.h>
int main()
{
char c = 'a';
int n = c; //将c赋值给n
float f = c; //将c赋值给f
double d = c; //将c赋值给d
printf("%d\n",n);
printf("%f\n",f);
printf("%lf\n",d);
return 0;
}
强制类型转换:
强制类型转换是通过定义类型转换运算来实现
一般形式—(数据类型)表达式
使用时注意—数据类型和表达式都必须加括号
转换后不改变原数据的类型及变量值,只在本次运算中临时性转换
强制转换后的运算结果不遵循四舍五入原则
技术的使用:
double test1 = 1.00;
int test2 = (int) test1;
技术的实际使用:
#include <stdio.h>
int main()
{
double num = 2.5;
int num1 = (int) num1;
printf("num的整数部分是%d\n", num1);
return 0;
}
———————————————————————————————————————
goto语句的学习解决了我自从接触c语言以来的一个认知错误, 从一开始我就觉得有一个功能可以实现从程序的某个位置不按顺序直接跳至另一个位置,看了目录之后一直以为这个功能是指针,今天才了解到这个功能是goto语句。