鱼C论坛

 找回密码
 立即注册
查看: 771|回复: 8

[已解决]这个怎么写?

[复制链接]
发表于 2023-12-4 13:53:38 | 显示全部楼层 |阅读模式
10鱼币
任务描述
已知有若干组数据,每组数据为3个整数a,b,c,表示一个加法算式a+b=c。请你编程读入若干组数据,输出正确算式的数量。

输入样例:
5 6 12  7 8 15  5  8  14
输出样例:
1
输入样例:
1 5 5 8 20 30
输出样例:
0
用C语言写,麻烦加点注释,谢谢
最佳答案
2023-12-4 13:53:39
下面是一个用C语言编写的程序,用于计算输入数据中正确的加法算式数量。


  1. #include <stdio.h>

  2. int main() {
  3.     int a, b, c; // 用于存放每组数据的三个整数
  4.     int count = 0; // 用于统计正确算式的数量

  5.     // 使用while循环读入数据,当scanf的返回值小于3时说明没有足够的数据输入,循环结束
  6.     while (scanf("%d %d %d", &a, &b, &c) == 3) {
  7.         // 检查当前组数据中的加法算式是否正确
  8.         if (a + b == c) {
  9.             count++; // 如果正确,增加计数器
  10.         }
  11.     }

  12.     // 打印正确算式的数量
  13.     printf("%d\n", count);

  14.     return 0; // 程序正常结束
  15. }
复制代码

在上面的程序中,我们使用了scanf函数来读取输入数据。scanf函数的返回值表示成功读取的数据项数量,当我们试图读取三个整数a、b和c时,如果scanf的返回值小于3,这意味着可能输入数据已经结束,或者输入的数据格式不正确,此时退出循环。

每当读取到一组数据,程序就会检查算式a+b=c是否正确,如果正确,计数器count就会增加。最后,程序打印出正确算式的总数。

求最佳答案

最佳答案

查看完整内容

下面是一个用C语言编写的程序,用于计算输入数据中正确的加法算式数量。 在上面的程序中,我们使用了scanf函数来读取输入数据。scanf函数的返回值表示成功读取的数据项数量,当我们试图读取三个整数a、b和c时,如果scanf的返回值小于3,这意味着可能输入数据已经结束,或者输入的数据格式不正确,此时退出循环。 每当读取到一组数据,程序就会检查算式a+b=c是否正确,如果正确,计数器count就会增加。最后,程序打印出正 ...
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-4 13:53:39 | 显示全部楼层    本楼为最佳答案   
下面是一个用C语言编写的程序,用于计算输入数据中正确的加法算式数量。


  1. #include <stdio.h>

  2. int main() {
  3.     int a, b, c; // 用于存放每组数据的三个整数
  4.     int count = 0; // 用于统计正确算式的数量

  5.     // 使用while循环读入数据,当scanf的返回值小于3时说明没有足够的数据输入,循环结束
  6.     while (scanf("%d %d %d", &a, &b, &c) == 3) {
  7.         // 检查当前组数据中的加法算式是否正确
  8.         if (a + b == c) {
  9.             count++; // 如果正确,增加计数器
  10.         }
  11.     }

  12.     // 打印正确算式的数量
  13.     printf("%d\n", count);

  14.     return 0; // 程序正常结束
  15. }
复制代码

在上面的程序中,我们使用了scanf函数来读取输入数据。scanf函数的返回值表示成功读取的数据项数量,当我们试图读取三个整数a、b和c时,如果scanf的返回值小于3,这意味着可能输入数据已经结束,或者输入的数据格式不正确,此时退出循环。

每当读取到一组数据,程序就会检查算式a+b=c是否正确,如果正确,计数器count就会增加。最后,程序打印出正确算式的总数。

求最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-4 13:53:53 | 显示全部楼层
下面是用C语言实现的代码:
  1. #include <stdio.h>
  2. int main() {
  3.     int a, b, c;
  4.     int count = 0; // 计算算式数量的变量
  5.     // 循环读入数据,直到输入结束
  6.     while (scanf("%d %d %d", &a, &b, &c) != EOF) {
  7.         // 判断是否为正确的算式
  8.         if (a + b == c) {
  9.             count++; // 如果是正确算式,则数量加1
  10.         }
  11.     }
  12.     printf("%d\n", count); // 输出正确算式的数量
  13.     return 0;
  14. }
复制代码

这段代码首先定义了三个整数变量`a`、`b`和`c`,以及一个计数变量`count`用于统计正确算式的数量。

