除了下面的,都可以使用auto :声明自动变量 一般不使用
double :声明双精度变量或函数
int: 声明整型变量或函数
struct:声明结构体变量或函数
break:跳出当前循环
else :条件语句否定分支(与 if 连用)
long :声明长整型变量或函数
switch :用于开关语句
case:开关语句分支
enum :声明枚举类型
register:声明积存器变量
typedef:用以给数据类型取别名(当然还有其他作用)
char :声明字符型变量或函数
extern:声明变量是在其他文件正声明(也可以看做是引用变量)
return :子程序返回语句(可以带参数,也看不带参数)
union:声明联合数据类型
const :声明只读变量
float:声明浮点型变量或函数
short :声明短整型变量或函数
unsigned:声明无符号类型变量或函数
continue:结束当前循环,开始下一轮循环
for:一种循环语句(可意会不可言传)
signed:生命有符号类型变量或函数
void :声明函数无返回值或无参数,声明无类型指针(基本上就这三个作用)
default:开关语句中的"其他"分支
goto:无条件跳转语句
sizeof:计算数据类型长度
volatile:说明变量在程序执行中可被隐含地改变
do :循环语句的循环体
while :循环语句的循环条件
static :声明静态变量
if:条件语句
①.)*q是指针所指向的一个字符,所以把一个字符串赋值给一个字符,显然是错误的.
char
*strcpy(
*strDest,
const
*strSource
);
*strncpy(
*strSource,
size_t
count
从以上分析得出几点结论:
①.)C语言对数据类型不会进行强制识别,字符型数据可以赋值为数字,字符指针可以指向数字,指针本身也会有指针.
Any
more
problems?
可以使用C语言标准库中的pow函数来表示q的n次方.
原型:double pow( double x, double y );
用法:#include math.h
功能:计算x的y次幂.
说明:x应大于零,返回幂指数的结果.
#include?stdio.h
#include?math.h
int?main()
{
printf("%lf\n"?,?pow(q,n));
return?0;
}
C语言中,函数调用的一般形式为:函数名(实际参数表)
对无参函数调用时则无实际参数表.实际参数表中的参数可以是常数,变量或其它构造类型数据及表达式.各实参之间用逗号分隔.
在C语言中,可以用以下几种方式调用函数:
①.、函数表达式:函数作为表达式中的一项出现在表达式中,以函数返回值参与表达式的运算.这种方式要求函数是有返回值的.例如:z=max(x,y)是一个赋值表达式,把max的返回值赋予变量z.
C语言输入输出函数有很多,标准I/O函数中包含了如下几个常用的函数:
scanf,printf,getc,putc,getchar,putchar,gets,puts,fgets,fputs,fgetc,fputc,fscanf,fprintf等.
int
getc(FILE
*fp)
getc主要是从文件中读出一个字符.常用的判断文件是否读取结束的语句为
(ch
=
getc(fp))
!=
EOF.EOF为文件结束标志,定义在stdio.h中,就像EXIT_SUCCESS,EXIT_FAILURE定义在stdlib.h中一样,文件也可以被理解为一种流,所以当fp为stdin时,getc(stdin)就等同于getchar()了.
putc(int
ch,FILE
putc主要是把字符ch写到文件fp中去.如果fp为stdout,则putc就等同于putchar()了.
getchar(void)
getchar主要是从标准输入流读取一个字符.默认的标准输入流即stdio.h中定义的stdin.但是从输入流中读取字符时又涉及到缓冲的问题,所以并不是在屏幕中敲上一个字符程序就会运行,一般是通过在屏幕上敲上回车键,然后将回车前的字符串放在缓冲区中,getchar就是在缓冲区中一个一个的读字符.当然也可以在while循环中指定终止字符,如下面的语句:while
((c
getchar())
'#')这是以#来结束的.
putchar(int
ch)
putchar(ch)主要是把字符ch写到标准流stdout中去.
*
gets(char
*str)
gets主要是从标准输入流读取字符串并回显,读到换行符时退出,并会将换行符省去.
puts(char
puts主要是把字符串str写到标准流stdout中去,并会在输出到最后时添加一个换行符.
*fgets(char
*str,
num,
FILE
str是存放读入的字符数组指针,num是最大允许的读入字符数,fp是文件指针.fgets的功能是读一行字符,该行的字符数不大于num-1.因为fgets函数会在末尾加上一个空字符以构成一个字符串.另外fgets在读取到换行符后不会将其省略.
fputs(char
file
fputs将str写入fp.fputs与puts的不同之处是fputs在打印时并不添加换行符.
fgetc(FILE
fgetc从fp的当前位置读取一个字符.
fputc(int
ch,
fputc是将ch写入fp当前指定位置.
fscanf(FILE
*fp,
*format,
输入列表)
fscanf按照指定格式从文件中出读出数据,并赋值到参数列表中.
fprintf(FILE
输出列表)
fprintf将格式化数据写入流式文件中.
数据块读写函数
fread
(buffer,size,count,fp);
fwrite(buffer,size,count,fp);
参数说明:
buffer:是一个指针.
对fread
来说,它是读入数据的存放地址.
对fwrite来说,是要输出数据的地址(均指起始地址).
size:
要读写的字节数.
count:
要进行读写多少个size字节的数据项.
fp:
文件型指针.
int k;
long r;
k=p*p; //K为p的平方
return r;返回R的值
long c=1;
int i;
for(i=1;i=q;i◆◆) //用循环求阶乘
c=c*i;//C为q的阶乘
return c;返回C的值
main()
long s=0;
printf("\ns=%ld\n",s);