考研C语言进阶题库——更新11-15题

目录

11一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多少?新的对称

12求小鸡的数量

13坤坤翁母雏

14计算1-n之间的所有奇数的和

15自守数是指一个数的平方的尾数等于该数自身的自然数.c求200000以内的自守数


11一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多少?新的对称

cpp 复制代码
//11一辆以固定速度行驶的汽车,司机在上午10点看到里程表上的读数是一个对称数(即这个数从左向右读和从右向左读是完全一样的),
// 为95859。两小时后里程表上出现了一个新的对称数。问该车的速度是多少?新的对称
#include <stdio.h>
int main(){
    long i,n=95859;
    float a;

    for (i=n+1;;i++)
    {
        if (i/100==i%10*100+i/10%10*10+i/100%10)//绝妙,但只能处理五个数
        {
            a=(i-n)/2;
            printf("%d\n%f\n",i,a);
            return 0;
        }
    }
}

12求小鸡的数量

cpp 复制代码
//13求小鸡的数量
#include <stdio.h>
#include <math.h>
#include <limits.h>
int main(){
    //初始化
    int n,sum=0;
    scanf("%d",&n);

    for (int i = 1;i<INT_MAX; i++) {
        sum+= pow(i,3);
        if(sum>=n){
            printf("%d",i);
            return 0;
        }
    }
    return 0;
}

13坤坤翁母雏

cpp 复制代码
//13坤坤翁母雏
#include <stdio.h>

int main(){
    //初始化
    int old,big,small;
    for (int old = 1; old <= 22; old++) {
        for (int big = 1; big <= 34; big++) {
            small=(100-5*old-3*big)*3;
            if(old+small+big==100){
                printf("old=%d,big=%d,small=%d\n",old,big,small);
            }
        }
    }
    return 0;
}

14计算1-n之间的所有奇数的和

cpp 复制代码
//14计算1-n之间的所有奇数的和.c
#include <stdio.h>

int main(){
    //初始化
    int n,sum=0;
    scanf("%d",&n);

    for (int i = 1; i <= n; i=i+2) {
        sum+=i;
    }
    printf("%d",sum);
    return 0;
}

15自守数是指一个数的平方的尾数等于该数自身的自然数.c求200000以内的自守数

cpp 复制代码
//15自守数是指一个数的平方的尾数等于该数自身的自然数.c求200000以内的自守数
//初始化,int会溢出对于32位整数(int),其取值范围通常为 -2147483648 (-2^31) 到 2147483647 (2^31-1)。
//对于64位整数(long long),其取值范围通常为 -9223372036854775808 (-2^63) 到 9223372036854775807 (2^63-1)。
#include <stdio.h>
#include <math.h>

int main() {
    for (long long int i = 0; i <= 200000; i++) {
        long long int fang = i * i;

        long long int temp = i;//运算用的

        int count = 0;

        while (temp > 0) {
            temp /= 10;
            count++;
        }

        long long int divisor = pow(10, count);//除数

        if (i == fang % divisor) {
            printf("%lld ", i);
        }
    }

    return 0;
}
相关推荐
黑不拉几的小白兔3 分钟前
PTA部分题目C++重练
开发语言·c++·算法
迷迭所归处4 分钟前
动态规划 —— dp 问题-买卖股票的最佳时机IV
算法·动态规划
写bug的小屁孩4 分钟前
websocket身份验证
开发语言·网络·c++·qt·websocket·网络协议·qt6.3
chordful25 分钟前
Leetcode热题100-32 最长有效括号
c++·算法·leetcode·动态规划
_OLi_33 分钟前
力扣 LeetCode 459. 重复的子字符串(Day4:字符串)
算法·leetcode·职场和发展·kmp
材料苦逼不会梦到计算机白富美36 分钟前
线性DP 区间DP C++
开发语言·c++·动态规划
java小吕布38 分钟前
Java Lambda表达式详解:函数式编程的简洁之道
java·开发语言
Romanticroom40 分钟前
计算机23级数据结构上机实验(第3-4周)
数据结构·算法
白藏y41 分钟前
数据结构——归并排序
数据结构·算法·排序算法
sukalot42 分钟前
windows C#-查询表达式基础(一)
开发语言·c#