c语言,怎么编一个程序来显示某一个数值,并且可以改变?

  1. 注意所有符号都是英文,最后没有回车。

  2. 将要求输出字符串之外的所有printf或者cout的输出全部删除

  3. 提交之前先在自己的开发环境下运行成功再拷贝到作业区提交。

  4. 输出的语句最好拷贝到程序中,避免不小心的键盘按键错误输入造成扣分。

  1. 注意所有符号都是英文,最后没有回车。

  2. 将要求输出字符串之外的所有printf或者cout的输出全部删除

  3. 提交之前先在自己的开发环境下运行成功再拷贝到作业区提交。

  4. 输出的语句最好拷贝到程序中,避免不小心的键盘按键错误输入造成扣分。

  5. 1.和2.后面有一个空格。

某明星每年都会做慈善,小明统计了一下这个明星今年做了3次慈善,第一次捐助希望小学x万元,第二次捐助一个癌症患者y万元,第三次举办了慈善晚会,募捐z万元,其中有t万元是其他人捐助的。

请问,这个明星今年一共捐助了多少钱?(万元)

输入: 4个空格分开的正实数(单精度实数)

输出:总共捐款数(只输出数值,保留小数点后的小数2位)

如果输入不合法,则输出error

小明每个月基本工资x元,还有奖金y元,每迟到1次扣奖金的50元。这个月迟到z次,最多将所有奖金扣完。

请问小明这个月领多少钱?

如果输入不合法,则输出"error"

判断这一年是不是闰年,是闰年输出yes,不是则输出no

如果输入不合法,输出error

请问公鸡、母鸡、小鸡各多少只?

列举所有可能,从公鸡数目小到大排列,公鸡相同则按照母鸡递增顺序,公鸡母鸡都相同,则按照小鸡递增顺序

第一天吃掉其中的一半然后多吃了1个,

第二天照此方法又吃掉了剩下桃子的一半加1个,

以后每天如此,直到第十天晚上,猴子发现只剩下了1个桃子,

请问猴子第一天总共摘了多少个桃子?

并反向打印每天所剩桃子数。

分别表示第九天剩余桃子,第八天剩余桃子,....,第一天剩余桃子,总桃子数。

比如,如果总桃子10个,第一天剩余10/2-1=4个,第二天剩余4/2-1=1个,根据题目要求应该输出第一天剩余桃子,总桃子分别为:

回文测试:输入一30个字符以内的字符串,判断是否为回文;如果是,则打印"true";否则打印"false"。像"aba"这样的从左往右读与从右往左读一致就是回文。

按照下面要求定义一个时钟结构体类型:

然后,编程实现将时钟模拟显示在屏幕上。注意:时钟是24小时的。需要判断输入的数据是否合法。

接受若干非负整数(数据不重复),当个数超过10个或者遇到负数时停止接受,将这几个整数按升序排列输出,并且奇数在前,偶数在后。

输出要求,每个数字后输出空格与其他数字隔开,最后一个数字后也有空格

12、删除字符串中连续的重复字符

功能:实现删除字符串中连续的重复字符(除字母和数字)。 输入为字符串,将字符串中连续重复的,非字母和数字的字符删去,然后输出处理后的字符串。要求用指针指向输入的字符串进行操作。

输入字符串最长50个字符,之后截断,只输出处理后的字符串。 

13、统计输出字符串中的字母个数和数字个数。

编写程序,输入一个字符串,分别统计输出该字符串中的字母个数和数字个数。要求用指针指向这个字符串进行处理。

英文逗号分隔的2个整数,第一个整数是字母个数,第二个整数的数字个数。

14、比较字符串是否相等(25分)

编写程序,输入两个字符串,通过2个指针p和q分别指向这2个字符串,比较字符串是否相等。 要求不使用strcmp函数。

设有一个3位数,它的百位数、十位数、个位数的立方和正好等于这个3位数,如153=1+125+27。

编写函数,返回小于等于传入参数n且满足该条件的三位数(称为水仙花数)的个数。

 返回值要求:如果传入参数n不是三位数或者在该范围内没有找到,则find返回0,

 注意:不要在find函数中打印(如调用printf或puts等函数)任何数据,否则视为错误。

提交的程序需要包含需要的头文件及如下的main函数:

编写程序,从键盘输入5个正整数,然后求出它们的最小公倍数,并显示输出。

