答案是:C: 报错
### 分析:
在 Python 中,函数定义中的 `*` 用于定义可变参数列表,只能出现在一次。此外,关键字参数(如 `**kwargs`)可以携带命名参数。以下是代码问题的详细分析:
1. **语法错误**:
- 函数定义 `def sum_b(*a,*b):` 是不合法的。在函数参数中,最多允许一个可变参数列表。因此,使用两个星号参数 `*a` 和 `*b` 会导致语法错误。
2. **正确用法**:
- 如果需要传递多个列表或元组作为参数,可以通过如下方式进行:
```python
def sum_b(a, b):
return (a[0] + b[0])
print(sum_b((1, 2), (3, 4)))
```
- 或者通过单个可变参数:
```python
def sum_b(*args):
return args[0] + args[1]
print(sum_b(1, 2, 3, 4)) # 结果是3
```
综上所述,原代码因为违反了函数可变参数的定义规则而导致语法错误,因此答案是 C: 报错。