C练习题_14

一、单项选择题(本大题共 20小题,每小题 2分,共 40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。)

  1. 以下叙述不正确的是()

A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面

2.以下C语言用户标示符中,不合法的是()

A._1
B. Aa
Bc
C. a_b
D. a-b

3.编写好的 C 程序一般需要经过编译、连接、调试等步骤后才能运行成功。连接后产生的文件的后缀名一般是()

A…c
B…obj
C…exe
D…h

4,下面4个选项均是合法整型常量的选项是()

A. 160 xf 011
B. Oxcdf 018 Oxel
C. 123 2.le+8 3.14
D. -0x88g 2e5 32467

  1. 达式5>3>1 值是( )。

A.0
B.1
C.3
D.表达式语法错误

6.设a为整型变量,不能正确表达数学关系:10<a<15的C语言表达式是()

A.10<a<15
B.a1illa12 ll a13 Il a14
C. a>10 && a<15
D. !(a<=10) &&!(a>=15)

7.定义int score = 75;则表达式 80 < score < 90 的值是()

A.1
B.0
C. true
D. false

8.下列运算符优先级最高的是()。

A.=
B.%
C.&&
D.<=

9.假设有变量定义如下int a,k;则以下哪条语句不能确保将变量k的值变为

A.k=a±a+1;
B.kk:
C. k = k >> 16;
D. k=k &-k;

10.字符串"\128"ABC"\"的长度是()

A.1
B.8
C.5
D.3

  1. 下列程序段的输出结果是()
    int main()
    {
    int x = 1, a = 0, b = 0;
    switch(x){
    case 0: b++;case 1: a++;
    case 2: a++; b++;
    }
    printf(“a=%d,b=%dln”,a,b);
    return 0;
    }
    A.a=2,b=1
    B.a=1,b=1
    C. a=1,b=0
    D. a=2,b=2

12.设i,x都是int类型,则下面的for循环体可执行多少次(for (i=0, x=0;i<= 9 && x!= 876; i++))。printf(“*”);

A.9次
B.10次
C. 876次
D.无限循环

13.若有定义语句:int a[3][6];,按在内存中的存放顺序,a数组的第10个元素是()。

A. a[0][4]
B. a[1][3]
C. a[0][3]
D.a[1][4]

14,若有定义:int a[2][3];以下选项中对数组元素正确引用的是()

A. a[2][0]
B.a[2][3]
C. a [0][3]
D. a[1>2][1]

15,下面程序段运行时输出结果是()char s[18]= “a book! “;printf(”%.4s”,s);

A. a book!
B. a book!
C. a bo
D.格式描述不正确,没有确定输出

  1. 以下叙述中不正确的是()。

A.在不同的函数中可以使用相同名字的变量
B.函数中的形式参数是局部变量
C.在一个函数内定义的变量只在本函数范围内有效
D.在一个函数内的复合语句中定义的变量在本函数范围内有效

17,对函数形参的说明有错误的是()。

A. int a(int x],int n)
B. int a(int *x,int n)
C. int a(int x]], n)
D. int a(int x,int n)

  1. 下列语句定义 x 为指向 int 类型变量 a 的指针,正确的是()

A. int a, *x= a;
B. int a, *x= &a;
C. int *x= &a, a;
D. int a, x= a;

19.若有以下宏定义:
#define N 2
#define Y(n) ((N+1)n)则执行语句“z=2(N+Y(5));”后的结果是()

A.语句有错误
B.z=34
C. z=70
D.z 无定值

20.若有以下语句,则下面表达式的值为1002的是()
struct student
{ int age;
int num;};
struct student stu(3)=((1001,20),(1002,19),(1003,2));
struct student *p;
p=stu;

A. (p++)->num
B. (p++)->age
C. (p).num
D.(
++p).age

二、程序阅读题(本大题共5小题,每小题6分,共30分。请将程序的运行结构填写在答题纸的相应位置上。
1_______

#include <stdio.h>#define MOD(a, b) a % bvoid main() {int x = 4, y = 15, z;z = MOD(y, x + 2);printf("%d\n", z++);
}}