然后使用一个循环读取输入的数据,每次读取一组数据,直到输入结束。`scanf`函数会按照指定的格式读取输入的整数,并将其赋值给相应的变量。

在每次读取完一组数据后,通过判断`a + b`的结果是否等于`c`来确定这个算式是否正确。如果正确,则将`count`加1。

最后,输出正确算式的数量。`printf`函数用于格式化输出,`%d`表示输出一个整数。

注意,这段代码假设输入的格式是正确的,即每组数据由3个整数组成,且输入的最后没有额外的字符。如果输入格式不符合要求,可能会导致程序出错。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-12-4 14:01:08 | 显示全部楼层
FishC_GPT 发表于 2023-12-4 13:53
下面是用C语言实现的代码:

任务描述
一个非负整数N,如果各位数字从左至右是对称的,就是回文数。
输入格式:
若干个以空格或回车分隔的非负整数,每个整数代表一组数据。
输出格式:
每组数据的输出独占一行,若是回文数,输出:YES,否则输出:NO。
输入样例:
123
12321
404
506
输出样例:
NO
YES
YES
NO
用C语言按照这个写
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-4 14:01:30 | 显示全部楼层
王小二° 发表于 2023-12-04 14:01
任务描述
一个非负整数N,如果各位数字从左至右是对 ...

下面是用C语言实现的代码:
  1. #include<stdio.h>
  2. // 判断一个整数是否为回文数
  3. int isPalindrome(int num) {
  4.     int temp = num; // 保存原始值
  5.     int reversedNum = 0; // 反转后的数字
  6.     // 反转整数
  7.     while (num > 0) {
  8.         reversedNum = reversedNum * 10 + num % 10;
  9.         num /= 10;
  10.     }
  11.     // 判断反转后的数字是否与原始值相等
  12.     if (reversedNum == temp) {
  13.         return 1; // 是回文数
  14.     } else {
  15.         return 0; // 不是回文数
  16.     }
  17. }
  18. int main() {
  19.     int num;
  20.     // 循环读入数据,直到输入结束
  21.     while (scanf("%d", &num) != EOF) {
  22.         // 调用isPalindrome函数判断是否为回文数
  23.         if (isPalindrome(num)) {
  24.             printf("YES\n");
  25.         } else {
  26.             printf("NO\n");
  27.         }
  28.     }
  29.     return 0;
  30. }
复制代码

这段代码定义了一个函数`isPalindrome`,用来判断一个整数是否为回文数。在`main`函数中,循环读取输入的数据,每次读取一个整数,直到输入结束。然后调用`isPalindrome`函数判断该整数是否为回文数,如果是回文数则输出"YES",否则输出"NO"。注意,程序假设输入的是非负整数,且输入的最后没有额外的字符。如果输入不符合要求,可能会导致程序出错。

以上回复来自 -- ChatGPT(FishC官方接口),如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-9 13:54:32 | 显示全部楼层
sfqxx 发表于 2023-12-6 19:41
下面是一个用C语言编写的程序,用于计算输入数据中正确的加法算式数量。

程序陷入死循环了,无法输出是咋回事呀
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-9 16:16:29 From FishC Mobile | 显示全部楼层
Husj0711 发表于 2023-12-9 13:54
程序陷入死循环了,无法输出是咋回事呀

使用while循环读入数据,当scanf的返回值小于3时说明没有足够的数据输入,循环结束
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-9 16:23:52 | 显示全部楼层
sfqxx 发表于 2023-12-9 16:16
使用while循环读入数据,当scanf的返回值小于3时说明没有足够的数据输入,循环结束

我懂了,这里scanf陷入死循环了,我一直跑不出来,刚刚问了其他大佬,说输入的时候手动敲ctrl + z再按1回车就可以啦。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-12-9 16:34:12 | 显示全部楼层
不难哦:

  1. #include <stdio.h>

  2. int main() {
  3.     int a, b, c; // 定义用于存储输入的三个整数
  4.     int count = 0; // 定义一个计数器,用于记录正确的算式数量

  5.     printf("请输入一系列整数(每三个一组):\n");

  6.     while (scanf("%d %d %d", &a, &b, &c) == 3) { // 当成功读入三个整数时继续循环
  7.         if (a + b == c) { // 判断算式是否正确
  8.             count++; // 如果正确,计数器加1
  9.         }
  10.     }

  11.     printf("正确算式的数量:%d\n", count); // 输出正确算式的数量

  12.     return 0;
  13. }
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-29 02:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表