C语言练习题——指针大小的比较

推荐大家使用牛客网刷题    点击跳转刷题网站进行注册学习

     这次给大家推荐个宝藏网站,牛客网!!!,牛客网的题目质量是真的高,即便不能考到一模一样的,但基本抓牢了大厂们最爱考的那些题型和原理。所以我一直觉得即便是再拉胯的小白,只要好好用牛客网,认认真真准备、刷题。一波操作下来,面对各种校招也绝对不会手足无措的,说不定也能和我一样如愿以偿。牛客网的优点在于纯中文网站,不用担心各种术语,对于每一个题目,都给出了顶层的框图以及接口定义,也给出题解思路,可以说对初学者极其友好。

1.关于static说法不正确的是:( ) 

A.static可以修饰局部变量

B.static可以修全局变量

C.static修饰的变量不能改变

D.static可以修饰函数

2.下面代码的结果是什么?( )

#include <stdio.h>
int sum(int a)
{    
    int c = 0;    
    static int b = 3;    
    c += 1;    
    b += 2;    
    return (a + b + c);
}
int main() 
{     
    int i;    
    int a = 2;     
    for (i = 0; i < 5; i++)    
    {          
          printf("%d,", sum(a));    
    }  
}  

A. 6,8,10,12,14

B.8,10,12,14,16

C.10,12,14,16,18

D.12,14,16,18,20

3.关于指针说法正确的是:( )

A.sizeof(char*)大小一定是1

B.指针变量是个变量,用来存放地址

C.指针变量的大小都是4个字节

D.指针不是变量

4.编程题

根据以下公式计算m的值。

 其中 max3函数为计算三个数的最大值,如: max3(1, 2, 3) 返回结果为3

例如:输入:1 2 3输出:0.30

5.编程题

从键盘输入5个人的身高(米),求他们的平均身高(米)。一行,连续输入5个身高(范围0.00~2.00),用空格分隔。一行,输出平均身高,保留两位小数。

例如:输入:1.68 1.75 1.82 1.60 1.92输出:1.75

答案解析

 

//4.编程题
#include<stdio.h>
int max3(int a, int b, int c)
{
    int max = a;
    if(max < b)
        max = b;
    if(max < c)
        max = c;
    return max;
}
int main()
{
    int a, b, c;
    scanf("%d %d %d", &a, &b, &c);
    int x = max3(a+b, b, c);
    int y = max3(a, b+c, c);
    int z = max3(a, b, b+c);
    float m = (float) x / (y + z);
    printf("%.2f", m);
}

//5.编程题
#include <stdio.h>
 
//计算平均值
float ave(float arr[])
{
    float sum = 0.0;
    int i = 0;
    while(i < 5)
    {
        sum += arr[i]; //身高相加
        i++;
    }
     
    return sum/5.0;
}
 
int main()
{
    float arr[5] = {0};
    int i = 0;
    for(i = 0; i < 5; i++)
    {
        scanf("%f ", &arr[i]);  //输入身高
    }
    float aver = ave(arr);
    printf("%.2f", aver);
     
    return 0;
}

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bit..

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值