当前位置: 代码迷 >> C语言 >> 大家帮帮忙,明天下午就要用了!!!!(就简单几道题)
  详细解决方案

大家帮帮忙,明天下午就要用了!!!!(就简单几道题)

热度:374   发布时间:2005-09-19 23:15:00.0
大家帮帮忙,明天下午就要用了!!!!(就简单几道题)

大家帮帮忙,明天下午就要用了!!!! 1. 编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:计算正整数num的各位上的数字之积。例如,若输入:252,则输出应该是:20。若输入:202,则输出应该是:0。

2. 编写一个函数fun,然后设计主函数调用函数fun。函数fun的功能是:统计不超过一个整数m(包括m且m33)的素数个数(不包括1和2)。 3. 编写函数int fun (int lim, int aa[MAX] ),该函数的功能是求出小于lim的所有素数并放在aa数组中,该函数返回所求出素数的个数。然后编写主函数调用它。

搜索更多相关的解决方案: 设计  统计  正整数  

----------------解决方案--------------------------------------------------------
1。可以这样啊,把这个数分开啊,如出252可以分为百位为252/100=2,252%100/10=5,252%10=2.然后在把他们相乘不就出来啦。
----------------解决方案--------------------------------------------------------

问题2和3可以共用一个函数,代码如下: // File Name: bbs_main.cpp // Author : olive zhang // Date : Sep. 21. 05

#include <iostream.h> #include <string.h> #include <stdlib.h> #include <math.h> #include <stdio.h> #include <iomanip.h>

int MultiplyFactor(int digit); // function of the first question

int GetPrimeNumber(int Num, int *primeNum); //function of the second and third question int Light(int lightNum); int main() { // Q1: int factor; int multiResult; cin >> factor; multiResult = MultiplyFactor(factor); cout << "multiResult = " << multiResult << endl; // Q2 and Q3: int num; int n; int primeNum[100]; cin >> num;

n = GetPrimeNumber(num, primeNum); cout << "prime number is: " << endl; for (int i=0; i<n; i++) { cout <<setw(4) << primeNum[i]; if ((i+1)%10 == 0) cout << endl;

} cout << endl; cout << "n:" << n << endl;

return 0; }

//------------------------------------------------------------------------// // Function: MultiplyFactor() // Input : digit // Output : return the result of caculation //------------------------------------------------------------------------//

int MultiplyFactor(int digit) { int result = 1; int n = 1; int base = 1;

if (digit == 0) return 0;

if (digit < 0) digit = -digit;

while (digit) { result *= digit%10; digit /= 10; }

return result; }

//------------------------------------------------------------------------// // Function: GetPrimeNumber() // Input : Num -- a digit for caculating prime number // primeNum -- a pointer for saving prime numbers // Output : return the counts of prime number //------------------------------------------------------------------------// int GetPrimeNumber(const int Num, int *primeNum) { int number = Num; int n = 0; int flag = 1; if (number < 0) number = -number;

for (int i=3; i<number; i++) { int temp = (int)sqrt(i+1); for (int j=2; j<=temp; j++) { if (i%j == 0) { flag = 0; break; } }

if (flag) { primeNum[n] = i; //cout << primeNum[n] << " "; n++; } flag = 1; }

return n; }


----------------解决方案--------------------------------------------------------

问题一:草率的写了一下,可以运行. #include<stdio.h>

void fun(int m) { int t=1; int n; if(m==0) printf("%d",0); else { while (m>0) { n=m%10; t=t*n; m=m/10; } printf("%d",t); } }

void main() { int m; printf("please input m\n"); scanf("%d",&m); fun(m); printf("\n"); getch(); }


----------------解决方案--------------------------------------------------------
好厉害
我学会了好多
----------------解决方案--------------------------------------------------------
好代码,这令我受益非浅啊
----------------解决方案--------------------------------------------------------
作业题也可以替做吗?
----------------解决方案--------------------------------------------------------
我的想法和一楼的相同~
----------------解决方案--------------------------------------------------------
呵呵,比较厉害啊
----------------解决方案--------------------------------------------------------
#include&lt;stdio.h&gt;
void fun(int  x)
{
  int a,b,c,s;
       a=x/100;
       b=x%100/10
       c=x%100
       s=a*b*c
  printf("求出的结果:%d",s);
}
void main()
{
  int num;
  printf("请输入一个整数:",%d);
  scanf("%d",&amp;num);
  fun();
}
----------------解决方案--------------------------------------------------------
  相关解决方案