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: 8C: 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即为项数和即为等差求和。

cpp 复制代码
#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

cpp 复制代码
#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)*3
    sum = n*a1 + (n*(n-1)/2)*3;
    printf("%d",sum);
    return 0;
}

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

相关推荐
奋斗的小花生34 分钟前
c++ 多态性
开发语言·c++
魔道不误砍柴功36 分钟前
Java 中如何巧妙应用 Function 让方法复用性更强
java·开发语言·python
pianmian138 分钟前
python数据结构基础(7)
数据结构·算法
闲晨40 分钟前
C++ 继承:代码传承的魔法棒,开启奇幻编程之旅
java·c语言·开发语言·c++·经验分享
老猿讲编程1 小时前
一个例子来说明Ada语言的实时性支持
开发语言·ada
阿_旭2 小时前
一文读懂| 自注意力与交叉注意力机制在计算机视觉中作用与基本原理
人工智能·深度学习·计算机视觉·cross-attention·self-attention
王哈哈^_^2 小时前
【数据集】【YOLO】【目标检测】交通事故识别数据集 8939 张,YOLO道路事故目标检测实战训练教程!
前端·人工智能·深度学习·yolo·目标检测·计算机视觉·pyqt
UestcXiye2 小时前
《TCP/IP网络编程》学习笔记 | Chapter 3:地址族与数据序列
c++·计算机网络·ip·tcp
Chrikk2 小时前
Go-性能调优实战案例
开发语言·后端·golang
幼儿园老大*2 小时前
Go的环境搭建以及GoLand安装教程
开发语言·经验分享·后端·golang·go