初识C语言习题以及知识点

知识点

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;

}

猜你喜欢

转载自blog.csdn.net/m0_57388581/article/details/125566430