(通过调用对两个正整数求最小公倍数的函数实现)(参考函数原型:int LCM(int x, int y))

 要求在main函数接收5个正整数,然后通过调用LCM函数最终得到这5个数的最小公倍数,最后输出最小公倍数。

如果输入数据错误,输出"error"。

函数功能:将source指向的字符串拷贝到destination指向的位置。

注意:使用空格字符来表示字符串的结束。例如source指向位置,依次保存了字符'a',字符'b',字符空格' ',字符'c',则source指向的字符串为"ab"。destionation原来存储的字符串是"xyz tdk",则拷贝后,destionation存储的应该是“ab  tdk”。遇到异常情况,输出"error";否则不要随意输出,会视为错误.

您的main函数需要读入2个长度不超过80字节的字符串(按行及下面顺序读入source和destionation字符串),然后调用my_strcpy函数,最后用puts函数输出destionation里面存储的字符串。

输入两个点的坐标,创建两个点, 然后调用Point类的Distance方法输出两个点的距离。

在你的代码中除了实现Point类以外,还需一如下main函数:

实现User类的构造函数和AddUser方法添加新用户,

判断用户名对应的密码是否正确,如果正确返回用户的编号,如果不正确返回-1。

User类的使用示意如下所示,在你的代码中除了实现User类以外,还需一如下main函数

设计一个学生类Student,包含学生学号(最长10位)、姓名(不用支持中文最长12位)、三门课程成绩(成绩是单精度实数类型)等基本信息,

计算每门课程学生的平均成绩。

需实现Student的display成员函数,依次输出学号 姓名 和三门课的成绩,每个输出以空格隔开

Student类的使用方法如下所示,在你的代码中除了实现Student类,还需引入以下代码:

请写出三角形(Triangle)、四边形(Quadrangle)、圆形(Circle)三个派生类,构造函数分别传入三边/四边/半径的长度(不用检查是否符合三角形、矩形、圆的条件,没有异常输出),重写出求周长的函数(Circumstance函数)。

然后实现基类的Create函数,这里重载的三个Create函数,分别生成三角形、四边形、圆形的对象。

如果三角形输入的三边长度是 3 4 5,四边形输入的四条边的长度是2 3 4 7,圆的半径是3,则要求程序运行能够得到如下的提示和输出:

22、实现带日期的时钟类

实现带日期的时钟类,具体要求如下:

已知时钟类的定义如下:

需要类外实现Date类的days方法,根据年和月,返回该年该月对应的天数

实现Date类的NewDay方法,该方法将Date代表的日期增加一天。

showTime方法输出当的时间和日期,先输出时间再输出日期。

run方法每次将现在的时间增加一秒,并且当时间超过23:59:59时,更新日期。

比如某次程序运行输入当前时间是:1 1 1 7 10 2000(2000年10月7号1点1分1秒),然后输入运行时间x: 5,则程序运行的输入输出如下:

1、编写函数输出小于等于n的水仙花数

设有一个3位数,它的百位数、十位数、个位数的立方和正好等于这个3位数,如153=1+125+27。
编写函数,找出所有满足该条件的数(称为水仙花数)。
 在find里输出所有小于等于n的水仙花数,以逗号分隔
 返回值要求:如果没有,则find返回0,否则返回找到的水仙花数的个数
 
 
实现逆序的Memcpy方法。
从source所指的内存地址的起始位置开始拷贝num个字节,逆序保存到目标destination所指的内存地址的起始位置中。
 


(逆序拷贝,实参指针类型与函数指针类型必须一致,否则只能正序拷贝)
 
memcpy源码(源头目标内存重叠或目标内存不重叠(前后之分),从源头开始复制;源尾目标内存重叠,从源尾开始复制)
10 //目标低于等于源或目标高于等于源+len,从源头地址开始复制 17 //目标高于源并且小于源+len,从源尾地址开始复制
 

首先输入一个字符串,然后依次将功能显示出来

 

1,实例对象与new命令

每一个对象都是功能中心,具有明确分工,可以完成接受信息、处理数据、发出信息等任务。对象可以 复用,通过继承机制还可以定制。因此,面向对象编程具有灵活、代码可复用、高度模块化等特点,容 易维护和开发,比起由一系列函数或指令组成的传统的过程式编程(procedural programming), 更适合多人合作的大型软件项目。

