c语言趣味编程实例
《c语言趣味编程实例》由会员分享,可在线阅读,更多相关《c语言趣味编程实例(5页珍藏版)》请在装配图网上搜索。
1、1、编程序求 5X+2Y+Z=50 的所有非负整数解。#include int main()int x, y, z;int count = 0;for (x = 0; 5 * x = 50;x+) for (y = 0; 2 * y = 50; y+) for (z = 0; z = 50; z+) if (5 * x + 2 * y + z = 50) count+; printf(%d :, count); printf(x=%d,y=%d,z=%d, x, y, z); printf(n); return 0;2、把25个字母A、B、C、X、Y按如下要求打印出来:从最中间的字母M开始打印
2、,然后一左一右依次打印出其它字母,即M,L,N,K,O,。要求:初始化时按字母表顺序赋值。#include int main() char x = ABCDEFGHIJKLMNPQRST;int k;int n = 0;while (xn)n+;if (xn = M)k = n;break;printf(%c,xk);for (int i = 1; i = 12; i+)if (i = 11)printf(%c,%c, (xk - i), (xk + i);elseprintf(%c,%c。, (xk - i), (xk + i);printf(n);return 0;3、某单位排队形,开始排
3、成3路纵队,末尾多出了2人。后改成5路纵队,末尾又 多出了3人,最后改成7路纵队,正好没有余数。编程序求出该单位至少有多少人。#include int main() int staff_num = 7; /该单位至少有7人。while (1) if (staff_num % 3 = 2 & staff_num % 5 = 3 & staff_num % 7 = 0)printf(该单位至少有%d人。, staff_num);break;staff_num+;printf(n);return 0;4、将一个66数组的第一行、第六行、主对角线和副对角线上的元素都存入1,其 余的元素都存入0。请编程
4、序实现。 要求:1)不许对数组初始化。 2)尽量少用循环。#include int main(void)int a66;int count = 0;for (int i = 0; i 6;i+)for (int j = 0; j 6; j+)count+;if (i = j | i = 0 | i = 5)aij = 1;elseaij = 0;printf(a%d%d=%d , i, j, aij);if (count % 6 = 0)printf(nnn);return 0;5.打印空心菱形,图形如下: 其中行数可以从控制台输入,可变的,可以打印(1-n)层。#includevoid ma
5、in()int lay;printf(请输入要打印的层数(菱形的半边):);/表示有多少层 ,层数由用户输入,图例中lay=4scanf_s(%d, &lay); /vs2010以后版本scanf安全问题会报错。/以下代码打印菱形的上半部for (int i = 1; i = lay; i+) for (int k = 1; k = lay - i; k+)printf( );/每行星号个数 for (int j = 1; j = 2 * i - 1; j+)if (j = 1 | j = 2 * i - 1)printf(*);elseprintf( );/打印换行printf(n);/以下
6、代码打印菱形的下半部for (int i = lay + 1; i = 2 * lay - 1; i+)for (int k = 1; k = i - lay; k+)printf( );for (int j = 1; j = 2 * lay - 2 * (i - lay) - 1; j+)if (j = 1 | j = (2 * lay - 2 * (i - lay) - 1)printf(*);elseprintf( ); /打印换行printf(n); 6. 打印实心菱形,与5题类似,如下图例#includevoid main()int lay;printf(请输入要打印的层数(菱形的半
7、边): );/表示有多少层 scanf_s(%d, &lay);/vs2010以后版本scanf安全问题会报错。/以下代码打印菱形的上半部for (int i = 1; i = lay; i+)for (int k = 1; k = lay - i; k+)printf( );/每行星号个数 for (int j = 1; j = 2 * i - 1; j+)printf(*);/打印换行 printf(n);/以下代码打印菱形的下半部for (int i = lay + 1; i = 2 * lay - 1; i+)for (int k = 1; k = i - lay; k+) printf( );/每行星号个数 for (int j = 1; j = 2 * lay - 2 * (i - lay) - 1; j+) printf(*);/打印换行 printf(n);
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。