C练习题_14

news2024/11/16 9:57:31

一、单项选择题(本大题共 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 % b

void 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.coloradmin.cn/o/1231784.html

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

相关文章

ES6有何新特性?(下篇)

目录 函数参数的默认值设置 rest参数 扩展运算符 Symbol 迭代器 生成器 Promise Class 数值扩展 对象方法扩展 模块化 大家好呀&#xff01;今天这篇文章继续为大家介绍ES6的新特性&#xff0c;上上上篇文章介绍了一部分&#xff0c;这篇文章会将剩下的部分新增的特…

【grafana | clickhouse】实现展示多折线图

说明&#xff1a; 采用的是 Visualizations 的 Time series&#xff0c;使用的 clickhouse 数据源 在工作中遇到了一个需求&#xff0c;写好了代码&#xff0c;需要在grafana上展示在一个项目中所有人的&#xff0c;随时间的代码提交量变化图 目前遇到的问题&#xff1a;展示…

异步爬取+多线程+redis构建一个运转丝滑且免费http-ip代理池 (三)

内容提要: 如果说,爬取网页数据的时候,我们使用了异步,那么将数据放入redis里面,其实也需要进行异步;当然,如果使用多线程或者redis线程池技术也是可以的,但那会造成冗余; 因此,在测试完多线程redis搭配异步爬虫的时候,我发现效率直接在redis这里被无限拉低下来! 因此: 最终的r…

ISP--Black Level Correction(黑电平矫正)

图像的每一个像素点都是由一个光电二极管控制的&#xff0c;由二极管将电信号&#xff0c;转换为数字信号。 那么&#xff0c;我们知道了&#xff0c;图像的像素值是与电信号强度相关的。但是&#xff0c;我们得知道&#xff0c;每一个光电二极管要想工作&#xff0c;都得有一定…

vue3 setup展示数据

效果图 1.创建数据 content.js import { reactive } from vueconst data reactive({color:red,title: 二十四节气,subTitle: 节气&#xff0c;是干支历中表示自然节律变化以及确立“十二月建”&#xff08;月令&#xff09;的特定节令。,list: [{name: "立春",con…

MATLAB | 官方举办的动图绘制大赛 | 第二周赛情回顾

今天带来一下MATHWORKS官方举办的迷你黑客大赛第三期(MATLAB Flipbook Mini Hack)的最新进展&#xff01;&#xff01;目前比赛已经进行了两周非常荣幸能够成为第一周的阶段性获奖者&#xff1a; 本来并不打算每周进行一次赛况讲解&#xff0c;但是由于字符限制改成了2000&…

竞赛 题目:基于深度学习的中文汉字识别 - 深度学习 卷积神经网络 机器视觉 OCR

文章目录 0 简介1 数据集合2 网络构建3 模型训练4 模型性能评估5 文字预测6 最后 0 简介 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 基于深度学习的中文汉字识别 该项目较为新颖&#xff0c;适合作为竞赛课题方向&#xff0c;学长非常推荐&#xff01; &a…

原理Redis-Dict字典

Dict 1) Dict组成2) Dict的扩容3) Dict的收缩4) Dict的rehash5) 总结 1) Dict组成 Redis是一个键值型&#xff08;Key-Value Pair&#xff09;的数据库&#xff0c;可以根据键实现快速的增删改查。而键与值的映射关系正是通过Dict来实现的。 Dict由三部分组成&#xff0c;分别…

MobaXterm如何连接CentOS7的Linux虚拟机?Redis可视化客户端工具如何连接Linux版Redis?

一、打开Lunix虚拟机,进入虚拟机中,在终端中输入ifconfig,得到以下信息&#xff0c;红框中为ip地址 二、打开MobaXterm&#xff0c;点击session 选择SSH&#xff0c;在Remote host中输入linux得到的IP地址&#xff0c;Specify username中可起一个任意的连接名称。 输入密码 四、…

YOLO改进系列之注意力机制(GAM Attention模型介绍)

模型结构 为了提高计算机视觉任务的性能&#xff0c;人们研究了各种注意力机制。然而以往的方法忽略了保留通道和空间方面的信息以增强跨维度交互的重要性。因此&#xff0c;liu提出了一种通过减少信息弥散和放大全局交互表示来提高深度神经网络性能的全局注意力机制。作者的目…

