【C初始之习题五】

1.实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,
输入9,输出99口诀表,输入12,输出1212的乘法口诀表。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void Sum(int x){
    int num = 0;
    for (int i = 1; i <= x; i++){
        for (int j = 1; j <= i; j++){
            num = i*j;
            printf("  %d * %d = %d  ", i, j, num);
        }
        putchar(‘\n‘);
    }
}

int main( )
{
    int n;
    printf("请输入数字:");
    scanf("%d", &n);
    Sum(n);
    system("pause");
    return 0;
}

2.使用函数实现两个数的交换。

#include<stdio.h>
#include<stdlib.h>
void Swap(int* x, int* y)
{
    int sum;
    sum = *x;
    *x= *y;
    *y = sum;
    printf(" a=%d b=%d\n", *x, *y);
}

int main()
{
    int a = 3, b = 4;
    printf(" a=%d b=%d\n", a, b);
    Swap(&a, &b);
    system("pause");
    return 0;
}

3.实现一个函数判断year是不是润年

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void  Jug(int x){
    if (x % 4 == 0 && x % 100 != 0 || x%400 == 0){
        printf("是闰年!\n");
    }
    else{
        printf("不是闰年!\n");
    }
}

int main(  )
{
    int year;
    printf("请输入年份:");
    scanf("%d", &year);
    Jug(year);
    system("pause");
    return 0;
}

4.实现一个函数,判断一个数是不是素数。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
void  Jug(int x){
        if (x <= 1){
            printf("您的输入有误!\n");
        }
        else if  (x == 2){
            printf("是素数!\n");
        }
        else if (x % 2 != 0){
            printf("是素数!\n");
        }
        else{
            printf("不是素数!\n");
        }
}

int main()
{
    int num;
        printf("请输入一个数字 :");
        scanf("%d", &num);
        Jug(num);
        system("pause");
        return 0;
}

5.创建一个数组,
实现函数init()初始化数组、
实现empty()清空数组、
实现reverse()函数完成数组元素的逆置。
要求:自己设计函数的参数,返回值。

#define m 10
#include<stdio.h>
#include<stdlib.h>
void Init(int x[m]){
    printf("x[m]=");
    for (int i =0 ; i <m; i++){
        x[i] = i;//实现函数init()初始化数组
        printf(" %d " , x[i] );
    }
    putchar(‘\n‘);
}

void Reverse(int x[m]){
    int num;
    printf("逆置后,x[m]=");
    for (int i = 0; i <(m/2-1); i++){
        num = x[i];
        x[i] = x[m - i-1];
        x[m - i-1] = num;//实现reverse()函数完成数组元素的逆置
    }
    for (int i = 0; i <m; i++){
        printf(" %d ", x[i]);
    }
    putchar(‘\n‘);
}

void Empty(int x[m]){
    printf("清空数组,x[m]=");
    for (int i = 0; i <m ; i++){
        x[i] = 0;//实现empty()清空数组
        printf(" %d ", x[i]);
    }
    putchar(‘\n‘);
}

int main( ){
    int num[m];
    Init(num);
    Reverse(num);
    Empty(num);
    system("pause");
    return 0;
}

原文地址:https://blog.51cto.com/14606679/2455556

时间: 2024-08-30 08:32:56

【C初始之习题五】的相关文章

习题五

设计一个 shell 程序,在月第一天备份并压缩/etc 目录的所有内容,存放在 /root/bak 目录里,且文件名为如下形式 yymmdd_etc,yy 为年,mm 为月,dd 为日.Shell 程序 fileback 存放在/usr/bin 目录下 1)脚本 #!/bin/bash DIRNAME='ls /root | grep bak' if [ -z "$DIRNAME" ] ;then    mkdir /root/bak fi cd /root/bak dt=$(dat

算法导论第四版学习——习题五Kd-Tree

