知识点
1、 局部变量:一般将定义在函数中的变量称为局部变量,其只能在函数内部使用。
全局变量:定义在全局作用域中的变量,即函数外的变量,称之为全局变量,全局变量的生命周期随程序启动而生,随程序结束而消亡,在任何函数中都可以使用。
注意:全局变量使用起来方便,但为了防止冲突和安全性,尽量避免定义全局变量。
2、不允许在同一个作用域中定义多个相同名称的变量。
3、允许在不同的作用域中定义多个相同名称的变量。
4、不同作用域中定义的变量、在访问时采用就近原则。
5、C语言的数据类型包括内置的数据类型和自定义的数据类型;内置的数据类型包括:char,short,int 等;自定义的数据类型包括:struct,enum等
6、EOF end of fire,文件的结束标志
7、strlen 计算字符串的大小,遇见'\0'才结束
8、\b 转义字符,退格
9、关键字不能自己定义,也不能作为变量,因为关键字有自己的特殊含义。
10、define不是关键字,#define中的define是预处理指令
11、两个函数的较大值,用函数,x>y return x,这种写法比用第三个变量来当中间值来写要简单;
用函数的话,也可以直接返回三目操作符。不用函数的话,if(x>y) max=x;三目操作符也可以。
12、当进行加减乘除的时候,类型不一样的话,记得要进行类型转换,以及自动舍弃小数点后的问题。
编程题
(1)从键盘输入5个学生的成绩(整数),求他们的平均成绩(浮点数,保留一位小数)。输入描述:一行,连续输入5个整数(范围0~100),用空格分隔。输出描述:一行,输出5个数的平均数(保留一位小数)
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int e = 0;
double f = 0;
scanf("%d %d %d %d %d", &a, &b, &c, &d, &e);
f = (double)(a + b + c + d + e) / 5;
printf("%.1lf", f);
return 0;
}
#include <stdio.h>
int main()
{
int i = 0;
int sum = 0;
int input = 0;
for(i=0; i<5; i++)
{
scanf("%d", &input);
sum += input;
}
printf("%.1f\n", sum/5.0);
return 0;
(2)反向输出四位数
#include <stdio.h>
int main()
{
int a = 0;
int b = 0;
int c = 0;
int d = 0;
int e = 0;
scanf("%d", &a);
b = a % 10;
c = (a / 10) % 10;
d = (a / 100) %10;
e = a / 1000;
printf("%d%d%d%d", b, c, d, e);
return 0;
}
反向输入常用思想,八进制、二进制数字,可以%2/2,%8/8
#include <stdio.h>
int main()
{
int n = 0;
scanf("%d", &n);//1234
while(n)
{
printf("%d", n%10);
n = n/10;
}
return 0;
}