|
发表于 2021-3-25 03:04:06
|
显示全部楼层
本帖最后由 jackz007 于 2021-3-25 03:10 编辑
真正的按行输入,每行可以输入 "任意" 多个数
最后输入空回车结束输入
- #include <stdio.h>
- int main(void)
- {
- int c , d[20][10000] , i , j , k , s ;
- char a[10002] ;
- for(i = 0 ; ; i ++) {
- gets(a) ;
- if(a[0]) {
- for(c = 1 , j = k = 0 ; a[j] ; j ++) {
- for(; a[k] && (a[k] == ' ' || a[k] == '\t') ; k ++) ;
- if(a[k]) {
- sscanf(& a[k] , "%x" , & d[i][c ++]) ;
- for(; a[k] && a[k] != ' ' && a[k] != '\t' ; k ++) ;
- }
- }
- d[i][0] = c - 1 ;
- } else {
- break ;
- }
- }
- for(k = i , i = 0 ; i < k ; i ++) {
- for(s = 0 , j = 1 ; j < d[i][0] + 1 ; j ++) s += d[i][j] ;
- printf("%d\n" , s) ;
- }
- }
复制代码
编译、运行实况
- D:\00.Excise\C>g++ -o x x.c
- D:\00.Excise\C>x
- 5 A
- 0xB 0xC
- 0x1 0x2 0x3 0x4 0x55 0xff 0xfff
- 15
- 23
- 4445
- D:\00.Excise\C>
复制代码 |
|