c语⾔求字符串转换成双精度_C语⾔基础知识总结⼤全1.⼊门程序
#include <stdio.h>
int main()
{
printf("Hello World!");
return 0;
}
2.数据类型
数据类型:
1.基本数据类型:
1.基本数据类型
1.1. 整型:int 4个字节
1.2. 字符型:char 1个字节
1.3. 实型(浮点型)
1.3.1.单精度型:float 4个字节
1.3.
2.双精度型:double 8个字节
2.构造类型
2.构造类型:
2.1.枚举类型
2.2.数组类型
2.3.结构体类型
2.4.共⽤体类型
3.指针类型:
3.指针类型
4.空类型:
4.空类型
3.格式化输出语句
%d:⼗进制整数;
%c:单个字符;
%s:字符串;
%f:6位⼩数;
#include <stdio.h>
int main()
{
int age = 18;
float height = 1.85;
char unit = 'm';
printf("⼩明今年%d岁n", age);
printf("⼩明⾝⾼%f%cn", height, unit);
printf("⼩明现在在慕课⽹上学习IT技术n");
return 0;
}
4.常量
值不发⽣改变的量成为常量;
定义字符常量(注意后⾯没有;)
#include <stdio.h>
#define POCKETMONEY 10 //定义常量及常量值
int main()
{
printf("⼩明今天⼜得到%d元零花钱n", POCKETMONEY);
return 0;
}
5.运算符
5.1.算数运算符:+,-,*,/,%,++,--;前++/--,先运算,再取值.后++/--,先取值,再运算;
5.2.赋值运算符:
5.3.关系运算符;
5.4.逻辑运算符;
5.5.三⽬运算符:
表达式1 ? 表达式2 : 表达式3;
6.⽔仙花数计算
输出所有三位数的⽔仙花数字
所谓“⽔仙花数”是指⼀个三位数,其各位数字⽴⽅和等于该数,如:153就是⼀个⽔仙花数,153=111+555+333。#include <stdio.h>
int main()
{
//定义三位数num,个位数sd,⼗位数td,百位数hd
int num, sd, td, hd;
//循环所有三位数
for( num=100 ; num<1000 ; num++ )
{
//获取三位数字num百位上的数字
hd = num/100 ;
//获取三位数字num⼗位上的数字
td = num/10%10 ;
//获取三位数字num个位上的数字
sd = num%10 ;
//⽔仙花数的条件是什么?
if(num ==hd*hd*hd+td*td*td+sd*sd*sd )
{
printf("⽔仙花数字:%dn", num);
}
}
return 0;
}
7.打印正三⾓形的*
#include <stdio.h>
int main()
{
int i, j, k;
for(i=1; i<5; i++)
{
/* 观察每⾏的空格数量,补全循环条件 */
for( j=i ; j<5 ; j++ )
{
printf(" "); //输出空格
}
/* 观察每⾏*号的数量,补全循环条件 */
for( k=0 ; k<2*i-1 ; k++ )
{
printf("*"); //每⾏输出的*号
}
printf("n"); //每次循环换⾏
}
return 0;
}
8.臭名远扬的goto语句
很少使⽤
#include <stdio.h>
int main()
{
int sum = 0;
int i;
for(i=1; i<=10; i++)
{
printf("%dn", i);
if(i==3){
goto LOOP;//满⾜条件就执⾏goto语句
}
}
c++中string的用法//执⾏goto
LOOP:printf("结束for循环了...."); //请选择合适位置添加标识符
return 0;
}
9.形参与实参
形参:形参是在定义函数名和函数体的时候使⽤的参数,⽬的是⽤来接收调⽤该函数时传⼊的参数;
实参:实参是在调⽤时传递该函数的参数。
函数的形参和实参具有以下特点:
1. 形参只有在被调⽤时才分配内存单元,在调⽤结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调⽤结束
返回主调函数后则不能再使⽤该形参变量。
2. 实参可以是常量、变量、表达式、函数等,⽆论实参是何种类型的量,在进⾏函数调⽤时,它们都必须具有确定的值,以便把这些值
传送给形参。因此应预先⽤赋值等办法使实参获得确定值。
3. 在参数传递时,实参和形参在数量上,类型上,顺序上应严格⼀致,否则会发⽣类型不匹配”的错误。
10.函数返回值注意
注意
注意:void函数中可以有执⾏代码块,但是不能有返回值,另void函数中如果有return语句,该语句只能起到结束函数运⾏的功能。其格式为:return;
11.递归
#include <stdio.h>
int getPeachNumber(int n) //这⾥要定义n,要不编译器会报错!
{
int num;
if(n==10)
{
return 1;
}
else
{
num = (getPeachNumber(n+1)+1)*2;
printf("第%d天所剩桃⼦%d个n", n, num);
}
return num;
}
int main()
{
int num = getPeachNumber(1);
printf("猴⼦第⼀天摘了:%d个桃⼦。n", num);
return 0;
}
12.变量存储类别 !
12.1.⽣存周期划分存储⽅式
C语⾔根据变量的⽣存周期来划分,可以分为静态存储⽅式和动态存储⽅式。
静态存储⽅式:是指在程序运⾏期间分配固定的存储空间的⽅式。静态存储区中存放了在整个程序执⾏过程中都存在的变量,如全局变量。
动态存储⽅式:是指在程序运⾏期间根据需要进⾏动态的分配存储空间的⽅式。动态存储区中存放的变量是根据程序运⾏的需要⽽建⽴和释放的,通常包括:函数形式参数;⾃动变量;函数调⽤时的现
场保护和返回地址等。
12.2.存储类型划分
C语⾔中存储类别⼜分为四类:⾃动(auto)、静态(static)、寄存器的(register)和外部的(extern) ;
1. ⽤关键字auto定义的变量为⾃动变量,auto可以省略,auto不写则隐含定为“⾃动存储类别”,属于动态存储⽅式。
2. ⽤static修饰的为静态变量,如果定义在函数内部的,称之为静态局部变量;如果定义在函数外部,称之为静态外部变量。
注意:静态局部变量属于静态存储类别,在静态存储区内分配存储单元,在程序整个运⾏期间都不释放;静态局部变量在编译时赋初值,即注意
只赋初值⼀次;如果在定义局部变量时不赋初值的话,则对静态局部变量来说,编译时⾃动赋初值0(对数值型变量)或空字符(对字符变量)
1. 为了提⾼效率,C语⾔允许将局部变量的值放在CPU中的寄存器中,这种变量叫“寄存器变量”,⽤关键字register作声明。
注意:只有局部⾃动变量和形式参数可以作为寄存器变量;⼀个计算机系统中的寄存器数⽬有限,不能定义任意多个寄存器变量;局部静态注意
变量不能定义为寄存器变量。
1. ⽤extern声明的的变量是外部变量,外部变量的意义是某函数可以调⽤在该函数之后定义的变量。
#includ <stdio.h>
//来源:C语⾔与CPP编程
int main()
{
//定义外部局部变量
extern int x;
return 0;
}
int x=100;
13.内部函数外部函数 !
在C语⾔中不能被其他源⽂件调⽤的函数称为内部函数 ,内部函数由static关键字来定义,因此⼜被称为静态函数,形式为:
static [数据类型] 函数名([参数])
这⾥的static是对函数的作⽤范围的⼀个限定,限定该函数只能在其所处的源⽂件中使⽤,因此在不同⽂件中出现相同的函数名称的内部函数是没有问题的。
在C语⾔中能被其他源⽂件调⽤的函数称为外部函数 ,外部函数由extern关键字来定义,形式为:
extern [数据类型] 函数名([参数])
C语⾔规定,在没有指定函数的作⽤范围时,系统会默认认为是外部函数,因此当需要定义外部函数时extern也可以省略。 extern可以省略; 14.数组 数组:⼀块连续的,⼤⼩固定并且⾥⾯的数据类型⼀致的内存空间, 数组的声明:数据类型 数组名称[长度n]
1. 数据类型 数组名称[长度n] = {元素1,元素2,元素3,......};
2. 数据类型 数组名称[] = {元素1,元素2,元素3,......};
3. 数类类型 数组名称[长度n]; 数组名称[0] = 元素1;数组名称[1] = 元素2;...... 注意: 1、数组的下标均以0开始; 2、数组在初始化的
时候,数组内元素的个数不能⼤于声明的数组长度; 3、如果采⽤第⼀种初始化⽅式,元素个数⼩于数组的长度时,多余的数组元素初始化为0; 4、在声明数组后没有进⾏初始化的时候,静态(static)和外部(extern)类型的数组元素初始化元素为0,⾃动(auto)类型的数组的元素初始化值不确定。
15.数组遍历
#include <stdio.h>
int main()
{
int arr[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
int i;
for(i=0;i<10;i++)
{
printf("%dn",arr[i]);
}
return 0;
}
1. 数组的冒泡排序
冒泡排序的思想:相邻元素两两⽐较,将较⼤的数字放在后⾯,直到将所有数字全部排序。
1. 字符串与数组
在C语⾔中,是没有办法直接定义⼦字符串数据类型的,需使⽤数组来定义所要的字符串,形式如下:
char 字符串名称[长度] = "字符串内容";
char 字符串名称[长度] = {'字符串1','字符串2',....,'字符串n','0'};
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论