五道选择题:
1、程序运行的结果是()
#define ADD(x) x+x
#include<stdio.h>
int main()
{
int m = 1, n = 2, k = 3;
int sum = ADD(m + n) * k;
printf("sum = %d", sum);
}
A、 sum=9 B、 sum=10 C、 sum=12 D、 sum=18
2、以下程序的输出的结果是()
#include<stdio.h>
void incre()
{
static int x = 1;
x *= x + 1;
printf("%d ", x);
}
int main()
{
int i;
for (i = 1; i <= 2; i++) incre();
}
A、 3 3 B、 2 2 C、 2 6 D、 2 5
3、以下程序的输出结果是哪一项()
#include <stdio.h>
int main()
{
int a[][3] = { 1,2,3,4,5,6,7,8,9,10,11,12 }, * p[4], i;
for (i = 0; i < 4; i++)
p[i] = &a[i][3];
printf("%d\n", p[2][2]);
}
A、 输出项不合法 B、6 C、8 D、12
4、以下关于结构体与共用体的说法,其中正确的是()
A、共用体同一个内存段可以来存放几种不同类型的成员,但在某一时刻只能存放一个成员。
B、结构体变量所占的内存长度等于最长的成员的长度,共用体变量所占内存长度是各成员占的内存长度之和。
C、共用体每个成员分别占有自己的内存单元。
D、结构体类型可以出现在共用体类型的定义中,但共用体类型不能出现在结构体类型定义之中。
5、下列程序段的输出结果为()
#include<stdio.h>
int main()
{
int arr[] = { 6,7,8,9,10 };
int* ptr;
ptr = arr;
*(ptr + 2) += 2;
printf("%d,%d\n", *ptr, *(ptr + 2));
}
A、8,10 B、6,8 C、7,9 D、6,10
编程题1:
力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
int lengthOfLastWord(char* s) {
int i = 0;
int count = 0;
//计数器,计算最后一个单词的长度
int min = 0;
//存储器,避免最后一个单词后面有空格,将计数器清零
for (i = 0; s[i] != '\0'; i++)
{
if (s[i] == ' ')
{
count = 0;
//一旦遇到空格清空计数器
}
else
{
count++;
min = count;
}
}
if (count == 0)
//当计数器为0,不是最后一个单词后面有空格
//就是本身就全为空格,本身就全为空格,count也为0,不影响
{
count = min;
}
return count;
}
编程题2:
快乐的暑假马上就结束了,最后来道简单题,放松一下
int singleNumber(int* nums, int numsSize){
int i=0;
int a=0;
for(i=0;i<numsSize;i++)
{
a^=nums[i];
}
return a;
}
好了,今天的练习到这里就结束了,感谢各位友友的来访,祝各位友友前程似锦O(∩_∩)O