目录
前言
把初识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 题(编程题)
BC131-kiki学程序设计基础
BC131-kiki学程序设计基础https://www.nowcoder.com/practice/07e75d2b212b4a11b1525863ca3af02c?tpId=107&&tqId=33412&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking
点击题目链接,做题
第 5 题(编程题)
BC123-小乐乐找最大数
BC123-小乐乐找最大数https://www.nowcoder.com/practice/ae6a21920cac4f9184c8ecfcc87f89b9?tpId=107&&tqId=33404&rp=1&ru=/ta/beginner-programmers&qru=/ta/beginner-programmers/question-ranking
点击题目链接,做题
第 6 题(编程题)
BC27-计算球体的体积
点击题目链接,做题
第 7 题(编程题)
BC25-计算体重指数
点击题目链接,做题
第1题答案解析
本题主要考察static的特性
1. static修饰变量
a. 函数中局部变量:
声明周期延长:该变量不随函数结束而结束
初始化:只在第一次调用该函数时进行初始化
记忆性:后序调用时,该变量使用前一次函数调用完成之后保存的值
存储位置:不会存储在栈上,放在数据段
b. 全局变量
改变该变量的链接属性,让该变量具有文件作用域,即只能在当前文件中使用
c. 修饰变量时,没有被初始化时会被自动初始化为0
2. static修饰函数
改变该函数的链接属性,让该函数具有文件作用域,即只能在当前文件中使用
A:正确,原因参考上述注解
B:正确,原因参考上述注解
C:错误,const修饰的变量不能改变
D:正确,原因参考上述注解
因此:选择C
博主的这篇文章有讲到哦!!自取,链接放这里啦!!
static讲解噢,点击这里https://blog.csdn.net/m0_67995737/article/details/124502302
第2题答案解析
本题主要考察static修饰局部变量的特性,static修饰局部变量,该变量不会随函数的结束而消失,并且只在第一次调用时进行初始化,后序调用该函数时,使用的都是上次结束前该变量的值。
第一次循环:a=2 b=5 c=1 a+b+c=8
第二次循环:a=2 b=7 c=1 a+b+c=10
第二次循环:a=2 b=9 c=1 a+b+c=12
第二次循环:a=2 b=11 c=1 a+b+c=14
第二次循环:a=2 b=13 c=1 a+b+c=16
因此:选择B
第3题答案解析
答案解析:本题主要考察指针的相关特性
A:错误,指针是一种复合数据类型,指针变量内容是一个地址,因此一个指针可以表示该系统的整个地址集合, 故按照32位编译代码,指针占4个字节,按照64位编译代码,指针占8个字节(注意:不是64位系统一定占8个字 节,关键是要按照64位方式编译)
B:正确
C:错误,参考A选项解释
D:错误,该条描述比较模糊 指针可以认为是一种数据类型,也可以认为是定义出来的指针变量
因此,选择B
以下为编程题目,答案不唯一,更多答案请关注牛客题目的相应位置!!!
第4题答案解析
#include<stdio.h>
int main(){
printf("printf(\"Hello world!\\n\");\n");
printf("cout << \"Hello world!\" << endl;");
return 0;
}
第5题答案解析
#include<stdio.h>
int main()
{
int a,b,c,d;
scanf("%d %d %d %d",&a,&b,&c,&d);
int x=a>b?a:b;
int y=c>d?c:d;
printf("%d\n",x>y?x:y);
return 0;
}
第6题答案解析
#include<stdio.h>
#include<math.h>
int main()
{
float n;
scanf("%f", &n);
double V = 4 * 3.1415926 * pow(n, 3)/3;
printf("%.3f\n", V);
return 0;
}
第7题答案解析
#include<stdio.h>
#include<math.h>
int main()
{
int weight,height;
scanf("%d %d",&weight,&height);
float h=height/100.0;
double BMI=weight/pow(h,2);
printf("%.2f\n",BMI);
return 0;
}
本次的作业就到这里了,有不理解的地方或者需要改正的地方麻烦在评论区留言或者私聊我噢!看到了就回!!
感谢各位的阅读!谢谢大家!