那么,“对象”(object)到底是什么?我们从两个层次来理解。

        (1)对象是单个实物的抽象。 一本书、一辆汽车、一个人都可以是对象,一个数据库、一张网页、一个与远程服务器的连接也可以是 对象。当实物被抽象成对象,实物之间的关系就变成了对象之间的关系,从而就可以模拟现实情况,针 对对象进行编程。

        (2)对象是一个容器,封装了属性(property)和方法(method)。 属性是对象的状态,方法是对象的行为(完成某种任务)。比如,我们可以把动物抽象为 animal 对 象,使用“属性”记录具体是那一种动物,使用“方法”表示动物的某种行为(奔跑、捕猎、休息等等)。

        面向对象编程的第一步,就是要生成对象。前面说过,对象是单个实物的抽象。通常需要一个模板,表 示某一类实物的共同特征,然后对象根据这个模板生成。 典型的面向对象编程语言(比如 C++ 和 Java),都有“类”(class)这个概念。所谓“类”就是对象 的模板,对象就是“类”的实例。但是,JavaScript 语言的对象体系,不是基于“类”的,而是基于构 造函数(constructor)和原型链(prototype)。 JavaScript 语言使用构造函数(constructor)作为对象的模板。所谓”构造函数”,就是专门用来 生成实例对象的函数。它就是对象的模板,描述实例对象的基本结构。一个构造函数,可以生成多个实 例对象,这些实例对象都有相同的结构。构造函数就是一个普通的函数,但是有自己的特征和用法。

上面代码中,对象 o2 的 p2 属性是自身的, p1 属性是继承的。这两个属性都会 被 for...in 循环遍历。 为了在 for...in 循环中获得对象自身的属性,可以采用 hasOwnProperty 方法判断一下。

获得对象的所有属性(不管是自身的还是继承的,也不管是否可枚举),可以使用下面的函数。


上面代码依次获取 obj 对象的每一级原型对象“自身”的属性,从而获取 obj 对象的“所有”属性, 不管是否可遍历。 下面是一个例子,列出 Date 对象的所有属性。

如果要拷贝一个对象,需要做到下面两件事情。

下面就是根据上面两点,实现的对象拷贝函数。

除了正常的运行模式,javascript还有第二种运行模式:严格模式(strict mode)。顾名思义,这种模式采用更加严格的javascript语法。同样的代码,在正常模式和严格模式中,可能会有不一样的运行结果。一些在正常模式下可以运行的语句在严格模式下将不能运行。

早期的javascript语言很多设计不合理的地方,但是为了兼容以前的代码,又不能改变老的语法,只能不断添加新的语法,引导程序员使用新语法。

严格模式是从ES5进入标准的,主要目的有以下几个

        增加更多报错的场合,消除代码运行的一些不安全之处,保证代码运行的安全。

总之,严格模式体现了javascript更合理、更安全、更严谨的发展方向。

进入严格模式的标志,是一行字符串 use strict 。

老版本的引擎会把它当作一行普通字符串,加以忽略。新版本的引擎就会进入严格模式。 严格模式可以用于整个脚本,也可以只用于单个函数。

use strict 放在脚本文件的第一行,整个脚本都将以严格模式运行。如果这行语句不在第一行就无 效,整个脚本会以正常模式运行。(严格地说,只要前面不是产生实际运行结果的语句, use strict 可以不在第一行,比如直接跟在一个空的分号后面,或者跟在注释后面。)

上面代码中,一个网页文件依次有两段 JavaScript 代码。前一个javascript标签是严格模式,后一个不是。如果 use strict 写成下面这样,则不起作用,严格模式必须从代码一开始就生效。

use strict 放在函数体的第一行,则整个函数以严格模式运行。

有时,需要把不同的脚本合并在一个文件里面。如果一个脚本是严格模式,另一个脚本不是,它们的合 并就可能出错。严格模式的脚本在前,则合并后的脚本都是严格模式;如果正常模式的脚本在前,则合 并后的脚本都是正常模式。这两种情况下,合并后的结果都是不正确的。这时可以考虑把整个脚本文件 放在一个立即执行的匿名函数之中。

严格模式使得 JavaScript 的语法变得更严格,更多的操作会显式报错。其中有些操作,在正常模式 下只会默默地失败,不会报错。

严格模式下,设置字符串的 length 属性,会报错。

上面代码报错,因为 length 是只读属性,严格模式下不可写。正常模式下,改变 length 属性是 无效的,但不会报错。 严格模式下,对只读属性赋值,或者删除不可配置(non-configurable)属性都会报错。

