1 "/*下 面 代 码 的 功 能 是 将 百 分 制 成 绩 转 换 为5 分 制 成 绩 , 具 体 功 能 是 : 如 果 用 户 输 入 的是 非 法 字 符 或 者 不 在 合 理 区 间 内 的 数 据 ( 例 如 输 入 的 是a,或 者102, 或 -45 等 ) , 则 程 序 输 出 Input error
, 并 允 许 用 户 重 新 输 入 ,直 到 输 入 合 法 数 据 为 止 , 并 将 其 转 换 为5 分 制 输 出
目 前程 序 存 在 错 误 , 请 将 其 修 改 正 确
并 按 照 下 面 给 出 的 运 行 示 例 检 查 程 序
*/ #include #include int main() { char score[100]; int flag = 0, i, s; char grade; printf(""Please input score:\n""); while (1) { flag=0; scanf(""%s"", score); for (i = 0; i < strlen(score); i++) { if (score[i] >= '0' && score[i] 100 || flag == 1) { printf(""Input error
\n""); printf(""Please input score:\n""); continue; } else{ break; } } s = atoi(score); if (s >= 90) { grade = 'A'; } else if (s >= 80) { grade = 'B'; } else if (s >= 70) { grade = 'C'; }