请编函数fun,其功能是将一个数字字符串转换成与其面值相同的长整形整数。可调用strlen函数求字符串的长度。
#include <stdio.h> #include <string.h> void NONO(); long fun( char *s ) { int i,j,n,t; int a[10]; long m=0; n=strlen(s); for(i=0;i<n;i++) { a[i]=s[i]-'0'; for(j=0;j<n-i-1;j++) { a[i]*=10; } } for(i=0;i<n;i++) { m+=a[i]; } return m; } main() { char s[10]; long r; printf("请输入一个长度不超过9个字符的数字字符串 : "); gets(s); r = fun( s ); printf(" r = %ld " , r ); NONO(); } void NONO() {/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。 */ FILE *fp, *wf ; int i; long r; char s[10], *p; fp = fopen("..\in.dat","r") ; wf = fopen("..\out.dat","w") ; for(i = 0 ; i < 10 ; i++) { fgets(s, 10, fp); p = strchr(s, ' '); if (p) *p = 0; r = fun(s); fprintf(wf, "%ld ", r); } fclose(fp) ; fclose(wf) ; }
运行结果