1. // 对只读属性赋值会报错
10. // 删除不可配置的属性会报错
 
只设置了取值器的属性不可写


严格模式下,对一个只有取值器(getter)、没有存值器(setter)的属性赋值,会报错。


上面代码中, obj.v 只有取值器,没有存值器,对它进行赋值就会报错。


禁止扩展的对象不可扩展


严格模式下,对禁止扩展的对象添加新属性,会报错。


上面代码中, obj 对象禁止扩展,添加属性就会报错。





严格模式下,使用 eval 或者 arguments 作为标识名,将会报错。下面的语句都会报错。





正常模式下,如果函数有多个重名的参数,可以用 arguments[i] 读取。严格模式下,这属于语法错 误。


禁止八进制的前缀0表示法


正常模式下,整数的第一位如果是 0 ,表示这是八进制数,比如 0100 等于十进制的64。严格模式 禁止这种表示法,整数第一位为 0 ,将报错。





严格模式增强了安全保护,从语法上防止了一些不小心会出现的错误。





正常模式中,如果一个变量没有声明就赋值,默认是全局变量。严格模式禁止这种用法,全局变量必须 显式声明。

12. f() // 报错,未声明就创建一个全局变量

因此,严格模式下,变量都必须先声明,然后再使用。

禁止 this 关键字指向全局对象

正常模式下,函数内部的 this 可能会指向全局对象,严格模式禁止这种用法,避免无意间创造全局 变量。

上面代码中,严格模式的函数体内部 this 是 undefined 。 这种限制对于构造函数尤其有用。使用构造函数时,有时忘了加 new ,这时 this 不再指向全局对 象,而是报错。

严格模式下,函数直接调用时(不使用 new 调用),函数内部的 this 表示 undefined (未定 义),因此可以用 call 、 apply 和 bind 方法,将任意值绑定在 this 上面。正常模式 下, this 指向全局对象,如果绑定的值是非对象,将被自动转为对象再绑定上去, 而 null 和 undefined 这两个无法转成对象的值,将被忽略。

上面代码中,可以把任意类型的值,绑定在 this 上面。

函数内部不得使用 fn.caller 、 fn.arguments ,否则会报错。这意味着不能在函数内部得到调 用栈了。

严格模式下无法删除变量,如果使用 delete 命令删除一个变量,会报错。只有对象的属性,且属性 的描述对象的 configurable 属性设置为 true ,才能被 delete 命令删除。

JavaScript 语言的一个特点,就是允许“动态绑定”,即某些属性和方法到底属于哪一个对象,不是 在编译时确定的,而是在运行时(runtime)确定的。 严格模式对动态绑定做了一些限制。某些情况下,只允许静态绑定。也就是说,属性和方法到底归属哪 个对象,必须在编译阶段就确定。这样做有利于编译效率的提高,也使得代码更容易阅读,更少出现意 外。 具体来说,涉及以下几个方面。

严格模式下,使用 with 语句将报错。因为 with 语句无法在编译时就确定,某个属性到底归属哪 个对象,从而影响了编译效果。

正常模式下,JavaScript 语言有两种变量作用域(scope):全局作用域和函数作用域。严格模式 创设了第三种作用域: eval 作用域。 正常模式下, eval 语句的作用域,取决于它处于全局作用域,还是函数作用域。严格模式 下, eval 语句本身就是一个作用域,不再能够在其所运行的作用域创设新的变量了,也就是 说, eval 所生成的变量只能用于 eval 内部。

上面代码中,由于 eval 语句内部是一个独立作用域,所以内部的变量 x 不会泄露到外部。 注意,如果希望 eval 语句也使用严格模式,有两种方式。

上面两种写法, eval 内部使用的都是严格模式。

变量 arguments 代表函数的参数。严格模式下,函数内部改变参数与 arguments 的联系被切断 了,两者不再存在联动关系。

上面代码中,改变函数的参数,不会反应到 arguments 对象上来。

非函数代码块不得声明函数

ES6 会引入块级作用域。为了与新版本接轨,ES5 的严格模式只允许在全局作用域或函数作用域声明 函数。也就是说,不允许在非函数的代码块内声明函数。

上面代码在 if 代码块和 for 代码块中声明了函数,ES5 环境会报错。注意,如果是 ES6 环境,上面的代码不会报错,因为 ES6 允许在代码块之中声明函数。

我要回帖

更多关于 c语言怎么把数字变成字母 的文章

 

随机推荐