[详细完整版]C程序设计题.doc
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
程序设计题 1题目:调用函数fun判断一个三位数是否"水仙花数"。在main函数中从键盘输入一个三 位数,并输出判断结果。请编写fun函数。所谓"水仙花数"是指一 个3位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为153=13+5 3+33。 #include "stdio.h" int fun(int n) {/**********Program**********/ int bw,sw,gw; bw=n/100;sw=n/10%10;gw=n%10; if(n==bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1; else return 0; /********** End **********/ } main() { int n,flag; scanf("%d",&n); flag=fun(n); if(flag) printf("%d 是水仙花数\n",n); else printf("%d 不是水仙花数\n",n); yzj(); } yzj() { FILE *IN,*OUT; int iIN,i; int iOUT; IN=f 【水仙花数判断】 水仙花数是一个三位数,其各位数字的立方和等于该数本身。在C语言中,我们可以通过编写一个名为`fun`的函数来判断输入的三位数是否为水仙花数。这个函数首先通过取整运算获取百位、十位和个位的数字,然后计算它们的立方和,最后与输入的数进行比较。例如,如果输入的数是153,那么`bw`将为1,`sw`将为5,`gw`将为3,函数会检查1^3 + 5^3 + 3^3是否等于153。 ```c #include "stdio.h" int fun(int n) { int bw, sw, gw; bw = n / 100; sw = n / 10 % 10; gw = n % 10; if (n == bw * bw * bw + sw * sw * sw + gw * gw * gw) return 1; else return 0; } int main() { int n, flag; scanf("%d", &n); flag = fun(n); if (flag) printf("%d 是水仙花数\n", n); else printf("%d 不是水仙花数\n", n); return 0; } ``` 【数组中的最小值】 在C语言中,我们可以创建一个函数`fun`来找出整型数组中的最小值。这个函数遍历数组并比较当前元素与已知最小值,如果找到更小的元素,则更新最小值。在主函数`main`中,先读取10个整数到数组,然后调用`fun`函数,最后输出最小值。 ```c #include "stdio.h" int fun(int x[], int n) { int min, i; min = x[0]; for (i = 1; i < n; i++) { if (x[i] < min) min = x[i]; } return min; } int main() { int a[10], i, min; for (i = 0; i < 10; i++) scanf("%d", &a[i]); printf("输入的数组是:"); for (i = 0; i < 10; i++) printf("%3d", a[i]); printf("\n"); min = fun(a, 10); printf("数组中的最小值是:%d\n", min); return 0; } ``` 【素数判断】 素数是只能被1和它本身整除的正整数。可以编写一个`fun`函数,接收一个整数`n`作为参数,通过循环从2到`n-1`检查是否有能整除`n`的数。如果找到这样的数,说明`n`不是素数,返回0;反之,如果循环结束都没有找到,说明`n`是素数,返回1。 ```c #include "stdio.h" int fun(int n) { int i; for (i = 2; i < n; i++) { if (n % i == 0) break; } if (i >= n) return 1; else return 0; } int main() { int m, flag; printf("请输入一个整数:"); scanf("%d", &m); flag = fun(m); if (flag) printf("%d 是素数。\n", m); else printf("%d 不是素数。\n", m); return 0; } ``` 【特定范围内的素数计数】 为了找到100到200之间所有素数的数量,我们可以创建一个主函数,循环遍历该范围,对每个数调用`fun`函数。当找到素数时,计数器加1,并每打印5个素数换行。输出素数的总数。 ```c #include "stdio.h" int fun(int m) { int i, k = 1; if (m <= 1) k = 0; for (i = 2; i < m; i++) if (m % i == 0) break; if (i >= m) return 1; else return 0; } int main() { int m, k = 0; for (m = 100; m < 200; m++) { if (fun(m)) { printf("%4d", m); k++; if (k % 5 == 0) printf("\n"); } } printf("素数的个数k=%d\n", k); return 0; } ``` 这些程序设计题展示了C语言的基本操作,如输入输出、条件判断、循环以及函数的使用。通过这些例子,我们可以学习到如何处理整数、判断素数、找出数组中的最小值以及实现特定逻辑的函数。
- 粉丝: 195
- 资源: 3万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助