分解質因數c語言
① 關於翁愷c語言之習題「分解質因數」的問題
把printf("%ld*",a);改成printf(digital>1 ? "%ld*" : "%ld\n",a);即可。這種東西只能「因地制宜」……
② C語言分解質因數
#include <stdio.h>
int main(){
int n; // 用戶輸入的整數
int i; // 循環標志
printf("輸入一個整數:");
scanf("%d",&n);
printf("%d=",n);
// n>=2才執行下面的循環
for(i=2; i<=n; i++){
while(n!=i){
if(n%i==0){
printf("鎮鬧乎%d*",i);
n=n/i;
}else
break;
}
}
printf("%d ",n);
return 0;
}
③ c語言分解質因數怎麼用指數的形式表示 比如180=2*^2 *3^2 *5
外函數:y=e^u
內函數:u=φ(x)
復合函數:y=e^(φ(x))
導數:y'=[e^(φ(x))]'=[e^u]'*φ'(x)=y*φ'(x)=e^(φ(x))*φ'(x)
[e^(-x^2)]'=e^(-x^2)*(-2x)
④ C語言編程 將一個正整數分解質因數。例如:輸入90,列印出90=2*3*3*5
聲明一int型變數n接收鍵盤輸入並限制為正數。另一int型變數i初值賦2,用i去除n,能被整除則輸出i為質因數,並將n賦值為n/i;不能整除則i增1再去除n的新值……如此反復至n==1為止。輸出時,在n==1之前增印一個*號表示「乘」。代碼如下:
#include"stdio.h"
intmain(intargc,char*argv[]){
intn,i;
printf("Inputn(intn>0)... n=");
if(scanf("%d",&n)!=1||n<1){//輸入並限制大於0
printf("Inputerror,exit... ");
return0;
}
printf(" %d=",n);
for(i=2;n>1;){//分解質因數,i從2開始
if(n%i==0){//能被i整除則輸出因數i
printf("%d",i);
if((n/=i)>1)//未到最後一個因數則輸出一個*號
printf("*");
}
else//不能被i整除則i增1
i++;
}
printf(" ");
return0;
}
運行樣例如下:
⑤ c語言將一個正整數分解質因數,望高手幫我詳細解釋一下程序
1、首先打開vc6.0, 新建一個vc項目,添加頭文件。
⑥ 怎麼用C語言將一個正整數分解質因數.例如,輸入90,輸出90=2*3*3*5
#include "stdio.h"
void main()
{int m,i,j=0;
printf("please input the number:\n");
scanf("%d",&m);
for(i=2;i<=m;i++)
{while(m%i==0)
{j++;
if(j==1) printf("%d=%d",m,i);
else printf("*%d",i);
m=m/i;
}
}
}
沒有用中文,怕你用的是TC,那就會出現亂碼,這程序關鍵在於尋找質因數和輸出格式的控制。