枣庄手机网站建设,wordpress图片不被收录,网站开发数据库连接失败,私人服装定制网站前言#xff1a; 每日一练系列#xff0c;每一期都包含5道选择题#xff0c;2道编程题#xff0c;博主会尽可能详细地进行讲解#xff0c;令初学者也能听的清晰。每日一练系列会持续更新#xff0c;暑假时三天之内必有一更#xff0c;到了开学之后#xff0c;将看学业情… 前言 每日一练系列每一期都包含5道选择题2道编程题博主会尽可能详细地进行讲解令初学者也能听的清晰。每日一练系列会持续更新暑假时三天之内必有一更到了开学之后将看学业情况更新。 5道选择题
1、执行下面程序正确的输出是
#includestdio.h
int x5,y7;
void swap()
{
int z;
zx;
xy;
yz;
}
int main()
{
int x3,y8;
swap();
printf(%d,%d\n,x,y);
return 0;
}
A.5,7 B.7,5 C.3,8 D.8,3 解析根据代码分析注意虽然首先定义了两个全局变量xy但我们依然可以将局部变量的名称作x,y 我们从main进入程序先在局部中定义xy为3和8swap函数的作用是将x和y的值进行交换z是实现它们交换的中间变量。但是但是要注意的一点是swap并没有传参更没有传实参也就是说交换xy是影响不到main函数中的它交换的仅仅只是全局变量xy 所以最后打印出来的结果为原来的数据也就是38选C 2、以下不正确的定义语句是 A: double x[5] {2.0, 4.0, 6.0, 8.0, 10.0}; B: char c2[] {\x10, \xa, \8}; C: char c1[] {1,2,3,4,5}; D: int y[53]{0, 1, 3, 5, 7, 9}; 解析\x后面的数代表着是十六进制的数而\或者是\0之后的数代表着是八进制的数而八进制数只能是0~7,B显然不对故选B 3、 test.c 文件中包括如下语句文件中定义的四个变量中是指针类型的变量为【多选】 define INT_PTR int*
typedef int* int_ptr;
INT_PTR a, b;
int_ptr c, d;
A.a B.b C.c D.d 解析根据宏定义的理解我们直接将INT_PTR给替换成int*,则为int*ab;故可以判断出a为指针变量b不是而typedef int* int_ptr相当于是给int*取了个叫int_ptr的类型是一个将int和*联合在一起的整体故cd为指针变量选ACD 4、 若给定条件表达式 (M)?(a):(a--) 则其中表达式 M A: 和(M0)等价 B: 和(M1)等价 C: 和(M!0)等价 D: 和(M!1)等价 解析:(M)?(a):(a--)的意思是M为真即执行a为假执行a--。这里M的含义便是M不为0M为真,M为0则为假。那么一步步分析A选项M0是M为0为真错。B选项M1是M为1为真错。C选项M!0即当M不为0时为真对。D选项M!1当M不等于1时为真错。综上所述答案为C 5、有如下定义语句则正确的输入语句是【多选】
int b;
char c[10]; A: scanf(%d%s,b,c); B: scanf(%d%s,b,c); C: scanf(%d%s,b,c); D: scanf(%d%s,b,c); 解析b是一个整型c是一个字符数组而只有数组的名字在9成9情况下代表着数组起始地址。而scanf的使用需要目标取地址然后根据地址对目标内容修改选项A在这里c不是单一的c故c此时不是首元素的地址而是首元素c效果和单个c一样。故A对。选项Bb没错c没错故B对。选项Cb错没取地址故C错。选项D和选项C犯了一样的错误故D错。选AB 编程题1
打印从1到最大的n位数_牛客题霸_牛客网 static int arr[100001];
int* printNumbers(int a,int*x)
{
int b 1;
while (a)
{
b * 10;
a--;
}
int c 0;
for (c 1; c b; c)
{
arr[c - 1] c;
}*x--b;
return arr;
}
编程题2
计算日期到天数转换_牛客题霸_牛客网 这道题简单解法其实将每个月的天数枚举出来然后根据当前月份向前累加满月的天数然后再加上当前月所在的天数。最终考虑平闰年的2 月份区别是否增加一天。 其中需要注意的是平年和闺年的判断而且是闺年的月份大于2 的时候也就是 2月走完总天数才能加1比如2000年2月18日虽然是闰年但是2月都没走完那是不能加上闰年多出的一天的)
#includestdio.h
int main()
{
int year 0;
int month 0;
int day 0;
scanf(%d %d %d, year, month, day);
int arr1[13] { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
int arr2[13] { 0,31,29,31,30,31,30,31,31,30,31,30,31 };
int sum 0;
int i 0;
for (i 1; i month; i)
{
if (year % 400 0 || (year % 4 0 year % 100 ! 0))
{
sum arr2[i];
}
else
{
sum arr1[i];
}
}
sum day;
printf(%d, sum);
}
好了今天的练习到这里就结束了感谢各位友友的来访祝各位友友前程似锦O(∩_∩)O