surpass! 2023-11-17 15:20 采纳率: 50%
浏览 18

C语言输入数字之间有逗号,怎么只要数字呀

例:输入要求:1,23456
输出:sum=21
max=6
像这样怎么写编程呀

  • 写回答

2条回答

  • Helloorld_11 2023-11-17 15:24
    关注
    
    #include <stdio.h>  
    #include <string.h>  
    #include <stdlib.h>  
      
    int main() {  
        char str[100];   // 定义一个字符数组,用于存储输入的字符串  
        char *token;  
        int num, max = INT_MIN, sum = 0;  // 定义变量,max用于存储最大值,sum用于存储累计和  
        int temp;  
          
        printf("请输入一个由整数(用逗号分隔)组成的字符串:\n");  
        fgets(str, sizeof(str), stdin);  // 从标准输入读取字符串  
          
        // 使用逗号分隔字符串  
        token = strtok(str, ",");  
        while (token != NULL) {  
            temp = atoi(token);  // 将当前子字符串转换为整数  
            sum += temp;  // 累加到累计和  
            if (temp > max) {  // 如果当前数值大于当前最大值,更新最大值  
                max = temp;  
            }  
            token = strtok(NULL, ",");  
        }  
          
        printf("最大值为:%d\n", max);  // 打印最大值  
        printf("累计和为:%d\n", sum);  // 打印累计和  
          
        return 0;  
    }
          
    
    
    评论

报告相同问题?

问题事件

  • 创建了问题 11月17日