#include
#define N 10000
int main()
{
char str[N];
int i,j,counter=0,T,number=0;
scanf("%d ",&T);
for(j=0;j {
gets(str);
for(i=0;str[i]!='\0';i++)
{
if(str[i]=='Q')
{
counter++;
}
else
{
number++;
}
}
if(counter>number)
{
printf("Simple\n");
}
else
{
printf("晴天\n");
}
}
return 0;
}
不知道哪错了。
字符串长度小于10000,只输入Q和S
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- T_world 2016-12-21 12:52关注
因为你的程序每次循环结束后没有把counter和number这两个变量清零,所以把每次的值都算上了,比如第一次输入SQS,counter为1,number为2,第二次输入QQS,这时counter和number都变成了3,所以都是输出晴天,你只要在输出语句的后面加上counter和number清零的代码就可以了
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 Opencv(C++)异常
- ¥15 VScode上配置C语言环境
- ¥15 汇编语言没有主程序吗?
- ¥15 这个函数为什么会爆内存
- ¥15 无法装系统,grub成了顽固拦路虎
- ¥15 springboot aop 应用启动异常
- ¥15 matlab有关债券凸性久期的代码
- ¥15 lvgl v8.2定时器提前到来
- ¥15 qtcp 发送数据时偶尔会遇到发送数据失败?用的MSVC编译器(标签-qt|关键词-tcp)
- ¥15 cam_lidar_calibration报错