用字符数组存储这N个数 再用ASCII码将字符类型的数字转换成整数数字 再加起来即可; var a:array[1..10000] of char; i,s,n:longint; begin for i:=1 to 4 do read(a[i]); s:=0; for i:=1 to 4 do s:=s+(ord(a[i])-48); writeln(s); end. 如果不会用字符数组和循环 可以用笨办法; var a,s,c:longint; begin readln(a); s:=0; c:=a mod 10; a:=a div 10; s:=s+c; c:=a mod 10; a:=a div 10; s:=s+c; c:=a mod 10; a:=a div 10; s:=s+c; c:=a mod 10; a:=a div 10; s:=s+c; writeln(s); end.