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

C语言王道练习题第七周两题

第一题

Description

输入一个学生的学号,姓名,性别,用结构体存储,通过 scanf 读取后,然后再 通过 printf 打印输出

Input

学号,姓名,性别,例如输入 101 xiongda m

Output

输出和输入的内容一致,如果输入的是 101 xiongda m,那么输出也是 101 xiongda m

代码

#include <stdio.h>typedef struct student{int num;char name[20];char sex;
}stu;
int main() {stu s;
//    name数组变量是一个字符数组,它本身就是一个指向字符数组开头的指针。因此,不需要使用取地址运算符&来获取name数组的地址。scanf("%d%s %c",&s.num,s.name,&s.sex);//%c不排除空格,scanf()函数不加\nprintf("%d %s %c\n",s.num,s.name,s.sex);return 0;
}

注意:

字符数组本身就是一个指向字符数组开头的指针。因此,不需要使用取地址运算符&来获取数组的地址。

第二题

Description

使用 C++的引用,注意提交时把代码选为 C++;在主函数定义字符指针 char *p, 然后在子函数内 malloc 申请空间,通过 fgets 读取字符串,然后在主函数中进 行输出;要求子函数使用 C++的引用,注意在 C++中从标准输入读取字符串, 需要使用 fgets(p,100,stdin)

Input

输入一个字符串,例如 I love C languag

Output

如果输入的是 I love C language,那么输出也是 I love C language

代码

#include <stdio.h>
#include <stdlib.h>void modify_pointer(char *&p)//改变主函数p,加引用
{p = (char*)malloc(100);//申请空间fgets(p, 100, stdin);//如果使用 fgets 传入的是一个指针变量,中间参数是指针指向的空间大小
}
int main()
{char* p=NULL;modify_pointer(p);puts(p);free(p);return 0;
}

结果:

http://www.lryc.cn/news/287701.html

相关文章:

  • 某马头条——day11+day12
  • springboot实现aop
  • Golang 中高级工程师学习笔记
  • USB-C接口给显示器带来怎样的变化?
  • 写一份简单的产品说明书:格式和排版建议
  • 【Python学习】Python学习21- 正则表达式(1)
  • Docker 和 Kubernetes:容器化时代的崛起与演变
  • 美易官方京东养车回应索赔事件:推动行业健康发展并携手品牌商家加码补贴
  • 深度学习与图像描述生成——看图说话(3)
  • [SAP ABAP] ABAP编程中SY-SUBRC值的含义
  • 测试模型分类
  • mavros和PX4中的海拔高与椭球高转换
  • 洛谷刷题-【入门2】分支结构
  • 文件包含技术总结
  • Docker搭建私有仓库
  • 【计算机网络】【练习题】【新加坡南洋理工大学】【Computer Control Network】
  • 【学习笔记】CF1349F2 Slime and Sequences (Hard Version)
  • HarmonyOS 鸿蒙应用开发( 六、实现自定义弹窗CustomDialog)
  • # Java NIO(一)FileChannel
  • [嵌入式软件][启蒙篇][仿真平台] STM32F103实现串口输出输入、ADC采集
  • Deepin基本环境查看(四)【硬盘/分区、文件系统、硬连接/软连接】
  • JS之打地鼠案例
  • Kubernetes入门
  • EtherNet/IP开发:C++搭建基础模块,EtherNet/IP源代码
  • Django(九)
  • 解决Android Studio Unexpected tokens (use ; to separate expressions on the same line)
  • 【云原生】Docker网络模式和Cgroup资源限制
  • 实战:加密传输数据解密
  • 前端开发提高效率的两大工具
  • 探索设计模式的魅力:深入理解面向对象设计的深层原则与思维