2个回答
展开全部
#include <stdio.h>
#include <string.h>
#include <math.h>
long string2int(char dec[],int);
int main() {
long num=0,num2,hh[600];
int k,l,n=0;
char str[30],str2[30];
printf("输入样例个数:");scanf("%d",&k);
getchar();
l=k;
printf("串串来:");
while(k--){
gets(str);
gets(str2);
if(strlen(str)>=8) return 44;
if(strlen(str2) >=8) return 44;
num = string2int(str,strlen(str));
num2 = string2int(str2,strlen(str2));
if(num<0||num2<0) hh[n]=-1;
else hh[n]=num+num2;
n++;
}
for(k=0;k<l;k++)
printf("%d\n",hh[k]);
}
long string2int(char dec[],int len) {
int i = 5;
int p = 0;
long num=0;
char j,n;
for(i=0;i<len;i++)
{
j=dec[len-i-1];
if(j >= 'a' && j <= 'f')
n = j - 'a' + 10;
else if(j >= '0' && j <= '9')
n = j - '0';
else if(j >= 'A' && j <= 'F')n = j - 'A' + 10;
else return -1;
num+=n * pow(16, p++);
}
return num;
}
#include <string.h>
#include <math.h>
long string2int(char dec[],int);
int main() {
long num=0,num2,hh[600];
int k,l,n=0;
char str[30],str2[30];
printf("输入样例个数:");scanf("%d",&k);
getchar();
l=k;
printf("串串来:");
while(k--){
gets(str);
gets(str2);
if(strlen(str)>=8) return 44;
if(strlen(str2) >=8) return 44;
num = string2int(str,strlen(str));
num2 = string2int(str2,strlen(str2));
if(num<0||num2<0) hh[n]=-1;
else hh[n]=num+num2;
n++;
}
for(k=0;k<l;k++)
printf("%d\n",hh[k]);
}
long string2int(char dec[],int len) {
int i = 5;
int p = 0;
long num=0;
char j,n;
for(i=0;i<len;i++)
{
j=dec[len-i-1];
if(j >= 'a' && j <= 'f')
n = j - 'a' + 10;
else if(j >= '0' && j <= '9')
n = j - '0';
else if(j >= 'A' && j <= 'F')n = j - 'A' + 10;
else return -1;
num+=n * pow(16, p++);
}
return num;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
--
2022-12-05 广告
2022-12-05 广告
图形化编程简单理解为用积木块形式编程,scratch和python也是其中的一种,属于入门级编程,以其简单生动的画面获得无数学生的喜爱,深圳市创客火科技有限公司是一家做教育无人机的公司,旗下有编程无人机,积木无人机及室内外编队,每款飞机含有...
点击进入详情页
本回答由--提供
展开全部
1、C源程序文件的扩展名是( .C );编译后生成的文件名后缀是( .OBJ );经过连接后生成文件
名后缀是( .exe ); 在VC++6.0中用Run命令运行当前程序时,运行的程序扩展名是( .exe )。
2、结构化程序的三种基本结构是( 顺序、选择 、循环 )。
3、整型常量有三种表示方法,它们是( 十进制整数 )、( 八制整数 )、( 十六整数 )。
4、表达式3.5+1/2+56%10 的值是( 9.5 );10/10和10%10的值各是(1和0)。
5、表达式3%3*3的值是( 0 );5/3*3的值是( 3 );3*6%4的值是( 2 )。
6、设int x=12;执行x+=x-=x*x后,x 的值是( -264 )。
7、表达式k=7,k+=k-=k+1的值是( -2 )。
8、语句"printf("%x,%o",16,12);"的输出结果是( 10,14 )。
9、设short x,y; y=(x=3,x+2,++x,x++*2);则x,y的值各是( 5 , 8 )。
10、设int x,y,z,t; x=y=z=1; t=++x||++y&&++z;则y的值是( 1 )。
11、条件10<=x<20 或x=10&&x<20||x<=0 )
12、设a=1,b=2,c=3,d=4;表达式a>b?a:c<d?a:d的值是( 1 )。
13、在 C 程序中,用( 1)表示逻辑值“真”。
14、表示“x≥y≥z”的C表达式是 ( x>=y&&y>=z )。
15、设x为int型变量,请写出一个关系表达式( (x%21==0) ),用以判断x同时为3和7的倍数时
,关系表达式的值为真。
16、 设ch是字符型变量,判断ch为英文字母的表达式是: (
ch='a'||ch>='A'&&ch<='Z' )。
17、在C语言中参数的传递总是采用( 单向 )传递。
18、如果return 表达式;中”表达式”的类型与函数类型不一致,则以( 函数类型 )的类型为准
自动转换;如果实际参数的类型与形式参数的类型不一致, 则以( 形式参数 )的类型为准自动转
换。
19、函数形式参数在( 调用 )时分配内存,( 调用结束 )时释放内存。
20、系统总是为数组分配( 连续 )的一块内存。
21、字符串的结束标志是(ASCII码的0 )。
22、TC系统为任何指针变量分配的内存是( 4 )字节。
23、若有定义:double x[3][5]; 则x数组中行下标的下限为( 2 ),列下标的上限为( 4 )。
24、若有定义int x=3,*p;则使p指向变量x的赋值语句为( p=&x )。
25、在C 语言程序中,在函数内部定义的变量称为( 局部变量)。
26、char a[2][10]={“123”,”123456789”}, *p[2]={“123”,”123456789”}; 则(前者 )
占用内存多。
27、struct st { char num[5]; int a[4]; float ave; } a,*p; 则变量a和p在内存各
占( 25和4 )字节。
28、union un { int i; char c;} ;
struct st { int v[4]; double t; union un k; }w, *pw; pw=&w;
变量w占用( 28 )字节; 通过w 访问v[0]的形式是( w.v[0] );通过w访问成员c的形式是(w.k.c
);通过pw访问v[0]的全部形式有( pw->v[0] ,*(pw->v) );通过pw访问成员c的全部形式有(
(pw->k.c) )。(实验验证,pw->k->c这种书写有错误直接用.也是错误)
29、设fp是文件指针,要把字符变量ch的内容写入文件,可用的语句有(
fputc(ch,fp);fwrite(&ch,1,1,fp); )。
30、fputs(str, fp)函数的功能是( 将数据str写入fp文件流中 )。
{29题不能用 fputs(&ch,fp);由于ch只有一个字符,如果用这句的话,会因为没有字符串结束标
志而写入很长的数据。从实验中得出。}
涉及到穷举的题目,像28、29可能没有列举完全其他题目都是经过vc++6.0验证过的。
名后缀是( .exe ); 在VC++6.0中用Run命令运行当前程序时,运行的程序扩展名是( .exe )。
2、结构化程序的三种基本结构是( 顺序、选择 、循环 )。
3、整型常量有三种表示方法,它们是( 十进制整数 )、( 八制整数 )、( 十六整数 )。
4、表达式3.5+1/2+56%10 的值是( 9.5 );10/10和10%10的值各是(1和0)。
5、表达式3%3*3的值是( 0 );5/3*3的值是( 3 );3*6%4的值是( 2 )。
6、设int x=12;执行x+=x-=x*x后,x 的值是( -264 )。
7、表达式k=7,k+=k-=k+1的值是( -2 )。
8、语句"printf("%x,%o",16,12);"的输出结果是( 10,14 )。
9、设short x,y; y=(x=3,x+2,++x,x++*2);则x,y的值各是( 5 , 8 )。
10、设int x,y,z,t; x=y=z=1; t=++x||++y&&++z;则y的值是( 1 )。
11、条件10<=x<20 或x=10&&x<20||x<=0 )
12、设a=1,b=2,c=3,d=4;表达式a>b?a:c<d?a:d的值是( 1 )。
13、在 C 程序中,用( 1)表示逻辑值“真”。
14、表示“x≥y≥z”的C表达式是 ( x>=y&&y>=z )。
15、设x为int型变量,请写出一个关系表达式( (x%21==0) ),用以判断x同时为3和7的倍数时
,关系表达式的值为真。
16、 设ch是字符型变量,判断ch为英文字母的表达式是: (
ch='a'||ch>='A'&&ch<='Z' )。
17、在C语言中参数的传递总是采用( 单向 )传递。
18、如果return 表达式;中”表达式”的类型与函数类型不一致,则以( 函数类型 )的类型为准
自动转换;如果实际参数的类型与形式参数的类型不一致, 则以( 形式参数 )的类型为准自动转
换。
19、函数形式参数在( 调用 )时分配内存,( 调用结束 )时释放内存。
20、系统总是为数组分配( 连续 )的一块内存。
21、字符串的结束标志是(ASCII码的0 )。
22、TC系统为任何指针变量分配的内存是( 4 )字节。
23、若有定义:double x[3][5]; 则x数组中行下标的下限为( 2 ),列下标的上限为( 4 )。
24、若有定义int x=3,*p;则使p指向变量x的赋值语句为( p=&x )。
25、在C 语言程序中,在函数内部定义的变量称为( 局部变量)。
26、char a[2][10]={“123”,”123456789”}, *p[2]={“123”,”123456789”}; 则(前者 )
占用内存多。
27、struct st { char num[5]; int a[4]; float ave; } a,*p; 则变量a和p在内存各
占( 25和4 )字节。
28、union un { int i; char c;} ;
struct st { int v[4]; double t; union un k; }w, *pw; pw=&w;
变量w占用( 28 )字节; 通过w 访问v[0]的形式是( w.v[0] );通过w访问成员c的形式是(w.k.c
);通过pw访问v[0]的全部形式有( pw->v[0] ,*(pw->v) );通过pw访问成员c的全部形式有(
(pw->k.c) )。(实验验证,pw->k->c这种书写有错误直接用.也是错误)
29、设fp是文件指针,要把字符变量ch的内容写入文件,可用的语句有(
fputc(ch,fp);fwrite(&ch,1,1,fp); )。
30、fputs(str, fp)函数的功能是( 将数据str写入fp文件流中 )。
{29题不能用 fputs(&ch,fp);由于ch只有一个字符,如果用这句的话,会因为没有字符串结束标
志而写入很长的数据。从实验中得出。}
涉及到穷举的题目,像28、29可能没有列举完全其他题目都是经过vc++6.0验证过的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询