『壹』 c語言求所有三位數水仙花數
在for語句包含了對i進行賦值「i=100」,當你將「a=i/100;b=(i-100*a)/10;c=i%10;」提到for語句前,i由於沒有初始值,i/100的操作就會報錯,則語句就會出錯
『貳』 求三位數的水仙花數的C語言,請問這樣寫為什麼錯了
#include<stdio.h>
#include<math.h>
voidmain()
{
inti=100,n,x,s;
while(i<1000)
{
s=0;
for(n=i;n;n/=10)
{
x=n%10;
s+=pow(x,3);
}
if(s==i)printf("%-4d",i);
i++;
}
}
每計算完一個三位數,必須將立方和s清零,否則s會將所有數的立方和累加起來。
『叄』 c語言。。用if語句編程,輸入一個三位數,判斷是否為水仙花數。
三位的水仙花數就是每一位的立方之和和這個三位數相等的數,用if語句編程,輸入一個三位數,判斷是否為水仙花數,可以參考以下的代碼:
include<stdio.h>
main()
{ int x,a,b,c;
scanf("%d",x);
a=x/100;
b=(x/10)%10;
c=x%10;
if(x==a*a*a+b*b*b+c*c*c)
printf("YES");
else
printf("NOT");
}
(3)水仙花數三位數c語言擴展閱讀:
if的返回值為真或假,可以用bool型變數進行存儲,佔用一位元組。
C語言中提供了2種形式的if語句:
1、if(表達式)語句1,例如:
if(x>y)
printf("%d",x);
2、if(表達式),語句1
else
語句2,例如:
if(x>y)
printf("%d",x);
else
printf("%d",y);
『肆』 3位數水仙花數 C語言的問題
你有些語句位置放錯了已幫你修改好了,可以通過運行
#include<stdio.h>
void
main
()
{
int
a,b,c,e,a3,b3,c3;
a=1;
while(a<=9)
{
b=0;
while(b<=9)
{
c=0;
while(c<=9)
{a3=a*a*a;
b3=b*b*b;
c3=c*c*c;
e=a*100+b*10+c;
if(e-a3-b3-c3==0&&e>=100&&e<=999)
printf("%d=%d+%d+%d\n",e,a3,b3,c3);
c++;
}
b++;
}
a++;
}
}
我還有兩種方法:(不過本質都一樣)
1.
#include<stdio.h>
void
main()
{
int
i,j,k;
for(i=1;i<=9;i++)
{for(j=0;j<=9;j++)
{for(k=0;k<=9;k++)
if((i*i*i+j*j*j+k*k*k)==(i*100+j*10+k))
printf("%d\n",i*100+j*10+k);}
}
}
2.
#include
<stdio.h>
main()
{
int
i,j,k,n;
printf("'water
flower'number
is:");
for(n=100;n<1000;n++)
{
i=n/100;
j=n/10%10;
k=n%10;
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
{
printf("%-5d",n);
}
}
printf("\n");
}
『伍』 c語言編程題 找出所有的水仙花數,水仙花數是指一個3位數
import org.junit.Test;
public class NarcissusNumber{
public void isNarcissusNumber(){
//循環[100,999]
for(int i=100;i<=999;i++){
//分割出個位
int a=i%10;
//分割出十位
int b=i/10%10;
//分割出百位
int c=i/100;
//判斷該數是否等於【個位的三次方+十位的三次方+百位的三次方】
if(i==(Math.pow(a,3)+Math.pow(b,3)+Math.pow(c,3))){
System.out.println(i+"是水仙花數");
}
}
}
Test
public void test(){
isNarcissusNumber();
}
/**
*結果:
*--->153是水仙花數
*--->370是水仙花數
*--->371是水仙花數
*--->407是水仙花數
*/
}
(5)水仙花數三位數c語言擴展閱讀:
import用法
靜態的import語句用於導入由另一個模塊導出的綁定。無論是否聲明了strict mode,導入的模塊都運行在嚴格模式下。在瀏覽器中,import語句只能在聲明了type="mole"的script的標簽中使用。
此外,還有一個類似函數的動態import(),它不需要依賴type="mole"的script標簽。
在script標簽中使用nomole屬性,可以確保向後兼容。
在您希望按照一定的條件或者按需載入模塊的時候,動態import()是非常有用的。而靜態型的import是初始化載入依賴項的最優選擇,使用靜態import更容易從代碼靜態分析工具和tree shaking中受益。
語法
import defaultExport from"mole-name";
import*as name from"mole-name";
import{export}from"mole-name";
import{export as alias}from"mole-name";
import{export1,export2}from"mole-name";
import{foo,bar}from"mole-name/path/to/specific/un-exported/file";
import{export1,export2 as alias2,[...]}from"mole-name";
import defaultExport,{export[,[...]]}from"mole-name";
import defaultExport,*as name from"mole-name";
import"mole-name";
var promise=import("mole-name");//這是一個處於第三階段的提案。
defaultExport
導入模塊的默認導出介面的引用名。
mole-name
要導入的模塊。通常是包含目標模塊的.js文件的相對或絕對路徑名,可以不包括.js擴展名。某些特定的打包工具可能允許或需要使用擴展或依賴文件,它會檢查比對你的運行環境。只允許單引號和雙引號的字元串。
name
導入模塊對象整體的別名,在引用導入模塊時,它將作為一個命名空間來使用。
export,exportN
被導入模塊的導出介面的名稱。
alias,aliasN
將引用指定的導入的名稱。
『陸』 c語言問題,求三位數的水仙花數,編寫了這個程序
。。。。你的思路好特別啊
層次感很強。
可能你是不走尋常路
我這里提供一種普通的
#include<stdio.h>
void main()
{
int i,a,b,c,d;
for(i=100;i<1000;i++)
{a=i%10;
b=i/10%10;
c=i/100;
d=a*a*a+b*b*b+c*c*c;
if(i==d)
printf("%d\n",i);
}
}
『柒』 c語言。。用if語句編程,輸入一個三位數,判斷是否是水仙花數。
1、嚴格的水仙花是三位數,並且其每位數的三次方的和等於它的本身。
例子如下:370是一個嚴格的水仙花數,3^3+7^3+0^3=370.
2、C 語言的"水仙花數"實現代碼:
#include <stdio.h>
#include<math.h>
int main (void) {
long n,p;
long c,a,j,s[30],i,q;
p=0;
a=10;
scanf("%ld",&n);
q=n;
for (i=1;c>10 ;++i) {
c=n/a;
a=a*10;
}printf("i=%ld,a=%ld \n",i,a);
for (j=1;a>=10 ;++j) {
s[j]=n/(a/10);
n=n-s[j]*(a/10);
a=a/10;
printf("j=%ld,a=%ld\n",j,a);
}
for (j=1;j<=i ;j++) {
p+=pow(s[j],i);
printf("p=%ld,i=%ld\n",p,i);
}
if (p==q) {
printf("%ld 為水仙花數",q);
}else {
printf("%ld 該數不是水仙花數",q);
}
return 0;
}
『捌』 c語言 編程求三位數的水仙花數
#include <stdio.h>
int main()
{
int i;
for( i=100; i<1000; i++)
{
int num0 = i%10;
int num1 = i/10%10;
int num2 = i/10/10%10;
if(i==(num0*num0*num0+num1*num1*num1+num2*num2*num2))
{ printf("%5d", i);
}
}
return 0;
}
『玖』 c語言水仙花數
#include <stdio.h>
int main()
{
int start, end, i = 0, a, b, c, size = 0;
while (scanf("%d %d", &start, &end) == 2)
{
for (i = start; i <= end; i++)
{
a = i / 100;
b = i / 10 % 10;
c = i % 10;
//total = pow(c, 3) + pow(a, 3) + pow(b, 3);
if ((a*a*a + b*b*b + c*c*c) == i) //滿足水仙花條件
{
if (size == 0) //size=0輸出第一個水仙花數
{
printf("%d", i);
}
else //size++輸出第二。。第n個水仙花數
{
printf(" %d", i);
}
size++; //個數++;
}
}
if (size == 0) //范圍內個數為0,則說明沒有滿足條件的
{
printf("no");
}
printf(" ");
}
return 0;
}
(9)水仙花數三位數c語言擴展閱讀:
需要注意的地方:
1.將n整除以100,得出n在百位上的數字hun。
2.將(n-i*100)整除以10(或將n先整除以10再對10求模n/10%10),得出n在十位上的數字ten。
3.將n對10取余,得出n在個位上的數字ind。
4.求得這三個數字的立方和是否與其本身相等,若相等,則該數為水仙花數。
網路-水仙花數