一起Talk Android吧(第五百五十五回:Retrofit中的注解)

文章目录 1. 概念介绍2. 注解的分类与功能2.1 方法类注解2.2 参数类注解3. 内容总结各位看官们大家好,上一回中分享了一个Retrofit使用错误的案例,本章回中将 介绍Retrofit请求中的注解。闲话休提,言归正转,让我们一起Talk Android吧! 1. 概念介绍 我们在前面章回中介绍R…

这些来自各领域的全新机器人技术,你了解吗?

原创 | 文 BFT机器人 01 人机交互的新工具 在人机交互领域&#xff0c;来自欧洲各地的研究人员开发了一种名为HEUROBOX的新工具&#xff0c;用于评估交互。HEUROBOX提供了84个基本启发式和228个高级启发式&#xff0c;用于评估人机交互的各个方面&#xff0c;如安全性、人体工…

在使用tomcat运行项目时,遇到端口80被占用的情况问题解决

问题描述&#xff1a;Failed to initialize end point associated with ProtocolHandler ["http-bio-80"] java.net.BindException: Address already in use: NET_Bind <null>:80 在学习springmvc的时候&#xff0c;跟着黑马视频进行学习&#xff0c;结果&…

vue.js 短连接 动态连接

有这么一种场景&#xff0c;我们实现了某个业务&#xff0c;现在需要将这个业务连接对外推广以期实现我们的运营、推广、佣金目的&#xff0c;那么我们如何实现呢&#xff1f; 比如这个页面连接为&#xff1a; https://mp.domain.com/user/creation/editor?spm1&userno12…

车辆限迁查询API——查询您的车辆是否限制迁入迁出

随着城市的快速发展和人们生活水平的提高&#xff0c;车辆的使用量也不断增加。而随之而来的问题也愈发突出&#xff0c;其中之一就是车辆的限迁问题。 比如&#xff0c;在一些大城市&#xff0c;为了减少交通拥堵和空气污染&#xff0c;政府采取了限制车辆迁入迁出的措施&…

值得学习的演示文稿制作范例

1,在第一张幻灯片前插入1张新幻灯片,设置幻灯片大小为“全屏显示(16:9) ”;为整个演示文稿应用“离子会议室”主题,放映方式为“观众自行浏览”;除了标1题幻灯片外其它每张幻灯片中的页脚插入“晶泰来水晶吊坠”七个字。 2,第一张幻灯片的版式设置为“标题幻灯片”,主标题为“…

考情实况系列:把控考场节奏,从容拿下Datacom HCIE认证

大家好&#xff0c;我是誉天的数通学员&#xff0c;前段时间刚刚通过了HCIE认证考试&#xff0c;这里给大家分享一下我的考试经验与心得&#xff0c;希望对大家有所帮助。 我预约的是11月3日的杭州考场&#xff0c;考试前一天我就到了杭州&#xff0c;在中医药大学地铁站边上的…

接口测试知识点问答

一.什么是接口&#xff1f; 接口测试主要用于外部系统与系统之间以及内部各个子系统之间的交互点&#xff0c;定义特定的交互点&#xff0c;然后通过这些交互点来&#xff0c;通过一些特殊的规则也就是协议&#xff0c;来进行数据之间的交互。 二.接口都有哪些类型&#xff1f…

难转型、难增长、难赚钱,智能家居下半场,渠道商的出路在哪里?

脱下皇帝的新衣&#xff0c;大部分代理商不赚钱 “我去年入局智能家居&#xff0c;到现在为止&#xff0c;还处于投入阶段。”一位新入局智能家居不到一年的集成商深夜给智哪儿打来了电话。说得好听一点&#xff0c;是还处于投入阶段&#xff0c;用大白话翻译一下&#xff0c;就…

【HarmonyOS】鸿蒙应用开发基础认证题目

系列文章目录 【HarmonyOS】鸿蒙应用开发基础认证题目&#xff1b; 文章目录 系列文章目录前言一、判断题二、单选题三、多选题总结 前言 随着鸿蒙系统的不断发展&#xff0c;前不久&#xff0c;华为宣布了重磅消息&#xff0c;HarmonyOS next 开发者版本会在明年&#xff08;…