帮忙看看哪里出问题了
帮忙看看哪里出问题了,输入0的时候才会输出小了,否则都只会输出大了#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
srand (time(0));
int a = rand()%100+1;
int x;
int n=0;
do{
scanf("%f",&x);
n ++;
if(a>x){
printf("小了");
}
else if (a<x){
printf("大了");
}
}
while(a!=x);
printf("历经%d次猜中了",n);
return 0;
} #include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{ srand (time(0));
int a = rand()%100+1;
int x;
int n=0;
do{ scanf("%d",&x);
n ++;
if(a>x){
printf("小了"); } else if (a<x){
printf("大了"); } } while(a!=x);
printf("历经%d次猜中了",n);
return 0;}
a > x打印小了..你是不是写反了 你在scanf函数那儿出错,int 类型用%d或%i,%f读取一个单、双精度浮点数(需要使用 lf),前边可以加上符号(+ 或 -)表示正负,你debug一下代码会发现x的值不是你输入的值
哦完蛋了,我一开始写的是float所以才写的%f,后来改成int忘记改回来了啊好尴尬 qiuyouzhi 发表于 2021-7-27 22:13
a > x打印小了..你是不是写反了
啊这个倒是没错,x是输入值小于随机数确实应该是 小了
页:
[1]