初阶C-1103,C语言自定义函数练习

2024-01-05 23:58

本文主要是介绍初阶C-1103,C语言自定义函数练习,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

title: 初阶C-1103
date: 2018-11-05 23:24:13
tags: C初阶

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

#include<stdio.h>
#include<stdlib.h>void MultiplicationTable(int a){for (int i = 1; i <= a; i++){for (int j = 1; j <= i; j++){int k = 0;k = j*i;printf("%d*%d=%d ", j,i,k);}printf("\n");}
}

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

void ChangeNum(int a, int b){int temp = 0;temp = b;b = a;a = temp;printf("%d,%d", a, b);
}

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

void  LeapYear(int a){if (a % 100 == 0 && a % 400 == 0){printf("%d is LeapYear", a);}else if (a % 4 == 0 && a % 100 != 0){printf("%d is LeapYear", a);}else{printf("Not LeapYear");}
}

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

void prime(int a){if (a == 2){printf("It's a prime");}else {for (int i = 3; i <= a; i++){if (a%i == 0){break;}printf("It's a prime");}printf("It's not a prime");}
}

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

#define size 5
//数组初始化 就是定义数组变量的同时给其中的数组元素赋值,由于是给多个元素同时赋值
void init(){int arr[size] = { 20, 16, 23, 75, 95, };for (int i = 0; i < size; i++){printf("arr[%d]=%2d \n", i, arr[i]);}printf("\n");
}void empty(){int arr[5] = { 20, 16, 23, 75, 95, };for (int i = 0; i < (sizeof(arr) / sizeof(arr[0])); i++){arr[i] = '\0';printf("arr[%d]=%2d \n", i, arr[i]);}printf("\n");
}
void reverse(){int temp = 0;int i = 0;int arr[5] = { 20, 16, 23, 75, 95, };for (i = 0; i < 3; i++){temp = arr[i];arr[i] = arr[4 - i];arr[4 - i] = temp;}for (i = 0; i < 5; i++){printf("arr[%d]=%2d \n",i, arr[i]);}
}

前4题很简单,并没有特别大的难度,只要掌握了计算公式,就可以算出。

第五题的思路有很多种,这是我目前想出来的一种,初始化和清空比较容易想到。关于逆置,我的方法是比较繁琐的,要根据数组内个数的多少来判断i的取值范围,当然i是可以通过sizeof()来取代的,在此我就不更换了。还有memset()这个函数可以使用,以后我将找机会将其写出。

欢迎大家留言!我们可以一起讨论

这篇关于初阶C-1103,C语言自定义函数练习的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/574572

相关文章

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

hdu1171(母函数或多重背包)

题意:把物品分成两份,使得价值最接近 可以用背包,或者是母函数来解,母函数(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v)(1 + x^v+x^2v+.....+x^num*v) 其中指数为价值,每一项的数目为(该物品数+1)个 代码如下: #include<iostream>#include<algorithm>

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

自定义类型:结构体(续)

目录 一. 结构体的内存对齐 1.1 为什么存在内存对齐? 1.2 修改默认对齐数 二. 结构体传参 三. 结构体实现位段 一. 结构体的内存对齐 在前面的文章里我们已经讲过一部分的内存对齐的知识,并举出了两个例子,我们再举出两个例子继续说明: struct S3{double a;int b;char c;};int mian(){printf("%zd\n",s

RabbitMQ练习(AMQP 0-9-1 Overview)

1、What is AMQP 0-9-1 AMQP 0-9-1(高级消息队列协议)是一种网络协议,它允许遵从该协议的客户端(Publisher或者Consumer)应用程序与遵从该协议的消息中间件代理(Broker,如RabbitMQ)进行通信。 AMQP 0-9-1模型的核心概念包括消息发布者(producers/publisher)、消息(messages)、交换机(exchanges)、

C++操作符重载实例(独立函数)

C++操作符重载实例,我们把坐标值CVector的加法进行重载,计算c3=c1+c2时,也就是计算x3=x1+x2,y3=y1+y2,今天我们以独立函数的方式重载操作符+(加号),以下是C++代码: c1802.cpp源代码: D:\YcjWork\CppTour>vim c1802.cpp #include <iostream>using namespace std;/*** 以独立函数

Spring 源码解读:自定义实现Bean定义的注册与解析

引言 在Spring框架中,Bean的注册与解析是整个依赖注入流程的核心步骤。通过Bean定义,Spring容器知道如何创建、配置和管理每个Bean实例。本篇文章将通过实现一个简化版的Bean定义注册与解析机制,帮助你理解Spring框架背后的设计逻辑。我们还将对比Spring中的BeanDefinition和BeanDefinitionRegistry,以全面掌握Bean注册和解析的核心原理。

函数式编程思想

我们经常会用到各种各样的编程思想,例如面向过程、面向对象。不过笔者在该博客简单介绍一下函数式编程思想. 如果对函数式编程思想进行概括,就是f(x) = na(x) , y=uf(x)…至于其他的编程思想,可能是y=a(x)+b(x)+c(x)…,也有可能是y=f(x)=f(x)/a + f(x)/b+f(x)/c… 面向过程的指令式编程 面向过程,简单理解就是y=a(x)+b(x)+c(x)

C语言 | Leetcode C语言题解之第393题UTF-8编码验证

题目: 题解: static const int MASK1 = 1 << 7;static const int MASK2 = (1 << 7) + (1 << 6);bool isValid(int num) {return (num & MASK2) == MASK1;}int getBytes(int num) {if ((num & MASK1) == 0) {return