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

C语言:选择+编程(每日一练)

目录

 选择题:

题一:

题二:

题三:

题四:

题五:

编程题:

题一:尼科彻斯定理

示例1

题二:等差数列

示例2

本人实力有限可能对一些地方解释和理解的不够清晰,可以自己尝试读代码,或者评论区指出错误,望海涵!


选择题:

题一:

1、以下程序段的输出结果是( )
#include<stdio.h>
int main()
{
char s[] = "\\123456\123456\t";
printf("%d\n", strlen(s));
return 0;
}

A: 12    B: 13    C: 16     D: 以上都不对

题二:

2、若有以下程序,则运行后的输出结果是( )
#include <stdio.h>
#define N 2
#define M N + 1
#define NUM (M + 1) * M / 2
int main()
{
printf("%d\n", NUM);
return 0;
}

A: 4    B: 8    C: 9    D: 6

题三:

3、如下函数的 f(1) 的值为( )
int f(int n)
{
static int i = 1;
if(n >= 5)
return n;
n = n + i;
i++;
return f(n);
}

A: 5    B: 6    C: 7    D: 8

题四:

4、下面3段程序代码的效果一样吗( )

int b;
(1)const int *a = &b;
(2)int const *a = &b;
(3)int *const a = &b;

A: (2)=(3)    B: (1)=(2)    C: 都不一样    D: 都一样

题五:

5、对于下面的说法,正确的是( )
A: 对于 struct X{short s;int i;char c;},sizeof(X)等于sizeof(s) + sizeof(i) + sizeof(c)
B: 对于某个double变量 a,可以使用 a == 0.0 来判断其是否为零
C: 初始化方式 char a[14] = "Hello, world!"; 和char a[14]; a = "Hello, world!";的效果相同
D: 以上说法都不对

A选项,没有考虑内存对齐。B选项,考察double类型的比较,由于浮点数存在误差,不能直接判断两个数是否相等,通常采用比较两数之差的绝对值是否小于一个很小的数字(具体的可自己设定这样一个数,作为误差)来确定是否相等。C选项,a为数组首地址是常量不能改变,所以A,B,C都是错的,选择D

编程题:

题一:尼科彻斯定理

示例1

输入:

6

输出:

31+33+35+37+39+41

思路一:

        此题考查对等差数列的认识,能够分析出题目中以公差为二,输入m即为项数和即为等差求和。

#include <stdio.h>
#include <math.h>
//等差数列求和公式
int main() 
{int m = 0;scanf("%d",&m);//知和求首项int sum = pow(m,3);int a1 = sum/m -(m-1);//打印每一项for(int i = a1,j = 0;j < m;i+=2,j++){printf("%d",i);if(j < m-1){printf("+");}}return 0;
}

题二:等差数列

示例2

输入:

275

输出:

113575

说明:

2+5+...+821+824=113575

思路一:       

         等差数列求和:Sn=n*a1+n*(n-1)/2*3或者Sn=n*(a1+an)/2    an=a1*(n-1)*3

#include <stdio.h>int main() 
{int n = 0;int a1 = 2;int sum = 0;scanf("%d",&n);//等差数列求和:Sn=n*a1+n*(n-1)/2*3//Sn=n*(a1+an)/2  an=a1*(n-1)*3sum = n*a1 + (n*(n-1)/2)*3;printf("%d",sum);return 0;
}

本人实力有限可能对一些地方解释和理解的不够清晰,可以自己尝试读代码,或者评论区指出错误,望海涵!

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

相关文章:

  • 信道数据传输速率、码元传输速率、调制速度,信号传播速度之间的关系
  • docker的使用方法总结
  • 【C#】条码管理操作手册
  • RabbitMq-发布确认高级(避坑指南版)
  • Blender增强现实3D模型制作指南【AR】
  • Java查看https证书过期时间(JKS,CERT)
  • 关于vue,记录一次修饰符.stop和.once的使用,以及猜想。
  • 解决git reset --soft HEAD^撤销commit时报错
  • 【BASH】回顾与知识点梳理(三十四)
  • Python可视化在量化交易中的应用(11)_Seaborn折线图
  • 无涯教程-TensorFlow - TensorBoard可视化
  • [uni-app] uview封装Popup组件,处理props及v-model的传值问题
  • 【C++】int a;和int *p=new int;有什么区别?
  • redis事务管理
  • TPS_C++版本及功能支持备注
  • 同步jenkinsfile流水线(sync-job)
  • STM32单片机WIFI-APP智能温室大棚系统CO2土壤湿度空气温湿度补光
  • SpringBoot复习:(52)不再需要使用@EnableTransactionManagement的原因
  • HackNos 3靶场
  • 【办公自动化】使用Python批量生成PPT版荣誉证书
  • 【C++深入浅出】初识C++中篇(引用、内联函数)
  • 前端:VUE2中的父子传值
  • 【100天精通python】Day40:GUI界面编程_PyQt 从入门到实战(完)_网络编程与打包发布
  • Redis——set类型详解
  • redis---》高级用法之慢查询/pipline与事务/发布订阅/bitmap位图/HyperLogLog/GEO地理位置信息/持久化
  • Find My资讯|苹果Vision Pro开发者需将设备配对 AirTag
  • Go 语言中排序的 3 种方法
  • 12----Emoji表情
  • C++四种强制类型转换
  • git仓库新建上传记录