2__________

#include <stdio.h>
int func(int a, int b) {return (a +b);) 
void main()int x=2, y =5, z=8,r, r = func (func (x, y), z); printf ("%d\n", r);

3_________

#include <stdio.h>union memb {float v;int n;char c;
};int main() {union memb tag, Sval;tag.n = 37;Sval = tag;printf("The value of Sval is: %d\n", Sval.n);return 0;
}

4__________

#include <stdio.h>void fun(int *s, int nl, int n2) {int i, j, t;i = nl;j = n2;while (i < j) {t = *(s + i);*(s + i) = *(s + j);*(s + j) = t;i++;j--;}
}int main() {int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 0};int i, *p = a;fun(p, 0, 2);fun(p, 5, 9);fun(p, 0, 9);for (i = 0; i < 10; i++) {printf("%d ", *(a + i));}printf("\n");return 0;
}

5________

#include <stdio.h>
int main()
{char str[80];
scanf("%s",str);
printf("%s",str);return 0;}//abcd12345 xyz

三、程序填空题(共40分。请将答案填写在答题纸的相应位置上。)

1,程序功能:输出所给的一些字符串中最小的字符串。

#include <stdio.h>
#include <string.h>
int main(){
char "all={"bag","good"."This","are","Zoo","park"); char*min;
int i;
min=______________;
for(i=1;i<6;i++)
if(stremp(__________)<0) min=a[i};
printf("%\n",_______); 
return 0;}

2,输入一个正整数n,再输入n个学生的姓名和百分制成绩,将其转换为两级制成绩后输出。要求定义和调用函数setgrade(stu, n),其功能是根据结构数组stu中存放的学生的百分制成绩score,将其转换为两级制成绩,并赋给grade。百分制成绩到两级制成绩的转换规则:大于或等于60分为P,否则为F。

#include<stdio.h>
#define MAXN 100
struct student{
char name[20];
int score;
char grade;
};
void set_grade( struct student *p, int n);int main(){int i, n;struct student stu[MAXN];scanf("%d", &n);for(i = 0; i<n; i++){scanf("%s%d",stu[i].name,&stuli].score);}set_grade(stu, n);for(i= 0; i<n; i++)printf("%s %cln", stuli].name, stu[i].grade); return 0;}void set_grade(struct student *p, int n){struct student *q = p + n - 1;while(_______){if(________)___________;else__________;p++;}}

