几个有意思的C语言程序

       最近翻了一下谭浩强老师的《C程序设计》教材,顺便做了一下习题。这本书是本科时候上课的教材,因此看着它,就有一种见到老朋友的感觉。下面把我遇到的几个比较有意思的题目及程序写下来,供大家不时之需。

1.        求“Sn = a+aa+aaa+…+aa…a”之值,其中a是一个数字,n为项数,a和n均由键盘输入。

 

2.        输出所有的“水仙花数”。所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。

 

 

3.        如果一个数恰好等于它的因子之和,那么这个数就被称为“完数”。如:6的因子为1,2,3,而6=1+2+3,因此6是“完数”。编程求出1000以内的所有“完数”。

 

 

4.        输出杨辉三角形。

5.        用递归法将一个整数n转换成字符串。如:输入483,应输出字符串“483”。n的位数不定。

 

6.        有n个整数,使其前面各数顺序向后移动m个位置,最后m个数变成最前面的m个数。

 

7.        有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来第几号的那个人。

 

8.        编写一个函数,实现两个字符串的比较,写一个strcmp函数。

9.        编写一个函数alloc(),用来在内存区新开辟一个连续的空间(n个字符)。

时间: 2024-09-28 09:19:13

几个有意思的C语言程序的相关文章

编程c语言-C语言程序设计基础(图形)

问题描述 C语言程序设计基础(图形) 做一个随笔画程序,当鼠标左键按下拖动时,在窗口中随着鼠标位置画出轨迹,当鼠标左键抬起时则不画. 2. 做一个在图形窗口的输入程序.当用户按键时,在图形窗口出现按下的键所代表的字符,并像图形界面的输入框一样自动向右递进,按下回车键结束输入,将用户输入的内容在终端窗口显示出来.在此基础上,实现当前位置光标闪烁,并支持左右方向键和两个删除键. 请问这个怎么写 解决方案 C语言基础程序设计C语言--程序设计基础--6章C语言程序设计基础123章 解决方案二: htt

c语言-关于C语言程序开发软件的问题

问题描述 关于C语言程序开发软件的问题 就是利用C语言写一个小程序,然后将这个小程序打包成.exe文件,用这段程序的时候 可以直接打开这个软件就用 解决方案 用installshield打包,可以制作漂亮的安装程序.VC6安装盘的ishield目录里有. 解决方案二: a2592873706 我的意思是封装成一个软件 就是通过IDE中的编译链接生成的啊,要知道,软件,你查看最终的文件,就是一个.exe文件,至于其它的,是一些资源文件 解决方案三: 一般的编译器都可以实现这个功能.你在建立的工程文

Matlab与C语言程序应用编程接口

MATLAB作为世界顶尖的数学应用软件,以其强大的工程计算.算法研究.工程绘图.应用程序开发.数据分析和动态仿真等功能,在航空航天.机械制造和工程建筑等领域发挥着越来越重要的作用.而C语言功能丰富,使用灵活方便,目标程序效率高.既有高级语言的优点,又有低级语言的特点.因此,C语言是目前应用最广的编程语言.虽然MATLAB是一个完整的.功能齐全的编程环境,但在某些情况下,与外部环境的数据和程序的交互是非常必须而且有益的. 众所周知,MATLAB是用M语言编程,不能在M文件中直接调用C语言程序.可以

C#语言与Java语言程序的比较

迈入二十一世纪以来,信息行业飞速壮大,其中在软件开发中Java语言与C#语言都独当一面,得到了逐步完善和广泛的应用,Java语言和C#语言都是一种面向对象的语言,但Java程序和C#程序还是有一定的区别. 下面分别是两种语言的程序的例子. 1.Java语言的基本程序: Import java.util.*; Package HelloJava{ Public class Message{ Public static void main(String [] args){ System.out.pr

使用VC6.0对C语言程序进行调试的基本手段分享

这篇文章主要介绍了用VC6.0开发c语言程序的时候调试代码的一些小技巧,需要的朋友可以参考下   (1)设置固定断点或临时断点 所谓断点,是指定程序中的某一行,让程序运行至该行后暂停运行,使得程序员可以观察分析程序的运行过程中的情况.这些情况一般包括: ①在变量窗口(Varibles)中观察程序中变量的当前值.程序员观察这些值的目的是与预期值对比,若与预期值不一致,则此断点前运行的程序肯定在某个地方有问题,以此可缩小故障范围.例如以下程序是计算cos(x)并显示,运行时发现无论x输入为多少,结果

单片机时钟C语言程序 烧进去数码管乱跳。。

问题描述 单片机时钟C语言程序 烧进去数码管乱跳.. #include #define uchar unsigned char #define uint unsigned int sbit duan=P2^6; sbit wei=P2^7; sbit key1=P3^4; sbit key2=P3^5; sbit key3=P3^6; sbit key4=P3^7; uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,

c语言字符串-编一个跟字符串有关的C语言程序

问题描述 编一个跟字符串有关的C语言程序 首先要定义2个数组 然后输入2个字符串 再分别求出字符串的长度 接着比较2个字符串的大小 最后链接在一起 下面是我自己弄的,请看看 #include #include int main() { char q[50],p[10]; gets(q); gets(p); printf("q的字符串长度为%dn",strlen(q)); printf("p的字符串长度为%dn",strlen(p)); printf("%d

c语言程序问题,求一段代码

问题描述 c语言程序问题,求一段代码 求一段c语言代码:有一个已排好序的数组,要求输入一个数后,按原来排序的规律将其插入数组中 解决方案 #include<iostream> #include<iomanip> using namespace std; int main() { int i; cout<<"原来数列为:"<<endl; int a[11]={1,2,3,5,6,7,8,9,10,11}; for(i=0;i<=8;i

c语言-关于AT89C51单片机数字时钟的设计C语言程序warning问题

问题描述 关于AT89C51单片机数字时钟的设计C语言程序warning问题 本人新手,还希望各位大大帮忙看下怎么解决 Build target 'Target 1' assembling STARTUP.A51... linking... *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: ?C_START MODULE: STARTUP.obj (?C_STARTUP) *** WARNING L2: REFERENCE MADE TO UN