我是小咲,不知道各位是否大一的时候初学c语言对于编程题目会深恶痛绝?

现在来拯救你了,尝试看懂下面我写的代码……应该不会有太多mistake吧,至少编译通过了呢

没有对自己要求这么低好吗?言归正传,这些就是上机学校编程题库中的部分题了

  • 程序填空题(不要增加或删除行,只需要把下划线去掉,在下划线位置上填入相应内容,并成功运行
  • 功能:计算并输出500以内最大的10个能被13或17整除的自然数之和。
  • #include <conio.h>

    #include <stdio.h>

    /***********SPACE***********/

    int fun(int k)

    {

    int m = 0, mc = 0;

    /***********SPACE***********/

    while (k >= 2 && mc<10)

    {

    /***********SPACE***********/

    if (k % 13 == 0 || k % 17 == 0)

    {

    m = m + k;

    mc++;

    }

    k--;

    }

    /***********SPACE***********/

    printf("%d",m);

    }

    main()

    {

    printf("%d\n", fun(500));

    system("pause");

    }

  • 功能:计算并输出high以内最大的10个素数之和,high由主函数传给fun函数,若high的值为100,则函数的值为732。
  • #include <stdio.h>

    #include <math.h>

    int fun(int  high)

    {

    int sum = 0, n = 0, j, yes;

    /***********SPACE***********/

    while ((high >= 2) && (n<10))

    {

    yes = 1;

    for (j = 2; j <= high / 2; j++)

    /***********SPACE***********/

    if (high%j==0)

    {

    yes = 0;

    break;

    }

    if (yes)

    {

    sum += high;

    n++;

    }

    high--;

    }

    /***********SPACE***********/

    return sum;

    }

    main()

    {

    printf("%d\n", fun(100));

    system("pause");

    }

  • 功能:编写函数fun求20以内所有5的倍数之积。
  • #include <stdio.h>

    #define N 20

    int fun(int m)

    {

    /**********FOUND**********/

    int s = 1, i;

    for (i = 1; i<N; i++)

    /**********FOUND**********/

    if (i%m ==0)

    /**********FOUND**********/

    s *= i;

    return s;

    }

    main()

    {

    int sum;

    sum = fun(5);

    printf("%d以内所有%d的倍数之积为: %d\n", N, 5, sum);

    }二、程序设计题根据题目要求编写程序并成功运行,其它各题格式与1题格式相同

  • 功能:用辗转相除法求两个整数的最大公约数。
  • ------------------------------------------------*/

    #include<stdio.h>

    int gcd(int n, int m)

    {

    /**********Program**********/

    int i=n%m;

    while (i&&m&&n){

    n = m%i;

    if (n == 0) return i;

    m = i%n;

    if (m == 0)return n;

    i = n%m;

    if (i == 0) return m;

    }

    return m;

    /**********  End  **********/

    }

    main()

    {

    int n, m, result;

    scanf("%d%d", &n, &m);

    result = gcd(n, m);

    printf("the gcd is %d\n", result);

    system("pause");

    }

  • 要求键盘输入一个数,编写函数判断它的奇偶性
  • #include <stdio.h>

    #include <math.h>

    int fun(n){

    if (n % 2 != 0)

    return 1;

    return 0;

    }

    int main(){

    int n,flag;

    scanf("%d", &n);

    flag=fun(n);

    if (flag == 1){

    printf("奇数");

    }

    else

    printf("偶数");

    system("pause");

    return 0;

    }

  • 输入两正整数,编写函数求其最小公倍数
  • #include<stdio.h>

    int gcd(int n, int m)

    {

    /**********Program**********/

    int i=n%m;

    while (i&&m&&n){

    n = m%i;

    if (n == 0) return i;

    m = i%n;

    if (m == 0)return n;

    i = n%m;

    if (i == 0) return m;

    }

    return m;

    /**********  End  **********/

    }

    main()

    {

    int n, m, result;

    scanf("%d%d", &n, &m);

    result = m*n/gcd(n, m);

    printf("the gcd is %d\n", result);

    system("pause");

    }

  • 编写函数判断一个数是否是完数,并调用函数找出1000内的所有完数
  • #include<stdio.h>

    int main()

    {

    int sum; //i控制数范围,j控制除数范围,sum记录累加因子之和

    for (int i = 2; i <= 1000; i++)

    {

    //每次循环时sum的恒为0

    sum = 0;

    for (int j = 1; j<i; j++)

    {

    //判断因子如果是纳闷算入总和

    if (i%j == 0)

    sum += j;

    }

    //满足条件输出

    if (sum == i)

    printf("perfect number:%d\n", i);

    }

    system("pause");

    return 0;

    }

  • 编写并调用函数找出1000内的所有水仙花数
  • #include <stdio.h>

    #include <math.h>

    int fun(int n){

    if (n == (n / 100)*(n / 100)*(n / 100) +

    (n % 10)*(n % 10)*(n % 10) +

    ((n / 10) % 10)*((n / 10) % 10)*((n / 10) % 10))

    {

    return 1;

    }

    return 0;

    }

    int main(){

    for (int i = 100; i < 1000; i++){

    int temp = fun(i);

    if (temp){

    printf("%d\n", i);

    }

    }

    system("pause");

    return 0;

    }

  • 要求输入一个数,编写函数求它的逆序数
  • #include <math.h>

    #include <stdio.h>

    typedef long long ll;

    int a[100], ans[100];

    ll solve(int l, int r)

    {

    int mid = (l + r) >> 1;

    if (l == r)

    {

    return 0;

    }

    ll num = 0;//逆序对的个数

    num += solve(l, mid);

    num += solve(mid + 1, r);

    for (int i = l, j = mid + 1, k = 0; i <= mid || j <= r; k++)

    {

    if (i>mid)   ans[k] = a[j++];

    else if (j>r)    ans[k] = a[i++];

    else if (a[i] <= a[j]) ans[k] = a[i++];

    else

    {

    //出现逆序对

    ans[k] = a[j++];

    num += mid - i + 1;//B序列中大于a[j]的个数

    }

    }

    for (int i = 0; i <= (r - l); i++)

    a[l + i] = ans[i];

    return num;

    }

    int main()

    {

    int n;

    scanf("%d", &n);

    for (int i = 0; i < n; i++)

    scanf("%d", a + i);

    printf("%lld\n", solve(0, n - 1));

    system("pause");

    return 0;

    }

  • 输出一个菱形
  • #include <math.h>

    #include <stdio.h>

    #define N 10

    void print(int n){

    for (int i = 0; i < n;i++)

    printf(" ");

    }

    int main(){

    int n = N;

    for (int i = 0; i < N; i++){

    print(n--);

    for (int j = 0; j <= i;j++){

    printf("* ");

    }

    printf("\n");

    }

    for (int i = N; i >=0; i--){

    print(n++);

    for (int j = 0; j <= i; j++){

    printf("* ");

    }

    printf("\n");

    }

    system("pause");

    }

  • 输入5个学生成绩,写一个函数,当主函数调用此函数后,能求出平均分、最高分和最低分
  • #define _CRT_SECURE_NO_WARNINGS 1

    #include <stdio.h>

    #include <math.h>

    void fun(int a,int b,int c,int d,int e){

    int max = a;

    int min = a;

    double average;

    if (max < b) max=b;

    if (max < c)max = c;

    if (max < d)max = d;

    if (max < e)max = e;

    printf("%d ", max);

    if (min > b)min=b;

    if (min > c)min = c;

    if (min > d)min = d;

    if (min > e)min = e;

    printf("%d ", min);

    average = (a + b + c + d + e) / 5.0;

    printf("%.2lf ", average);

    }

    int main(){

    int a1, a2, a3, a4, a5;

    scanf("%d%d%d%d%d", &a1,&a2,&a3,&a4,&a5);

    fun(a1,a2,a3,a4,a5);

    system("pause");

    return 0;

    }

  • 功能:从键盘上输入任意实数x,求出其所对应的函数值。
  • z=(x-4)的二次幂(x>4)

    z=x的八次幂(x>-4)

    z=(x>-10)

    z=|x|+20(其他)

    #include <math.h>

    #include <stdio.h>

    float y(float x)

    {

    /**********Program**********/

    float z;

    if(x>4)

    z = pow(x - 4, 2);

    if (x>-4)

    z = pow(x, 8);

    if (x > -10)

    z = 4 / (x*(x + 1));

    else

    z = fabs(x) + 20;

    return z;

    /**********  End  **********/

    }

    main()

    {

    float x;

    scanf("%f", &x);

    printf("y=%f\n", y(x));

    system("pause");

    }

惊!c语言上机编程题目?相关推荐

  1. 二级c语言上机编程技巧,二级C语言上机编程题技巧总结

    二级C语言上机编程题技巧 一. 方法总结 1. 二级C语言上机编程题在二级上机考试中属于较难题型,因此很多同学都害怕通过不了.综合 往年的考试,结合考试大纲,每年考试的编程题都有一定的规律和方法,只要 ...

  2. 天津理工大学c语言上机题库,天津理工大学C语言上机报告题目加答案.doc

    天津理工大学C语言上机报告题目加答案 实验五 (2009-9-24) 实验名称: 数组. 实验目的: 掌握C语言中一维数组.二维数组的定义方法: 掌握字符数组与常用字符串处理函数的使用: 掌握与数组有 ...

  3. c语言十几行编译出上百k,二级C语言上机编程题技巧总结选读.doc

    二级C语言上机编程题技巧 方法总结 二级C语言上机编程题在二级上机考试中属于较难题型,因此很多同学都害怕通过不了.综合往年的考试,结合考试大纲,每年考试的编程题都有一定的规律和方法,只要同学们认真熟练 ...

  4. 在C语言二级考试中编程题编译,二级C语言上机编程题

    <二级C语言上机编程题>由会员分享,可在线阅读,更多相关<二级C语言上机编程题(34页珍藏版)>请在人人文库网上搜索. 1.二级C语言上机编程题技巧一. 方法总结1. 二级C语 ...

  5. 天津理工上机c语言报告5,天津理工大学C语言上机报告题目加答案.doc

    天津理工大学C语言上机报告题目加答案.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印 ...

  6. 计算机二级c语言编程题型,全国计算机等级二级C语言上机编程题题型

    第1题 函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70到79的人数存到b[1],成绩为80 ...

  7. c语言屏幕输出函数相关题,C语言上机考试题目

    <C语言上机考试题目>由会员分享,可在线阅读,更多相关<C语言上机考试题目(3页珍藏版)>请在人人文库网上搜索. 1.C 语言上机考试试题1.编写一个程序,判定一个字符串是否是 ...

  8. 全国计算机等级二级C语言上机编程题题型

    全国计算机等级二级C语言上机编程题题型 第1题 函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70 ...

  9. 素数c语言程序解题思路,C语言上机实验题目解题思路.doc

    上机实验题目解题思路 目录 第十三次实验:指针之一2 2453:步骤:2 2454:步骤:2 3575:步骤:方法同24543 3576:步骤:3 3580:步骤:3 3582:步骤:3 第十二次实验 ...

最新文章

  1. oracle增量备份如何恢复,【Oracle】增量备份和全库备份怎么恢复数据库
  2. 线性回归 T检验P值计算
  3. 威金病毒(感染EXE文件)专杀工具
  4. nuke linux 插件,NUKE插件-Pos工具包V1.2
  5. Linux 根分区扩容
  6. Verilog 参数化位宽转换设计实例
  7. matlab 四维等值面图,一个4列数组怎样画出三维等值面图
  8. stm32f4实现s6d1121+xtp2046触摸屏功能
  9. Android Camera摄像头预览黑屏原因(二)
  10. 【论文分享】Relation-Aware Graph Attention Network for Visual Question Answering
  11. 教育邮箱通知获取(通过QQ邮箱代发)
  12. 解决MacBook外置鼠标不灵敏,移动速度慢
  13. 基于SPI协议下的OLED显示
  14. SQL Server中的锁
  15. 2017 ACM/ICPC Asia Regional Shenyang Online array
  16. 谭浩强C语言第七章知识总结
  17. oracle 自连接层次查询,使用自连接查询居然比直接查询效率高很多,何解?
  18. 2012 中国移动者开发大会
  19. SpringBoot 返回xml格式
  20. 屏幕适配 AndroidAutoSize 完全解析,踩坑测试 与 使用注意事项总结

热门文章

  1. Oacle锁表,ORA-00054
  2. 分类:支持向量机(四)——非线性支持向量机
  3. Apriori算法Matlab实现
  4. Accuracy and precision 意义
  5. 怎么更改电脑桌面文件存放路径
  6. From Seeing to Moving: A Survey on Learning for Visual Indoor Navigation (VIL)
  7. Qt创建停靠悬浮窗口
  8. 【中科院】分子生物学-朱玉贤第四版-笔记-病毒的分子生物学
  9. 联想Thinkpad E420 重装系统
  10. VMware 虚机启动失败问题