四、编程题(本大题共3小题,每小题15分,共45分。请在答题纸的相应位置上作答。)
1.编写程序读入N个学生的百分制成绩,统计等级制成绩的分布(即各等级的人数)。百分制成绩到等级制成绩的转换规则:大于等于 90分为 A;小于90且大于等于80为B;小于80且大于等于70为C;小于 70 且大于等于60为D;小于60为E。

  1. 编写程序,输出空心菱形。
    在这里插入图片描述
    3.红星商场新进商品若干,请帮助他们进行统计。下面给出了main)函数,请将其他函数补充完整,即写出 void readprice(float price[8]); float averPrice(float price[8]): float highPrice(float price8)float lowePrice(float price[8]; void prtprice(float price[8].foat ave);函数的定义。
    #include <stdio.h>
    void readprice(float price[8); /输入商品的价格/
    float averPrice(float price[8); /计算商品的平均价格/float highPrice(float price[8]😕找出最高价的商品/foat lowePrice(float price[8)😕找出最低价的商品/void prtprice(float price[8].foat ave)😕输出高于平均价格的商品/
    int main){
    float price[8]:
    float average,highestP,lowestP;readprice(price): /输入商品的价格/
    average=averPrice(price); /计算商品的平均价格/highestP=highPrice(price); /找出最高价的商品/lowestP=lowePrice(price); /找出最低价的商品/printf(“The highest Price=%6.20n”,highestP); printf(“the lowest Price=%6.20n”,lowestP); printf(“The average Price=%6.2fn”,average);
    prtprice(price,average); /输出高于平均价格的商品/
    return 0;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/152441.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高版本Vivado和Linux 4.x内核移植Digilent Driver

移植环境 Vivado 2022.2Ubuntu 22.04petalinux 2022.2Linux内核4.14&#xff08;xilinx-linux-2018.3&#xff09;linux-digilent 主要问题 https://github.com/Digilent/linux-digilent 这些驱动支持Linux kernel release 4.x&#xff0c;然而和Vitis 2022.2 套件对应的内核…

buildadmin+tp8表格操作(8) 表格下方添加 合计行

表格的下方可以自定义添加一个合计行&#xff0c;如果有其它的需求&#xff0c; 我们可以添加我们自已需要的行&#xff0c; 并不局限于合计行 以上就可以给表格的最下方添加一个合计行了 完整代码如下 <template><div class"default-main ba-table-box"&…

AVL树你需要了解一下

AVL树介绍 AVL树是一种自平衡二叉查找树&#xff0c;它得名于发明者G.M.Adel’son-Vel’skii和E.M.Landis。AVL树的特点是任何节点的两个子树的高度最大差别为1&#xff0c;因此它也被称为高度平衡树。在AVL树中&#xff0c;每个节点的平衡因子只有-1、0、1三种&#xff0c;通…

人工智能给我们的生活带来了巨大的影响?

1. 人工智能从哪些方面给我们带来了影响&#xff1f; 人工智能出现&#xff0c;极大地影响了人类的生活&#xff0c;下面是人工智能所影响的领域&#xff1a; 1. 日常生活 智能家居: AI驱动的设备&#xff0c;如智能扬声器、灯光、恒温器&#xff0c;正在改变我们与家居环境的…

【鸿蒙最新全套教程】<HarmonyOS第一课>1、运行Hello World

下载与安装DevEco Studio 在HarmonyOS应用开发学习之前&#xff0c;需要进行一些准备工作&#xff0c;首先需要完成开发工具DevEco Studio的下载与安装以及环境配置。 进入DevEco Studio下载官网&#xff0c;单击“立即下载”进入下载页面。 DevEco Studio提供了Windows版本和…

文件上传漏洞(CVE-2022-23043)

简介 CVE-2022-23043是一个与Zenario CMS 9.2文件上传漏洞相关的安全漏洞。该漏洞被定义为文件的不加限制上传&#xff0c;攻击者可以利用这个漏洞上传webshell以执行任意命令。利用这个漏洞的攻击者暂无特定情况。要利用此漏洞&#xff0c;攻击者首先需要访问Zenario CMS的管…

Django 路由配置(二)

一、路由 就是根据用户请求的URL链接来判断对应的出来程序&#xff0c;并返回处理结果&#xff0c;也是就是URL和django的视图建立映射关系. 二、Django请求页面的步骤 1、首先Django确定要使用的根URLconf模块&#xff0c;通过ROOT_URLCONF来设置&#xff0c;在settings.py配置…

服务器数据恢复—OCFS2下raid5磁盘损坏导致阵列崩溃的数据恢复案例

服务器数据恢复环境&#xff1a; IBM某型号存储&#xff0c;6块sas硬盘组建一组raid5&#xff0c;划分一个lun分配给Linux服务器并格式化为OCFS2文件系统&#xff0c;共享给虚拟化使用&#xff0c;存放的数据包括24台liunx和windows虚拟机、压缩包文件和配置文件。 服务器故障…

学习笔记6——垃圾回收

学习笔记系列开头惯例发布一些寻亲消息 链接&#xff1a;https://baobeihuijia.com/bbhj/contents/3/190801.html java垃圾回收&#xff08;stop the world&#xff09; 专注于堆和方法区的垃圾回收&#xff0c;年轻代&#xff0c;老年代&#xff0c;永久代判断对象是否还存…

Java8Stream快速使用

将List集合存入流中 List<String> list new ArrayList<>();list.add("张一");list.add("张二");list.add("张三");list.add("李四");list.add("赵五");list.add("张六");list.add("王八"…

Linux进程通信——IPC、管道、FIFO的引入

进程间的通信——IPC 进程间通信 (IPC&#xff0c;InterProcess Communication) 是指在不同进程之间传播或交换信息。 IPC的方式通常有管道 (包括无名管道和命名管道) 、消息队列、信号量、共享存储、Socket、Streams等。其中 Socket和Streams支持不同主机上的两个进程IPC。 …

pyQt主界面与子界面切换简易框架

本篇来介绍使用python中是Qt功能包&#xff0c;设置一个简易的多界面切换框架&#xff0c;实现主界面和多个子界面直接的切换显示。 1 主界面 设计的Demo主界面如下&#xff0c;主界面上有两个按钮图标&#xff0c;点击即可切换到对应的功能界面中&#xff0c;进入子界面后&a…

【mediasoup】TransportCongestionControlClient 1: 代码走读

TransportCongestionControlClient 基于m77版本的libwebrtc ,但是TransportCongestionControlClient 并不是libwebrt中的,是mediasoup自己封装实现:TransportCongestionControlClient 用于发送端D:\XTRANS\soup\mediasoup-sfu-cpp\worker\src\RTC\TransportCongestionContro…

(动手学习深度学习)第13章 实战kaggle竞赛:CIFAR-10

导入相关库 import collections import math import os import shutil import pandas as pd import torch import torchvision from torch import nn from d2l import torch as d2l下载数据集 d2l.DATA_HUB[cifar10_tiny] (d2l.DATA_URL kaggle_cifar10_tiny.zip,2068874e4…

ElasticSearch在Windows上的下载与安装

Elasticsearch是一个开源的分布式搜索和分析引擎&#xff0c;它可以帮助我们快速地搜索、分析和处理大量数据。Elasticsearch能够快速地处理结构化和非结构化数据&#xff0c;支持全文检索、地理位置搜索、自动补全、聚合分析等功能&#xff0c;能够承载各种类型的应用&#xf…

基于Qt中操作MySQL数据库示例

# 一、安装驱动 ##(1)安装 在Qt中操作MySQL数据库首先要安装mysql的驱动文件,将MySQL下的libmusql.dll文件复制到Qt的安装路径下的bin文件夹下即可。 直接将libmysql.dll文件粘贴到此文件夹中。 ## (2)验证驱动是否安装成功 复制成功之后来测试一下驱动程序是否安装成功…

◢Django 分页+搜索

1、搜索数据 从数据库中获取数据&#xff0c;并进行筛选&#xff0c;xx__contains q作为条件&#xff0c;查找的是xx列中有q的所有数据条 当有多个筛选条件时&#xff0c;将条件变成一个字典&#xff0c;传入 **字典 &#xff0c;ORM会自行翻译并查找。 筛选电话号码这一列…

Java获取指定日期到当前日期的差距

Java获取指定日期到当前日期的差距 一、指定日期到今天的y年m月d日 private JSONObject getYesrMonthDay(String dataParam){JSONObject res new JSONObject();/*只比较年月日&#xff0c;不要时间*/DateTimeFormatter df DateTimeFormatter.ofPattern("yyyy-MM-dd&quo…

在Go编程中调用外部命令的几种场景

1.摘要 在很多场合, 使用Go语言需要调用外部命令来完成一些特定的任务, 例如: 使用Go语言调用Linux命令来获取执行的结果,又或者调用第三方程序执行来完成额外的任务。在go的标准库中, 专门提供了os/exec包来对调用外部程序提供支持, 本文将对调用外部命令的几种使用方法进行总…

【机器学习】034_多层感知机Part.2_从零实现多层感知机

一、解决XOR问题 1. 回顾XOR问题&#xff1a; 如图&#xff0c;如何对XOR面进行分割以划分四个输入 对应的输出 呢&#xff1f; 思路&#xff1a;采用两个分类器分类&#xff0c;每次分出两个输入 &#xff0c;再借助这两个分类从而分出 。 即采用同或运算&#xff0c;当两…