技术标签: 算法 c语言 《C语言程序设计》系列 数据结构
例题:请编写函数fun,该函数的功能是:移动一维数组中的内容:若数组中有m个整数,要求把下标从0到t(t≤m-1)的数组元素平移到数组的最后。
例如,一维数组中的原始内容为:1,2,3,4,5,6,7,8,9,10;t的值为3 。移动后,一维数组中的内容为:5,6,7,8,9,10,1,2,3,4。
请勿改动主函数main与其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
代码如下:
#include<stdio.h>
#define M 100
void fun(int*s,int t,int m)
{
int a[M],i,j=0;
for(i=0;i<=t;i++)
a[i]=s[i];
for(i=t+1;i<m;i++)
{
s[j]=s[i];
j++;
}
for(i=0;i<=t;i++)
{
s[j]=a[i];
j++;
}
}
main()
{
int str[M]={
1,2,3,4,5,6,7,8,9,10};
int i,t,n=10;
FILE*out;
int test[M]={
1,1,2,3,5,8,13,21,34,55,89,144};
printf("The original data:\n");
for(i=0;i<n;i++)
printf("%3d",str[i]);
printf("\n\nEnter t: ");
scanf("%d",&t);
fun(str,t,n);
printf("\nThe data after moving:\n");
for(i=0;i<n;i++)
printf("%3d",str[i]);
printf("\n\n");
out=fopen("outfile.dat","w");
fun(test,6,12);
for(i=0;i<12;i++)
fprintf(out,"%d\n",test[i]);
fclose(out);
}
输出运行窗口如下:
本周其他练习
C语言编程>第十一周 ① 请编写函数fun,其功能是:将str所指字符串中下标为偶数的字符删除,字符串中剩余字符形成的新串放在s所指数组中。
C语言编程>第十一周 ② N名学生的成绩已在主函数中放入一个带头结点的链表结构中,a指向链表的头结点。请编写函数fun,它的功能是:找出学生的最高分,由函数返回。
C语言编程>第十一周 ③ 假定输入的字符串只包含字母和 “#”号。请编写函数fun,它的功能是:将字符串中的前导 “#”号全部移到字符串的尾部。
C语言编程>第十一周 ④ 请编写函数fun,该函数的功能是:判断字符串是否为回文?若是则函数返回1,主函数中输出YES,否则返回0,主函数中输出NO。回文是指顺读和倒读都一样的字符串。
C语言编程>第十一周 ⑤ 请编写一个函数,用来删除字符串中的所有空格。
C语言编程>第十一周 ⑥ 某学生的记录由学号、5门课程成绩和平均分组成,学号和5门课程的成绩已在主函数中给出。请编写函数fun,它的功能是:求出该学生的平均分,并放在记录的ave成员中。
C语言编程>第十一周 ⑦ 请编写函数fun,它的功能是:求出str所指字符串中指定字符的个数,并返回此值。
C语言编程>第十一周 ⑧ 请编写函数fun,该函数的功能是:移动一维数组中的内容:若数组中有m个整数,要求把下标从0到t(t≤m-1)的数组元素平移到数组的最后。
越努力越幸运!
加油,奥力给!!!
selenium+Chrome 无头模式 及加代理1.selenium+Chrome 无头模式示例代码:# coding=utf-8from selenium import webdriverfrom selenium.webdriver.chrome.options import Optionschrome_options = Options()chrome_options.add...
我们常常听到“进销存”、“供产销”等概念,一个完整的供应链关注的就是从采购到生产到销售的全过程。简单的说,PP将负责将MM采购的原材料半成品加工成SD可以销售的贸易产品或者供下一步使用的半成品。 江湖盛行这么一首诗: SAP是庞大的,模块是多多的,功能是强大的,搞懂是没门的。 SD是灵巧的,五脏是俱全的,满足是不能的,报表是经常的。 PP是复杂的,相同是很少的,M...
sipdoid拨号流程---> 在sipdroid的onCreate方法中设置了按键和触摸的监听器,点击拨号后会调用call_menu:1. call_menu()----------sipdroid.java | Receiver.engine(this).call() ||2.call() --------sipdroid
import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;import java.util.Scanner;public class Test {public static void main(String[] args) throws ClassNotFoundException, Ill...
4.2. 缓存原理在Zend_Cache中有三个关键概念.一是用于标识缓存纪录的唯一标识符(一个字符串).二是'lifeTime'指令,正如例子中所见, 它定义了缓存纪录的生命期(超过该值,缓存纪录被销毁).第三个关键概念是条件执行,你的部分代码可用被跳过,以加速性能. 前端函数(例如. Zend_Cache_Core::get())在缓存不命中时返回false,这使用户能处理if(){ ...
优盘(U盘)是我们日常生活中,重要的便携存储设备。当我们误操作(像是删除文件、格式化等)造成文件丢失的时候。我们都会想到在网上搜索,找到一种方法能够恢复U盘数据。如果你正在阅读这篇文件,那么你来对了。小编就为你介绍一款简单易用的数据恢复软件 — 易我数据恢复帮你恢复U盘丢失的文件。首先,现在易我数据恢复免费版软件:免费下载Windows版本免费下载Mac版本成功恢复机率: 99.7%数据恢复只需要三个简单的步骤下面就是易我数据恢复软件的详细图文教程:提醒:一旦..
写在前面 上一节我们使用AssImp载入了3d模型,效果已经令人激动了。可是绘制效率和场景真实感还存在不足,接下来我们还是要保持耐心,继续学习一些高级主题,等学完后面的高级主题,我们再次来改进我们载入模型的过程。本节将会学习深度測试。文中演示样例程序源码均能够在我的github下载。...
#pragma once/**************************************************写优先读写锁 读效率比 WINDOWS 的 SRWLOCK 慢一倍左右,百万级读锁要156ms(78ms) 写效率比 WINDOWS 的 SRWLOCK 慢 N 倍,百万级写锁要1516ms(62ms) CKSRWLock 读写锁实现 CAut
1 JS模块化编程1.1 JS模块化诞生2009年,美国程序员Ryan Dahl创造了node.js项目,将javascript语言用于服务器端编程。这标志"Javascript模块化编程"正式诞生。1.2 模块化实例node.js的模块系统,就是参照CommonJS规范实现的。在CommonJS中,有一个全局性方法require(),用于加载模块。1.3
角谷定理【题目】给定一个正整数 N, 如果是偶数就折半,如时奇数就 3 * N + 1,如此往复运算,最后一定得到 1。我们把一个数 N 到达 1 用了多少步运算称为它的角谷步长。求 100 以内的数字角谷步长的最大长度。例如,N=7时,它的运算过程:22,11,34,17,52,26,13,40,20,10,5,16,8,4,2,1所以,它的角谷步长是17这种折腾序列的问题是 hask...
这里主要是利用jquery,在移动端时也可以实现视角的移动效果。程序运行截图如下:这里用触屏操作与鼠标操作一样:关键源码如下://移动端触碰开始$stage.bind('touchstart', function (event){ originalPositionX = event.changedTouches[0].pageX; originalPositionY = event.changedTouches[0].pageY; isPressed = true;
进入到DVWA页面中: 点击下图中按钮 Creat / Reset Database 创建数据库: 出现如下错误提示:Could not connect to the MySQL service.Please check the config file.意思是: 无法连接到MySQL服务。 请检查你的config文件。 问题解决此时我们找到config文...