当前位置: 首页 > news >正文

鹏哥C语言95---第17次作业:指针初阶+结构体

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
//------------------------------------------------------------------------------------------第17次作业,指针初阶
//-----------------------------------------------------------------------------------------------1.单选.结构体
//有以下代码:

struct student
{int num;char name[32];float score;
}stu; // stu 是变量

则下面的叙述不正确的是:( D )
A.struct 是 结构体类型的关键字
B.struct student是用户定义的结构体类型
C.num, score都是 结构体成员名
D.stu是用户定义的结构体类型名 --------变量名

//-----------------------------------------------------------------------------------------------2.单选
结构体访间成员的操作符不包含:( D )
A. .操作符
B . - > 操作符
C. *解引用操作符
D. sizeof

//-----------------------------------------------------------------------------------------------3.单选
关于二级指针描术描述正确的是:( B )
A.二级指针也是指针,只不过比一级指针更大
B.二级指针也是指针,是用来保存一级指针的地址
C.二级指针是用来存放数组的地址
D.二级指针的大小是4个字节----- 4/8

//-----------------------------------------------------------------------------------------------4.单选
下面哪个是指针数组( A )// 指针数组,存放指针的数组
A. int* arr[10];
B. int * arr[]; ---不指定大小 ×
C. int ** arr; ---二级指针
D. int (*arr)[10]; ---arr是一个数组指针,指向数组的指针

//-----------------------------------------------------------------------------------------------5.单选
下面程序要求输出结构体中成员 a 的数据,以下不能填入横线处的内容是( B )

struct S
{int a;int b;
};
int main()
{struct S a, *p = &a;// struct S a// struct S* p = &a;a.a = 99;printf("%d\n",                       );return 0;
}

A. a.a
B. *p.a // . 的优先级 高于 * ,所以不行
C. p->a
D.(*p).a
//-----------------------------------------------------------------------------------------------6.单选
 下列程序输出结果 wang

struct stu
{int num;char name[10];int age;
};void fun(struct stu* p)
{printf("%s\n", (*p).name); //  wangreturn;
}int main()
{struct stu students[3] ={ {9801,"zhang",20},{9802,"wang",19},{9803,"zhao",18}};fun(students + 1); //数组名是首元素地址return 0; 
}

//-----------------------------------------------------------------------------------------------7.编程:喝汽水
喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以喝多少汽水(编程实现)。

int main()
{int money = 0;scanf("%d", &money); // 多少元   20int total = money;  //花钱喝的汽水数量int empty = money; //空瓶数//置换while (empty>=2){total = total + empty / 2;empty = empty / 2 + empty % 2;}printf("%d\n", total);//发现规律if (money > 0)printf("%d\n", 2 * money - 1);elseprintf("0");return 0;
}


http://www.mrgr.cn/news/59845.html

相关文章:

  • 最短路径问题的经典算法——Dijkstra[被证明具有普遍最优性(Universal Optimality)]
  • JavaCV 之均值滤波:图像降噪与模糊的权衡之道
  • Python之Excel自动化处理(三)
  • ReactNative 启动应用(2)
  • Java的访问修饰符
  • 快速入门HTML
  • dd命令简介
  • FreeRTOS 6:任务创建函数xTaskCreate分析
  • 用canvas对图片压缩
  • 零基础Java第十一期:类和对象(二)
  • 面试题:ABCD四个线程,A线程最后执行
  • 「C/C++」C++标准库之#include<fstream>文件流
  • Grid View 网格视图
  • 一文带你搞懂RabbitMQ 如何保证消息不丢失
  • 为什么STM32在构建工程时候,没有用到core_cm3.c 只用到了core_cm3.h?
  • 使用AVPlayer进行音频播放开发基础设计
  • 安全运营 -- 监控linux命令history
  • [LVGL] 自定义控件例子
  • Meta分析(荟萃分析)
  • 数据挖掘(二)