一个简单的C程序帮我看看哪错了谢谢啊

#include<stdio.h>
void main()
{int x,n1,n2;
printf("输入号码");
scanf("%d",&x);
while(x){
if(x==1)n1+=1;
if(x==2)n2+=1;
printf("输入号码");
scanf("%d",&x);
}
printf("%d %d",n1,n2);
}
为什么我按0后输出的是=-858993457,-858993457
谁能告诉我哪错了谢谢了啊

因为按0直接就跳出while循环了

接着你就打印 n1, n2 , 但是你前面 n1, n2,都没初始化,
就变成-858993457了

你可以把int x,n1,n2; 改成 int x, n1=0, n2=0;
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-04-12
输入0后,while(x)直接结束,{}内的没有执行,n1,n2还没有赋值。
第2个回答  2009-04-12
没有声明函数

c语言 帮我看一下哪里错了 我第一次编写啊, 谢啦
前后变量名不一致,函数名打错,引号的全角和半角打错,总之全部是粗心犯的错。int main (void){ \/\/把三个系数保存到计算机中 int a = 1; \/\/不表示相等, 表示赋值 int b = 2;int c = 3;double delt; \/\/delt 存放的是 b*b - 4*a*c double x1; \/\/存放一元二次方程的其中一个解...

大佬帮忙看看这个程序错在哪了,刚学C语言?
int main(){int price=0; \/\/该处由‘,’改为‘;’printf("请输入金额(元) :") ;\/\/该处缺少分号scanf("%d",&price);int change=100-price;printf("找您%d元。\\n",change);return 0;} 运行结果如下:

C语言!帮忙看下我写的这个程序错在哪里了,谢谢!用的是二次插值法.
while(1)

编一个c语言程序,输入数字,以汉字输出,帮忙看看哪错了,运行时提示for...
应该是 for(i;i>0;i--)

帮看下这个C程序,哪里转换错了,输入3.67 5.43 6.21结果如图
类型不匹配!double a,b,c,s,area;scanf("%d %d %d",&a,&b,&c);double 类型数据必须按 %lf格式输入,改成 scanf("%lf %lf %lf",&a,&b,&c);

c语言:如图,请问一下哪里出错了?
首先解答一下这个C语言代码出错的原因:第一个gets未定义:出现这个错误一般是没有包含相应的头文件,或者库里没有这个函数。这里应该是没有这个函数。gets(char *dest)是一个老的库函数,采用这个函数存在越界的安全隐患。它只有一个参数,如果输入的字符个数超过dest内存空间,程序可能失败,也可能被黑客...

大神帮我看看这个C语言的程序(用户输入4位数和原四位数对比)哪错了...
'2','3','4'};顺便纠正另一个错误 \/\/ 输入字符的命令是 %c 而不是 %1sprintf("%c", &enter[o]);这样您的每一个printf后面的getchar()就是多余的了 程序也能正常退出不跳错误 这里附上更正后的完整程序给您参考 include <stdio.h>int main(void) {char PIN[4] = {'1','2','3...

C语言开关灯问题,麻烦大神们帮我看看这个程序哪里错了啊,结果不对...
两个错误:1、int a[6000]={1};这句。你这只是将a[0]赋值1,其他都是0,数组默认以0填充,应该改为:int a[6000];for(i=0;i<6000;i++)a[i]=1;2、第二层循环里:if(a[j]==0)a[j]=1;if(a[j]==1)a[j]=0;这个语句把所有的灯都关闭了,因为如果关了,就打开;打开后又...

大学c语言!!编程题 帮忙看看我做的答案有没有错误!!谢谢大家了。
\/*程序1 通过输入两个加数给学生出一道加法运算题,如果输入答案正确,则显示“正确!”,否则显示“错误!”,程序结束。*\/ include void main(void){ int a,b,s;printf("请输入两个数:");scanf("%d%d",&a,&b);printf("请输入%d+%d的结果=",a,b);scanf("%d",&s);if(s==a+b)p...

c语言 输出二次函数的根。帮我看看错在哪了,谢谢啊
{ double a,b,c,x1,x2,d,i,t;printf("请输入 a,b,c:\\n");scanf("%lf,%lf,%lf",&a,&b,&c);d=b*b-4*a*c;i=sqrt(-1);if(a==0)printf("不是二次函数\\n");else if(d>0){ x1=(-b+sqrt(d))\/(2*a);x2=(-b-sqrt(d))\/(2*a);printf("x1=%lf,x2=%lf...

相似回答
大家正在搜