爱热闹的东瓶西镜放 2021-03-14 12:49 采纳率: 0%
浏览 3

求助[face]monkey:50.gif[/face]我写的哪里不对,求指教[face]monke

求助[face]monkey:50.gif[/face]我写的哪里不对,求指教[face]monkey:50.gif[/face]
  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-07-24 02:28
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    您的代码在某些地方有错误,这里有一些建议来帮助您修复它:

    1. main() 函数中,main() 函数应该是程序的入口点,并且应该使用 int main(void)
    2. countcount1 应该初始化为 0,而不是 int 类型。
    3. scanf("%d",&n); 改为 scanf("%d", &n);,因为 & 是指向变量地址的操作符,而 %d 是用于读取整数的字符序列。

    以下是修改后的代码:

    #include <stdio.h>
    
    int main() {
        int n;
        scanf("%d", &n);
        
        // 计算及格率
        int count = 0;
        for (int i = 1; i <= n; i++) {
            if (i >= 60) {
                count++;
            }
        }
        float pass_rate = ((float)count / n) * 100;
        
        // 计算优秀率
        int count1 = 0;
        for (int i = 1; i <= n; i++) {
            if (i >= 85) {
                count1++;
            }
        }
        float excellent_rate = ((float)count1 / n) * 100;
        
        printf("%.1f%%\n", pass_rate);
        printf("%.1f%%\n", excellent_rate);
        
        return 0;
    }
    

    这段代码应该可以正确运行并输出及格率和优秀率的结果。

    评论

报告相同问题?