c语言-这段代码为什么没有输出

问题描述

这段代码为什么没有输出

#include "stdio.h"
#include "math.h"
#include "time.h"

int main()
{

int n=100,a,b,c;

for(n=100; n<1000; n++)
{
a = n/100;
b = n/10%10;
c = n%10;

   if(n == a*a*a + b*b*b + c*c*c)
    printf("%d
",n);
    else
        return 0;

}

return 0;

}

解决方案

去掉2行。

 #include "stdio.h"
#include "math.h"
#include "time.h"
int main()
{
    int n=100,a,b,c;
    for(n=100; n<1000; n++)
    {
        a = n/100;
        b = n/10%10;
        c = n%10;
        if(n == a*a*a + b*b*b + c*c*c)
            printf("%d
",n);
        //else
        //  return 0;
    }
    return 0;
}

解决方案二:

那条else语句根本没必要,去掉else return 0;不然一开始没找到符合的数,就直接返回了

解决方案三:

为什么这段代码输出的是”Hello World”

解决方案四:

n == a*a*a + b*b*b + c*c*c 这个判断一直不通过

解决方案五:

n == a*a*a + b*b*b + c*c*c 这个判断一直不通过

解决方案六:

n == a*a*a + b*b*b + c*c*c 这个判断一直不通过

解决方案七:

水仙花数啊,算法没错

解决方案八:

你把else return 0去掉就行了

解决方案九:

for循环变量写错了,虽然我不懂c

解决方案十:

 if(n == a*a*a + b*b*b + c*c*c)
    printf("%d
",n);
    else
        return 0;

去掉这两句,

 else
        return 0;

只剩下if

时间: 2024-11-09 00:20:09

c语言-这段代码为什么没有输出的相关文章

二维数组-请问这段代码中最后输出元素的时候,有必要加个空格吗?

问题描述 请问这段代码中最后输出元素的时候,有必要加个空格吗? static void Main(string[] args) { int[,] score = new int[3, 5]; score[0, 0] = 103; score[1,4] = 80; for (int i = 0; i <3; i++) { for (int j = 0; j < 5; j++) { Console.Write(score[i, j] + " "); Console.WriteL

c语言-这段代码哪里错了,为啥不能运行

问题描述 这段代码哪里错了,为啥不能运行 #include int main() { int h=3; float r=1.5,pi=3.14; float perimeter,area1,area2,volume; perimeter=2*pi*r; area1=2*pi*r*h; area2=2*pi*r*r+4*pi*r*h; volume=pi*r*r*h; printf("底面圆周长为:%fn",perimeter); printf("圆柱侧面积为:%fn"

c语言-这段代码的问题请大神们告诉我一下吧~··· debug提示的问题我没懂。。。

问题描述 这段代码的问题请大神们告诉我一下吧~··· debug提示的问题我没懂... #include #include struct student { char name; int age; int no; struct student *next; }; main() { struct student create(void) { struct student *p1,*p2,*head; head = NULL; p1 = p2 = (struct student)malloc(siz

c语言-为什么我在一个c程序末尾加入一段代码后前面的代码输出内容没了?加代码 后 前 程序如下

问题描述 为什么我在一个c程序末尾加入一段代码后前面的代码输出内容没了?加代码 后 前 程序如下 代码有点长,我只想知道加代码后变化的原因 #include"stdio.h" static int k = 0; int h[120][5] = { 0 }; int t, g, n, m, i=5, j=1, c; void output(int b[5]) { int p; for (p = 0; p <= 4; p++) { printf("%d ", b[

c语言程序问题,求一段代码

问题描述 c语言程序问题,求一段代码 求一段c语言代码:有一个已排好序的数组,要求输入一个数后,按原来排序的规律将其插入数组中 解决方案 #include<iostream> #include<iomanip> using namespace std; int main() { int i; cout<<"原来数列为:"<<endl; int a[11]={1,2,3,5,6,7,8,9,10,11}; for(i=0;i<=8;i

verilog-这段代码是计算两个数相除,不能输出正确结果,求问错在哪里

问题描述 这段代码是计算两个数相除,不能输出正确结果,求问错在哪里 module divide_16bits(op1,op2,result ); input [15:0] op1; input [15:0] op2; output reg [15:0] result; reg error; integer p,q,r; reg [15:0] temp; reg [15:0] add_result; always @(op1 or op2) begin assign error = ~{|{op2

c语言-C语言,这段代码是什么问题啊?

问题描述 C语言,这段代码是什么问题啊? #include #include #include typedef struct { char name[20]; int age; }info; void getinfo(info*pinfo) { printf("请输入姓名:n"); gets(pinfo->name); printf(" 请输入年龄:n"); scanf("%d",&pinfo->age); } void ma

c语言数组定义-哪个大神能帮我解释下这段代码,在线等

问题描述 哪个大神能帮我解释下这段代码,在线等 这个是凯撒密码的代码,哪个大神帮我看哈我的这个里面每句的意思 解决方案 把英文字母变换一下,如D换为AA换为X,B换为Y 解决方案二: 就是获取到输入的字符串,然后对每一位进行判断,如果在区间[dz]或区间[DZ]减3,剩下的加23 解决方案三: 就是获取到输入的字符串,然后对每一位进行判断,如果在区间[dz]或区间[DZ]减3,剩下的加23 解决方案四: 就是获取到输入的字符串,然后对每一位进行判断,如果在区间[dz]或区间[DZ]减3,剩下的加

c++-为什么这段代码循环输出的数组少了第一个元素且多出了一个随机数?

问题描述 为什么这段代码循环输出的数组少了第一个元素且多出了一个随机数? 输入一些非负实数 用数组输出这些数 求平均数并输出(输入负数时报错并退出重新输入,输入回车时执行下一步操作) #include using namespace std; int main() { int i,j,k; double a[100],sum=0,avr; part1: cout<<"输入数字"< j=0,k=0; for (i=0;getchar()!='n';i++) { cin&