全文预览

《程序设计基础》第三次上机作业参考答案

上传者:随心@流浪 |  格式:doc  |  页数:5 |  大小:50KB

文档介绍
canf("%d",&n); for (i=0;i<n;i++) for(j=0;j<n;j++) scanf("%d",&a[i][j]); sum=0; for (i=0;i<n;i++) for(j=0;j<n;j++) if(i==n-1 || j==n-1 || i+j==n-1 ) continue; else sum+=a[i][j]; printf("sum=%d\n",sum); }思考题:十六进制转换十进制输入一个字符串(字符串的长度不超过 80 ) ,对其做如下处理:滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。例: 输入 Pf4+1 输出 3905 #include <stdio.h> #define MAXLEN 80 void main( ){ int i,k; long number; char str[MAXLEN], num[MAXLEN]; gets(str); for(k=0,i=0;str[i]!='\0';i++) if(str[i]>='0'&&str[i]<='9'||str[i]>='A'&&str[i]<='F'|| str[i]>='a'&&str[i]<='f') num[k++]=str[i]; num[k]='\0'; for(number=0,i=0;num[i]!='\0';i++) { if(num[i]>='A'&& num[i]<='F') k=num[i]-'A'+10; else if(num[i]>='a'&&num[i]<='f') k=num[i]-'a'+10; else if(num[i]>='0'&&num[i]<='9') k=num[i]-'0'; number=number*16+k; } printf("%ld\n",number); }

收藏

分享

举报
下载此文档