题目正文: http://coursera.cs.princeton.edu/algs4/assignments/kdtree.html 作业难点: 如何组织自己的数据结构是本道题的最难点,基本上有思路就肯定可以完成.题目一定要看仔细,基本上2dtree部分已经把实现原理说清楚了. 作业技巧: 1.逐步实现,实现完成后用insert.contain测试下,没问题再写draw,测试没问题再写其余的. 2.重复输入的问题不要忘了 3.range虽然api里写的是all point inside th

软件工程导论 习题五

1.耦合式对一个软件结构内不同模块之间互联程度的度量.耦合强弱取决于接口的复杂度,进入或访问某一模块的点,以及通过接口的数据.一般模块之间的可能的连接方式有七种,构成耦合的七种类型,它们的关系为: A. 非直接耦合:两个模块没有直接的关系(模块1和模块2),独立性最强 B.数据耦合:即一个模块访问另一个模块的时候,彼此之间是通过数据参数来交换输入.输出信息的,这种耦合为数据耦合.这种耦合较为松散,模块间独立性较强. C.特征耦合:即一组模块通过参数传递记录信息,用户情况是个数据结构,图中模块都与

【补充习题五】微分学的应用之不等式

1. 证明$x>-1,x\neq 0$时,成立不等式(对数不等式) $$\frac{x}{1+x}<\ln (1+x)<x$$ Proof. 设$f(x)=\ln(1+x)$,由Lagrange中值定理知 $$\ln(1+x)-\ln(1+0)=\frac{x}{1+\theta x},0<\theta<1$$ 对$x>0$和$-1<x<0$分别讨论即可.取$x=\frac{1}{n}$则得 $$\frac{1}{n+1}<\ln \left(1+\f

第二部分初始阶段 第五章 进化式需求

定义:需求(requirement)就是系统(更广义的说法是项目)必须提供的能力和必须遵从的条件. UP提出了一系列的最佳实践,其中的需求管理(manager requirement).需求管理不主张采用瀑布的观点,即在编程之前的第一阶段就试图完全定义和固化需求,而是采用迭代巧妙地进行需求分析. 需求分析的最大挑战是寻找,沟通和记住(通常是指记录)什么是真正需要的,并能够清楚地讲解给客户和开发团队的成员. 进化式需求和瀑布式需求 在UP的需求管理定义中使用了"不断变更"一词.UP能够包

【C初始之习题四】

1.在屏幕上输出以下图案: * *** ***** ******* ********* *********** ************* *********** ********* ******* ***** *** * 此题思路:两次遍历,逐个输出.--------------------------------------------------------------我是分割线--------------------------------------------------------

Java String类习题

package javafirst; public class StringTest02 { public static void main(String[] args){ //习题一 使用大小写的转换 String strA = "abcD"; System.out.println("转换成小写: " + strA.toLowerCase()); System.out.println("转换成小写: " + strA.toUpperCase()

习题课2

习题1 将字符串"python"转化为列表(记为lst),然后完成如下操作: - 将字符串"rust"中的每个字母作为独立元素追加到lst中 - 对lst排序 - 删除lst中的重复元素 >>> s = 'python' >>> lst = list(s) >>> lst ['p', 'y', 't', 'h', 'o', 'n'] >>> r = 'rust' >>> lst

rip路由协议 细节分析及实例配置【完整版】

rip路由协议 细节分析及实例配置[完整版] RIP呢,这是一个比较重要的知识点,所以它的知识覆盖面很广泛:但是呢,我将会对碰到的问题进行一些分析解刨(主要是为了帮助自己理清思维):也希望能够从中发现自己不足的问题,也希望能够找到一些比较冷僻的问题,这样子才会有意思多了.   先上图,这个就是我准备做实验的基本用图了.现在已经按照图上标注的IP将所有基本配置设置好了. 在这个实验中,大多数都是基于ripv1,只有在需要比较的时候才会把版本改成ripv2,然后判断完之后再切换为ripv1: 第一步