C语言小题求大神指教!

题目内容:
你的程序要读入一系列正整数数据,输入-1表示输入结束,-1本身不是输入的数据。程序输出读到的数据中的奇数和偶数的个数。

输入格式:

一系列正整数,整数的范围是(0,100000)。如果输入-1则表示输入结束。

输出格式:

两个整数,第一个整数表示读入数据中的奇数的个数,第二个整数表示读入数据中的偶数的个数。两个整数之间以空格分隔。
我编写的错在何处?
#include<stdio.h>
int main()
{int n, ji=0,ou=0,k;

scanf("%d",&n);
while(n!=-1){
k=n%2;
if(k=0){
ou++;}

else {
ji++;}
scanf("%d",&n);
}
printf("%d%d\n",ji,ou);
return 0;}

#include<stdio.h>
int main()
{int n, ji=0,ou=0,k;

scanf("%d",&n);
while(n!=-1){
k=n%2; 
if(k==0){//<---------------
ou++;}

else {
ji++;}
scanf("%d",&n);
}
printf("%d %d\n",ji,ou);//<------------
return 0;}

温馨提示:内容为网友见解,仅供参考
无其他回答

c语言菜鸟求大神指教 想自己定义函数求10位数的平均值来着。。。_百 ...
int main(int a,int b,int c,int d,int e,int f,int g,int h,int i,int j);{ int a,b,c,d,e,f,g,h,i,j,average;while (1){ printf("请输入一门课中所有学生的分数\\n");scanf("%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",&a,&b,&c,&d,&e,&f,&g,&h,&i,&j);prin...

有一个c语言的问题不会,求大神指教!!
break是跳出当前的包含 break的最近的一层循环。循环就是,因为a=1,已经赋值了,所以for的第一个没有,只写了一个分号,表示从a=1 开始,进行循环体的内容,如果a是偶数,则跳出for循环。如果不是偶数,则b=b+a,然后a= a+1,继续循环,这一次,a是偶数了,跳出for循环,所以后面那个b+=a就...

C语言编程 求S=aa….a(n个a) -… -aaa - aa - a的值 , 其中a=3,n=6...
for(z=1;z<n-1;z++){ a=a*10+t;s1=s1-a; } 这段的意思应该是把 -… -aaa - aa - a的值算出来,换成 for(z=1;z<n-1;z++){s1=s1-a;a=a*10+t;} 然后:for(z=1;z<n;z++){a=a*10+t;s2=a;} 这段意思是算aaaa(n个a),因为a变量在之前的循环已经变成了aaaa...

C语言编程问题,求大神指教 编写程序,输入两个正整数m和n,求∑(i*i+...
s += m*m+1\/m;改成 s += m*m+1.0\/m;

C语言,求指教!输入整数m,n。输出m行n列的 * 图案。请问应该怎么写程序...
做个双层循环就好了,include <stdio.h> int main(int argc, char *argv[]){ int m,n,j,k;scanf("%d%d",&m,&n);\/\/接收m、n,两数字中间用空格或回车 for(j=0;j<m;++j)\/\/设计行数 { for(k=0;k<n;++k)\/\/设计列数 printf("*");printf("\\n");\/\/换行 } return 0;} ...

C语言有关方程的问题,高手指教
其中a,b,c都是整数,所求的解(x,y)也是整数.由于方程(*)如果有解,则解不是唯一确定的,所以称为不定方程.二元一次不定方程是一类重要的方程,应用很广.关于方程(*)的可解性,有下面的两个重要的结论:(1)设gcd(a,b)表示整数a,b的最大公约数.方程(*)有解的充分必要条件是gcd(a,b)|c.(...

c语言问题,本人新手,编了一个解方程的小程序,不知哪里出错,望指教。
x1=%lf,x2=%lf",x1,x2);} else if (delta==0){ x2=x1=(-b+sqrt(delta))\/2*a;printf("有一个解:x1=x2=%lf",x1);} else if (delta<0){ printf("无解");} } 首先 你的输入状态好像有些不是英文状态 我已帮你改过 还有就是4ac 不能这样写 c语言环境没那么聪明 ...

二级C语言问题,请指教。谢谢
9 9 11 for(j=3; j; j--){ switch(j){ case 1:case 2: printf("%d",*p++); break; \/*此break只是退出switch语句*\/ case 3: printf("%d",*(--p));} } 当i=3时,执行switch语句中的printf("%d",*(--p)) 输出9 当i=2时,执行switch语句中的printf("%d",*p++...

...是在不知道哪里错了,输出来。总是是if,求大神指教。
define PAI 3.14 int main(){ double fRadius;double fResult=0;printf("请输入圆的半径:");scanf("%lf",&fRadius);fResult=PAI*fRadius*fRadius;printf("圆的面积为:%.2lf\\n",fResult);return 0;} 你有3个地方错了 1、scanf("%If",&fRadius);2、fResult=fRadius*fRadius;3、...

一个简单的C语言问题。。。求大神指教一下
在输入数值前(%d %f)可以有任意多个空白字符,如空格 回车 TAB 输入数值时,遇到第一个非数字字符,则结束数值输入(浮点数据中,小数点除外)按以上原则,A 2.0后有空格,不对,导致c1读到的是空格 B 同理,4.0后空格导致c2错 D 同理,2后的空格导致后续读数据错位 C 没有问题!

相似回答