zzuli oj 1167逆转数(指针专题)】的更多相关文章

Description 任意给你一个整数,这个数可能很大(最长不超过100位),你能求出它的逆转数吗?  逆转数定义如下:  1.一个末尾没有0的整数,它的逆转数就是各位数字逆序输出:  2.一个负数的逆转数仍是负数:  3.一个末尾有0的整数,它的逆转数如同下例:  reverse (1200) = 2100  reverse (-56) = -65  要求定义并使用如下函数:  void reverse(char *str)  {  //函数求出str的逆转数并存入str.  } Input…
Description 读入一个实数,输出该实数的小数部分,小数部分若多余的末尾0,请去掉.如输入111111.12345678912345678900  则输出0.123456789123456789.若去掉末尾0之后小数部分为0,则输出“No decimal part”.注意该实数的位数不超过100位.  请定义并使用如下函数.  char *decimal(char *p)  {  将字符串p表示的实数的自小数点开始的小数部分存入一个字符串,并由函数返回,若p为“123.456”,则返回的…
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5395 解决:1715 题目描述: 输入一个数组的值,求出各个值从小到大排序后的次序. 输入: 输入有多组数据. 每组输入的第一个数为数组的长度n(1<=n<=10000),后面的数为数组中的值,以空格分割. 输出: 各输入的值按从小到大排列的次序(最后一个数字后面没有空格). 样例输入: 4 -3 75 12 -3 样例输出: 1 3 2 1 来源: 2009年北京航空航天大学计算机研究生机试真题 思路: 注意输出的是次序,尤其注意…
本文为原创,欢迎转发: 欢迎关注微博与微信号:C语言编程技术分享 C语言中,指针的概念有点难懂,使用起来稍微不注意,也会遇到各种问题.在本文中,我列举出了几个使用指针不当的方式,希望朋友们在编程实践中也多多注意. 一.野指针 野指针这个东东是经常被人提及的,其危害也是大家有目共睹的.我很早之前写过一篇文章来说明野指针的,链接是: C程序中可怕的野指针 - 知乎专栏 有兴趣的朋友可以看看,这里就不多废话了! 二.越界访问 越界访问最常见的就是使用指针访问数组元素了.比如下面这段代码: #inclu…
本文为原创,欢迎转发! 最近在研读C primer plus 5版中文版,老外写的,还是很经典的,推荐给读者们,有需要的朋友可以在这里购买:C primer plus 5版中文版 指针,传说中是C语言中的一个难点,且是难点中的难点.本文在教材的基础上,再详细地谈谈"指针"这个东东,力争让大家能理解它. 一.指针的概念 关于指针的定义,很多教材一般给出"它是一个地址","存储的是变量的地址","指向了一个值"等等描述.这样描述其…
看到好多的C语言初学者学到指针时,都觉得指针怎么那么难啊!我也想起了我当时学习指针时遇到的困难,确实很难!到底是教程写的不好呢,还是老师教的不好呢?我觉得都有. 网上搜索指针讲解的资料很多,我也看了不少,不能说这些资料讲的不对,他们讲的是对的,把指针是什么,怎么用也讲到了,可是还有好多人还是不理解. 我想想自己是怎么学指针的,遇到困难时也是拿着纸笔画啊画,我就不相信学不会.最后,我想我就把我自己所理解的指针,写成一个专题,与朋友们交流,我们来看看,指针真有这么难理解? 我之前写过从四个属性的角度…
import java.util.Scanner; /** * * 完全数(Perfect number),又称完美数或完备数,是一些特殊的自然数. * 它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身. * 例如:28,它有约数1.2.4.7.14.28,除去它本身28外,其余5个数相加,1+2+4+7+14=28. * * 给定函数count(int n),用于计算n以内(含n)完全数的个数 * @param n 计算范围, 0 < n <= 500000 * @r…
题目内容: Description “不要问我太阳有多高 我会告诉你我有多真 不要问我星星有几颗 我会告诉你很多很多” 一天Qinz和wudired在天上数星星,由于星星可以排列成一条直线,他们比赛看谁能找到一条直线使得这条直线上的星星最多.假设夜空是一个二维平面坐标系,坐标轴为x,y.星星的坐标(x,y)为整数,且同一位置至多有一颗星星.他们需要你的帮助,一条直线最多可以穿过多少颗星星(直线不必平行于坐标轴)? Input 多组数据,EOF结束.  第一行N(0<=N<=1000)为天上星星…
Description 某辆汽车有一个里程表,该里程表可以显示一个整数,为该车走过的公里数.然而这个里程表有个毛病:它总是从3变到5,而跳过数字4,里程表所有位(个位. 十位.百位等)上的数字都是如此.例如,如果里程表显示15339,汽车走过1公里之后,该里程表显示15350. Input 输入一个整数num,表示里程表显示的数值,长度不超过9位,且一定不含整数4. Output 输出一个整数,表示实际行驶的里程. Sample Input 150 Sample Output 117 这道题看似…
#include <stdio.h> /* 编写一个函数,输入 n 为偶数时,调用函数求 1/2+1/4+...+1/n,当输入 n 为奇数时,调用函数1/1+1/3+...+1/n(利用指针函数). */ //1/2 + 1/4 +...+ 1/n; float even(int n) { ; ; i <=n; i+=) sum += ( / i; return sum; } //1/1 + 1/3 +...+ 1/n; float odd(int n) { ; ; i <= n…
题目链接:http://acm.swust.edu.cn/problem/610/ Time limit(ms): 1000 Memory limit(kb): 65535   Description 马上就是新年了,在这里提前祝大家新年快乐,首先送大家一个吉祥数——1898.相信意思大家都明白吧,接着就请大家根据下面的提示来找出一些和我们这个吉祥数相关的一些数吧. 请将不大于2008的所有素数从小到大排成第一行,第二行上的每个数都等于它头上的素数与它右肩上的素数之差.编程求出:第二行数中是否存…
题目链接:http://acm.swust.edu.cn/problem/137/ Time limit(ms): 1000 Memory limit(kb): 65535   Description 波浪数是在一对数字之间交替转换的数,如1212121,双重波浪数则是指在两种进制下都是波浪数的数,如十进制数191919是一个十进制下的波浪数,它对应的十一进制数121212也是一个波浪数,所以十进制数191919是一个双重波浪数. 类似的可以定义三重波浪数,三重波浪数在三种不同的进制中都是波浪数…
题目描述 Ignatius is building an Online Judge, now he has worked out all the problems except the Judge System. The system has to read data from correct output file and user's result file, then the system compare the two files. If the two files are absolu…
题目: Description 妈妈每天都要出去买菜,但是回来后,兜里的钱也懒得数一数,到底花了多少钱真是一笔糊涂帐.现在好了,作为好儿子(女儿)的你可以给她用程序算一下了,呵呵. Input 输入含有一些数据组,每组数据包括菜种(不含空格的字串),数量w(计量单位不论,一律为double型数)和单价p(double型数,表示人民币元数),因此,每组数据的菜价就是数量乘上单价啊.菜种.数量和单价之间都有空格隔开的. Output 支付菜价的时候,由于最小支付单位是角,所以总是在支付的时候采用四舍…
题目链接: https://acm.zzuli.edu.cn/zzuliacm/problem.php?id=1134 Description 输入一个以回车结束的字符串,它由数字和字母组成,请过滤掉所有非数字字符,然后将数字字符串转换成十进制整数后乘以2输出. Input 输入一个以回车结束的字符串,长度不超过100,由数字和字母组成. Output 将转换后的整数乘以2输出,测试数据保证结果在int范围内. Sample Input sg987aa65t498 Sample Output 1…
最近在研读 C Primer pkus(第五版)中文版,老外写的还是很经典的,推荐给朋友们,购买地址:C primer plus 5版中文版购买 另外再推荐两本书: 1. 2017年9月全国计算机二级c语言程序设计上机考试新版题库全真模拟试卷全套,购买地址:2017年9月全国计算机二级c语言 2. 程序员面试宝典(第5版)第五版:程序员面试宝典(第5版)第五版 本篇再来谈谈C语言中,为何有人会说指针很灵活?指针是精华?我来说说我对灵活性的理解. 先举个例子.windows上有很多好玩的游戏,比如…
欢迎转发本文! 之前的文章与各位谈论了指针是什么,以及指针为何这那么难学.不少知友留言说看了我的文章对指针了解了不少,这给我继续创作提供了莫大的动力啊.指针其实就是一个纸老虎,你看着可怕,等你了解其本质后,你会对其不屑的. 这一篇来聊聊为什么要用指针,或者说,在什么场景下必须要用指针,也就是给我们一个学习指针的理由,否则为何要去学指针,那不神经病嘛.本文列举了两个需要用到指针的场景,知友们可以留言继续补充. 1. 数组处理 数组处理是最需要用到指针的,其中一个场景的程序代码如下: #includ…
前一篇跟大家聊了聊指针的概念,可是就算了解了指针是什么,为什么依然感觉难学?我试着从几个点切入,聊聊指针难学之处. 文末会给大家推荐几本书,有需要的朋友可以看看! 难点1. 讨厌的星号 定义指针变量p时,都会加个*号.在用到指针变量p时,也会加个*号.比如以下代码: int main() { int *p; p = malloc(sizeof(int)); *p = 1; return 0; } 程序定义了一个指针变量p,前面有个*号:后面给指针p指向的内存区域赋值1,又有个*号,这两个*号有啥…
1 NULL指针 一个指针变量可以指向计算机中任何一块内存,不管该内存有没有被分配,也不管该内存有没有使用权限,只要把地址给他,他就可以指向.C语言没有一种机制保证指向内存的正确性,程序员必须自己提高警惕. 比如下面错误的例子,对没有初始化的指针进行操作,这是非常危险的. char *str; gets(str); printf("%s",str); 这段程序编译和链接不会报错,但当输入字符串按下回车,在Linux就会出现段错误(Segment Fault).因为str是一个未初始化的…
Description HOHO,终于从Speakless手上赢走了所有的糖果,是Gardon吃糖果时有个特殊的癖好,就是不喜欢连续两次吃一样的糖果,喜欢先吃一颗A种类的糖果,下一次换一种 口味,吃一颗B种类的糖果,这样:可是Gardon不知道是否存在一种吃糖果的顺序使得他能把所有糖果都吃完?请你写个程序帮忙计算一下. Input 第一行有一个整数T,接下来T组数据,每组数据占2行,第一行是一个整数N(0 < N <= 1000000),表示糖果的种类.第二行是N个数,表示每种糖果的数目Mi(…
Description 统计一篇文章里不同单词的总数. Input 有多组数据,每组一行,每组就是一篇小文章.每篇小文章都是由小写字母和空格组成,没有标点符号,遇到#时表示输入结束. Output 每组只输出一个整数,其单独成行,该整数代表一篇文章里不同单词的总数. Sample Input you are my friend # Sample Output 4 第一次写的时候没看清题  (不同单词)   导致WA了一发·· 思路理清楚后也不是什么难题,用二维数组来记录一行句子中的各个单词,每个…
Description 期末考试结束,班主任拿到了本班学生的成绩汇总表.由m行n列组成(本班共同拥有m名学生,本学期有n门课程),每行是一个同学的n门课程成绩,请编敲代码,计算并输出每门课的平均分.结果保留2位小数. Input 第一行是两个整数m和n,表示本班的人数和本学期课程数目,0<m<=1000,0<n<=10. 接下来是成绩单,有m行,每行n个实数. Output 输出一行,有n个实数,保留两位小数,表示每门课的平均分,用空格隔开. Sample Input 5 4 80…
Description 你知道.2012-1-1是该年的第1天.而9999-9-9呢?给你一个详细的日期,计算该日期是该年的第几天. Input 输入一个日期.格式为:Year-month-day.year是小于9999的正整数. Output 一个整数.表示该日期是该年的第几天. Sample Input 2012-3-1 Sample Output 61 HINT Source #include <stdio.h> int main() { int a[13]={0}; int year,…
函数指针 函数指针是指向函数的指针变量. 通常我们说的指针变量是指向一个整型.字符型或数组等变量,而函数指针是指向函数. 函数指针可以像一般函数一样,用于调用函数.传递参数. #include <stdio.h> // 取两个数里最大的数字 int getMaxValue(int, int); int main() { // func就是涵数指针 int (*p)(int, int) = &getMaxValue; // &可省略 , b = , c = , d; d = p(…
1.函数指针声明的格式及简单的使用 (1)格式:(返回值)(*函数指针名)(参数列表)    例如:声明一个无参数无返回值的函数指针(void)(*p)(void). (2)将函数指针指向某个无参数无返回值的函数fun();(注:fun函数我就不在这里声明了)  形如:p = fun;(注意的是:fun后面不用加括号) ,这句话就是表示将函    数指针p指向名为fun的函数. (3)使用函数指针调用fun函数,形如:p();(等价于直接调用fun()). 所以完整的使用应该为三个步骤:1.声明…
1.语言中变量的实质 要理解C指针,我认为一定要理解C中“变量”的存储实质, 所以我就从“变量”这个东西开始讲起吧! 先来理解理解内存空间吧!请看下图: 内存地址→ 6 7 8 9 10 11 12 13 ----------------------------------------------------------------- ... | | | | | | | |.. ------------------------------- ---------------------------…
例一:指针函数 指针函数是指带指针的函数,即本质是一个函数.函数返回类型是某一类型的指针 类型标识符    *函数名(参数表) int *f(x,y); 首先它是一个函数,只不过这个函数的返回值是一个地址值.函数返回值必须用同类型的指针变量来接受,也就是说,指针函数一定有函数返回值,而且,在主调函数中,函数返回值必须赋给同类型的指针变量. 指针函数:当一个函数声明其返回值为一个指针时,实际上就是返回一个地址给调用函数,以用于需要指针或地址的表达式中. #include "stdio.h"…
一 通常的函数调用 void MyFun(int x); //此处的申明也可写成:void MyFun( int ); int main(int argc, char* argv[]) { MyFun(); //这里是调用MyFun(10);函数 ; } void MyFun(int x) //这里定义一个MyFun函数 { printf("%d\n",x); } 这个MyFun函数是一个无返回值的函数,它并不完成什么事情.这种调用函数的格式你应该是很熟悉的吧!看主函数中调用MyFun…
一.指针的加.减法运算 /* 1.加法运算 1).可以跟整数进行加法运算,得到的还是一个地址 公式: 地址 + 1 = 地址 + 1 * 类型所占的字节数 地址 + n = 地址 + n * 类型所占的字节数 2).只能跟整数运算,不能跟浮点数运算 2.指针的减法运算: 1).可以跟整数进行减法运算,得到的还是一个地址 公式: 地址 - 1 = 地址 - 1 * 类型所占的字节数 地址 - n = 地址 - n * 类型所占的字节数 2).只能跟整数运算,不能跟浮点数运算 */ //例如: //…
二.通常的函数调用 一个通常的函数调用的例子:/* 自行包含头文件 */void MyFun(int x); /* 此处的声明也可写成:void MyFun(int) */int main(int argc, char* argv[]){ MyFun(10); /* 这里是调用MyFun(10) 函数 */ return(0);}void MyFun(int x) /* 这里定义一个MyFun函数 */{ printf("%d\n",x);}这个MyFun函数是一个无返回值的函数,它并…